분류 전체보기

2019/07/03 - [프로그래밍 노트/SPRING BOOT] - [Spring Boot] 스프링 부트 시작하기 의존성 관리 Spring Boot는 어떻게 수 많은 의존성을 갖고 왔을까? 우리는 pom.xml 의존성 설정에 version을 주지 않았는데 spring boot는 알아서 수 많은 의존성 lib를 갖고왔다. 이것은 의존성 관리 기능 때문인데 parent pom을 따라가다보면 spring-boot-dependencies 프로젝트가 존재하는데 이곳에서 spring version을 관리하고 있다. 우리는 spring-boot-dependencies에서 관리하는 라이브러리를 사용하게 된다. 우리가 spring boot 프로젝트를 생성하면 부모pom 으로 spring-boot-starter-paren..
메이븐은 하나의 프로젝트에서 여러 모듈을 관리할 수 있는 모듈 기능을 지원한다. (한 프로젝트가 여러 모듈을 가지면서 빌드를 한 번에 진행하는 방법) 여기서 필요한 개념인 아래의 3가지 기능을 알아보자 상속(inheritance) 집합(aggregation) 의존 관계(dependency) 상속 메이븐 설정파일이 기본으로 최상위 POM을 상속하듯이 프로젝트에서도 공통으로 사용하는 설정은 공통 POM파일을 만들어 관리하고 하위 모듈에서 이POM을 상속할 수 있다. 메이븐에서 상속기능을 사용하려면 부모POM에서 엘리먼트를 설정해야 한다. parent POM.xml 4.0.0 com.corn diary pom 1.0-SNAPSHOT .... child POM.xml ... com.corn diary 1.0-S..
스프링 부트(Spring Boot) 소개 https://docs.spring.io/spring-boot/docs/2.1.6.RELEASE/reference/html/getting-started-introducing-spring-boot.html 스프링 부트에 대한 소개가 위 링크에 나와있다. => 제품수준의 스프링 기반의 애플리케이션을 빠르고 쉽게 만들 수 있게 제공하는 것이 스프링 부트이다. (Spring Boot makes it easy to create stand-alone(독립적으로), production-grade Spring-based Applications that you can run.) 특징(primary goals 이라고 표현되어 있음) Spring 개발을 빠르고 광범위하게 사용할 수 ..
Function 함수적 인터페이스는 매개값과 리턴값이 있는 applyXXX() 메소드를 가지고 있다. 이 메소드는 매개값을 리턴값으로 매핑(타입 변환)하는 역할을 한다. 인터페이스명 추상 메소드 설명 Function R apply(T t) 객체 T를 객체 R로 매핑 BiFunction R apply(T t, U u) 객체 T, U를 객체 R로 매핑 DoubleFunction R apply(double value) double를 객체 R로 매핑 IntFunction R apply(int value) int를 객체 R로 매핑 IntToDoubleFunction double applyAsDouble(int value) int를 double로 매핑 IntToLongFunction long applyAsLong(..
Supplier 함수적 인터페이스는 매개값은 없고 리턴값이 있는 getXXX() 메소드를 가지고 있다. 이 메소드들은 호출한 곳으로 데이터를 리턴(공급)하는 역할을 한다. 인터페이스명 추상 메소드 설명 Supplier T get() T 객체를 리턴 BooleanSupplier boolean getAsBoolean() boolean 값을 리턴 DoubleSupplier double getAsDouble() double 값을 리턴 IntSupplier int getAsInt() int 값을 리턴 LongSupplier long getAsLong() long 값을 리턴 public static void main(String[] args) { IntSupplier intSupplier = () ->{ int n..
Consumer 함수적 인터페이스는 리턴값이 없는 accept() 메소드를 가지고 있다. Consumer는 단지 매개값을 소비하는 역할만 하며, 소비한다는 말은 사용만하고 리턴값이 없다는 뜻이다. 인터페이스명 추상 메소드 설명 Consumer void accept(T t) 객체를 T를 받아 소비 BiConsumer void accept(T t, U u) 객체 T, U를 받아 소비 DoubleConsumer void accept(double value) double 값을 받아 소비 intConsumer void accept(int value) int 값을 받아 소비 LongConsumer void accept(long value) long 값을 받아 소비 ObjDoubleConsumer void accep..
자바에서 한 개의 추상 메소드를 가지는 인터페이스들은 모두 람다식을 이용할 수 있다. Runnable 인터페이스도 마찬가지이다. Runnable runnable = () -> { ... }; Thread thread = new Thread(() -> { ... }); // Thread 생성자 호출 자바8부터 빈번하게 사용되는 함수적 인터페이스(functional Interface)는 java.util.function 표준 API패키지로 제공한다. java.util.function이 제공하는 functional Interface의 목적은 메소드 또는 생성자의 매개 타입으로 사용되어 람다식에 대입될 수 있다. 함수적 인터페이스는 크게 Consumer, Supplier, Function, Operator, P..
이 포스팅을 하는 이유는, MAC에 윈도우 PC 키보드를 연결하면 키보드배열이 달라서 무척 불편해서이다. 일단 차이점을 알아보자. 애플키보드 Fn / Control / Option / Command 순 (왼쪽 기준) 윈도우 키보드 Ctrl / 윈도우키 / Alt 순 여기서 윈도우 키보드를 MAC북에 연결하게 되면 다음과 같이 매핑된다. MAC Window(일반키보드) Command키 윈도우키 Option키 Alt키 맥북에서는 맨 오른쪽에 Command키가 있는데 윈도우 키보드를 연결하면 맨 오른쪽에서 한칸 왼쪽에 있는 것이 Command가 되는 것이다. (무척 헷갈림) 키보드 배열을 동일하게 설정해 보자 1. 환경설정 > 키보드 2. 보조키 3. 연결된 키보드의 매핑 순서를 변경 Option -> Com..
· Life/Life
화장실 발매트를 찾던 중 규조토가 편리하다고 하여, 집근처 롯데마트에 직행하여 규조토를 구입하였다. 잔뜩 일본말로만 써있는데, 규조토가 이거밖에없어서 구매하였다...(11,900원에 구매함) 안에는 규조토, 사포, 미끄럼방지패드? 구성되어 있다. 사포는 나중에 규조토가 더러워지거나, 흡수력이 떨어졌을 때 한번씩 갈아야할때 필요하므로 잘 보관해야한다고 한다. 규조토를 처음 꺼내면 규조토 가루같은게 묻어져나오는데, 물로한번세척하고 말린 후 사용하는 것이 좋을 것 같다. 짜잔~ 호기심에 흡수력이 얼마나 빠른지 실험해보려고, 물을 한번 부어보았다..ㅋ_ㅋ 뿌리고 정확히 10초 후 아래와 같이 변했다. 흡수력이 눈으로 보여서 참으로 신기한 실험이었다... 처음 독립해서 그런지 집에 필요한 물건을 하나 둘 씩 살수..
Stream API 에서는 커스텀하기 집계 결과물을 만드는 reduce()라는 메소드를 제공한다. (sum(), average(), count(), max(), min() 말고도 커스텀하게 사용할 경우 사용) Stream, IntStream, LongStream, DoubleStream 각 인터페이스에는 reduce() 메소드가 오버로딩 되어 있다. (매개타입 XXXOperator, 리턴 타입 OptionalXXX, int, long, double) 스트림 요소가 전혀 없을 경우 디폴트 값인 identity 매개값이 리턴된다. XXXOperator 매개값은 집계 처리를 위한 람다식 을 대입하는 곳이다. public static void main(String[] args){ List workerList =..
깡냉쓰
'분류 전체보기' 카테고리의 글 목록 (32 Page)