728x90
MyBatis Mapper의 동작
DTO
- Data Transfer Object
- 데이터를 저장하여 다른 곳으로 전송하기 위한 목적의 객체
- 계층형 아키텍처에서 서로 다른 계층으로 데이터를 전송한다
- REST API에서 요청 데이터나 응답 데이터의 전송 시 사용된다
Lombok
- 반복적으로 작성해야 하는 java 코드를 자동 생성해주는 라이브러리
- getter, setter, constructor, toString, equals, loggin ...
- Annotation을 사용하여 코드를 생성한다
- @Getter, @Setter, @AllArgsConstructor
Lombok 주요 Annotation
- @NoArgsConstructor
- 파라미터가 없는 생성자를 생성
- @AllArgsContructor
- 모든 멤버 변수를 초기화하는 생성자를 생성
- @Getter
- 모든 멤버 변수에 대한 Getter 메소드를 생성
- @Setter
- 모든 멤버 변수에 대한 Setter 메소드를 생성
- @ToString
- 모든 멤버 변수의 데이터가 출력될 수 있도록 toString 메소드 자동 생성
- @NonNull
- 메소드 파라미터의 Null 체크 후 Null일 경우 NullPointerException 발생
- @Slf4j
- 로깅을 위한 Logger 객체 자동 생성
Lombok 사용 시 주의사항
- @Setter와 @Getter의 남용
- 객체에 대한 캡슐화가 깨질 가능성 존재
- Setter의 경우 객체의 데이터 변경 가능
- Getter의 경우 외부에 공개되면 안되는 데이터가 공개될 수 있음
728x90
'코드프레소 체험단 > Spring Boot를 활용합 웹 개발' 카테고리의 다른 글
[Spring Boot 웹 개발 초급] MyBatis 활용 준비 (0) | 2022.06.26 |
---|---|
[Spring Boot 웹 개발 초급] 커리큘럼 및 Data Access Layer의 개념 (0) | 2022.03.02 |
[Spring Boot 웹 개발 입문] Spring Service, Spring Bean의 개념과 의존성 주입 (0) | 2022.02.06 |
[Spring Boot 웹 개발 입문] HTTP 메소드와 Request Body, REST API 문서 (0) | 2022.02.03 |
[Spring Boot 웹 개발 입문] Response 데이터와 JSON 포맷 (0) | 2022.02.03 |
댓글