개요 현재 회사에서는 하나의 객체를 만들어 모든 레이어에서 사용하거나 Controller Layer에서 HashMap으로 받고 있습니다. 추가적으로 제약조건으로 Post Method만 허용합니다. 회원 (코멘트) API를 예로 들어 DTO로 분리해 보겠습니다. AS-IS 1. 회사에서 사용하는 VO (모든 레이어에서 사용) @Getter @Setter @AllArgsConstructor @NoArgsConstructor @Builder @JsonNaming(UpperSnakeCaseStrategy.class) public class UserVO { private Long USER_ID; private String NAME; private String COMMENT; private String EMAIL;..
스프링 빈을 등록하는 방법으로 @Configuration, @Component, @Bean이 있습니다. 이러한 어노테이션에 대해서 알아보겠습니다. 1. @Configuration 어노테이션 빈을 수동으로 등록하기 위해서 @Bean 어노테이션을 사용합니다. 보통 수동으로 여러 개 등록하는 경우 @Configuration 어노테이션과 함께 사용합니다. 메소드 이름을 갖고 빈 이름이 결정되기 때문에 중복된 이름으로 빈을 생성하지 않도록 주의합니다. @Bean 어노테이션은 수동으로 등록해 주어야 하는데, 특히 개발자가 직접 제어 불가능한 라이브러리를 활용하고자 할 때 사용합니다. 1개의 객체만 생성하여 여러 클래스가 사용함으로써 메모리를 아낄 수 있다는 장점이 있습니다. 동작방식 1. @Configuration..