목록Java (34)
메모장
Feign project(Feign) A project(A) 요청 B project(B) 요청 받음 A Controller > A Service1 > A Service2(B에 요청 보낼 Service) > Feign > B InsideController > B Service > B Repository A Service2에서 Feign RestResult로 return, Feign RestResult = B RestResult
Gradle build > Project Structure > Libraries > 기존 SNAPSHOT.jar 지우고 로컬에 있는 SNAPSHOT.jar 적용 인식 못하거나 Run 안되면 Settings > Build, Execution, Deployment > Build Tools > Gradle Build and run using: Gradle로 되있으면 IntelliJ IDEA로 변경 Run tests using: Gradle로 되있으면 IntelliJ IDEA로 변경
BoardService.java List boards = boardDtos .stream() .map(Board::toEntity) .collect(Collector.toList()); Board.java public Static Board toEntity(BoardDto boardDto) { return Board.builder() .boardSeq(boardDto.getBoardSeq()) .subject(boardDto.getSubject()) .content(boardDto.getContent()) .build(); }
// Map import java.util.HashMap; import java.util.Map; Map map = new HashMap(); map.put("a", a); map.put("b", b); map.put("c", c); // ImmutableMap import com.google.common.collect.ImmutableMap; ImmutableMap.builder() .put("a", a) .put("b", b) .put("c", c) .build();
build.gradle// https://mvnrepository.com/artifact/com.github.ulisesbocchio/jasypt-spring-boot-starterimplementation group: 'com.github.ulisesbocchio', name: 'jasypt-spring-boot-starter', version: '3.0.4' Local// 추가-Djasypt.encryptor.password=Secret Key JasyptConfigimport org.jasypt.encryption.StringEncryptor;import org.jasypt.encryption.pbe.PooledPBEStringEncryptor;import org.jasypt...
스프링에서 객체를 생성하고 조립하는 컨테이너로(container), 컨테이너를 통해 생성된 객체를 빈(Bean)이라고 부른다. Bean 등록 관련 Annotation @Configuration Bean을 등록하기 위한 Annotation 싱글톤 패턴(Singleton Patter, 객체의 인스턴스를 하나만 생성) 보장 @Bean Method에서 선언, 수동등록, 개발자가 컨트롤이 불가능한 외부 라이브러리에 사용 @Component Class에서 선언, 자동등록, 개발자가 컨트롤이 가능한 내부 클래스에 사용 @ComponentScan @Component, @Service, @Repository, @Controller 등이 부여된 Class들을 자동으로 스캔하여 Bean으로 등록