공통 API 와 특수 API 분리기본적인 공통 API 인 경우 가장 많이 사용되는 필드만 포함시키고,특수한 경우 별도의 API 와 DTO 를 제공하는 것이 좋다고 한다.// 공통 API용 DTO public class UserCommonDTO { private final String username; private final int age; // 생성자, getter 등 }// 특수한 경우를 위한 별도의 API용 DTO public class UserSpecialDTO extends UserCommonDTO { private final String additionalInfo; // 생성자, getter 등 } Uploaded by N2T
MapStruct 사용라이브러리에서 별도 mapStruct 를 사용도전빈 정의 관련 오류 발생Consider defining a bean of type in your configuration.해결@Mapper(componentModel = "spring") public interface BoardConfigConverter { // 매핑 메서드 }componentModel 추가하여 Spring 의 빈으로 등록되게 해야한다.잘 적용된 이후 gradle 에서 classes 명령어를 돌려보면이 생성되며, = boardConfigConverter.toEntity(boardConfigDto);DTO를 정상적으로 VO 로 변환할 수 있다. (향후 Jpa 도입까지 생각하여 toEntity 로 정의함) Uploaded..
리팩토링 진행시 별도 생성자를 만들어야하는 경우가 발생함.생성자는 최대한 작을 수록 좋은 건 사실이다.최대한 입구가 좁아야 유효성 검사 등의 로직을 한 곳에서 집중할 수 있기 때문이다.하지만!자바 + 스프링에서는 하이버네이트나 javax 에서 제공하는 필드에 대한 유효성 검사 어노테이션이 존재한다.이를 통해 생성자라는 입구가 많아 져도 제어가 가능하지 않을까 싶다.그래서 별도의 private 생성자를 만들고 FM 메서드로 해당 생성자로 이어지도록 설정하려고했다.private 상품설정(@NotNull String 종류아이디) { this.종류아이디= 종류아이디; } public static 상품설정 from(@NotNull String 종류아이디) { return new BoardConfig(종류아이디);..
현재 버전Java 1.8Spring Boot 2.4.5현재스프링 부트 2.4.x 의 특징구성 파일 처리의 개선점프로필 정의 방식의 변경2.4 이전application-{profile}.yml 형식의 파일을 작성하고spring.profiles.include 를 이용하여 해당 프로파일을 호출 하였음.//application-honeymon.yml honeymon: root-uri: http://honeymon.io github: https://github.com/ihoneymon //application.yml spring.profiles: include: - honeymon2.4 이후직접 원하는 구성 파일을 명시저긍로 불러올 수 있게 됨.//honeymon.yml honeymon: root-uri: htt..
현재 버전Java 1.8Spring Boot 2.4.5자바 1.8의 특징펼치기람다표현식의 등장자바 8 에서 등장한 기능입니다.개요이름이 없는 함수쓰레드 , 컬렉션을 다룰 때 매우 유용함문법기본 문법은 ( 매개변수 ) -> { 실행 코드 } 로 구성되어 있습니다.예를들어a + b 의 기능을 하는 함수의 경우(a, b) -> { return a + b; }람다 표현식 내부의 변수는 final 혹은 사실상의 final 이여야 합니다.함수형 인터페이스에서의 사용개요함수형 인터페이스단 하나의 추상 메서드를 가진 인터페이스를 의미합니다.@FunctionalInterface public interface MyFunctionalInterface { int add(int a, int b); }이러한 식으로 @Functi..