본문 바로가기

Back-End/Spring126

[Java] DTO (Data Transfer Object) HTTP 요청 / 응답에서의 DTO   마틴 파울러(Martin Fowler)가 ‘Patterns of Enterprise Application Architecture’라는 책에서 처음 소개한 엔터프라이즈 애플리케이션 아키텍처 패턴의 하나이다.주로 클라이언트와 서버 사이에서 데이터를 주고받을 때 사용한다. 클라이언트의 Request Body를 하나의 객체로 전달받을 수 있기 때문에 코드가 간결해지며, Request Body의 데이터 유효성 검증이 단순해진다.중요한 목적은 비용이 많이 드는 작업인 HTTP 요청의 수를 줄이고, 도메인 객체와 분리하기 위함이다. 🍑 코드의 간결성@RestController@RequestMapping("/v1/members")public class MemberControll.. 2022. 8. 22.
[Error] unknown enum constant When.MAYBE 문제스프링 컨테이너 코드를 컴파일 하니 `unknown enum constant When.MAYBE`라는 경고가 출력되었다. `@Nullable` 어노테이션을 사용할 때 발생하는 문제라고 한다. 해결이 경고는 `javax.annotation.meta.When`  프로젝트 런타임에서 열거형을 사용할 수 없기 때문에 발생한다. 수정하려면 JSR305 구현을 가져와야 한다. Google 버그 찾기 저장소에는 문제를 해결해야 하는 JSR305 구현이 포함되어 있다. build.gradle에 의존성 추가...dependencies { ... implementation 'com.google.code.findbugs:jsr305:3.0.2' ...}... 📚 Reference- Spring null.. 2022. 8. 16.
AOP(Aspect-Oriented Programming) : 애너테이션(Annotation)의 이용 보호되어 있는 글 입니다. 2022. 8. 16.
AOP(Aspect-Oriented Programming) : JoinPoint 보호되어 있는 글 입니다. 2022. 8. 16.
AOP(Aspect-Oriented Programming) : Pointcut 표현식 보호되어 있는 글 입니다. 2022. 8. 16.
AOP(Aspect-Oriented Programming) : Advice 보호되어 있는 글 입니다. 2022. 8. 16.