가자공부하러!

Java_17_Lombok 활용 본문

공부/Java

Java_17_Lombok 활용

오피스엑소더스 2019. 7. 26. 11:43

1. Lombok?

2. 사용 방법

3. 주의사항



1. Lombok?


1. Java에서 DTO, VO, Domain 등 Object를 만들 때 쉽게 작업하기 위해 도와주는 라이브러리

2. 기능
  > getter/setter 자동 생성
  > 생성자 자동 생성
  > toString 자동 생성

2. 사용 방법


1. 다운로드 및 적용

  > jar 다운로드 : http://projectlombok.org/download.html

- 콘솔에 java -jar lombok.jar 입력

  > Maven : pom.xml에 dependency 추가

  > Gradle : build.gradle에 dependency 추가


2. 어노테이션 활용

  > @Data

- 아래 어노테이션 모두 포함

- @ToString, @EqualsAndHashCode, @Getter, @Setter, @RequiredArgsConstructor


3. 주의사항



1. 요약

  > 개인 프로젝트가 아닌 경우 가급적 @Getter, @Setter, @ToString, @Builder만 사용

  > @AllArgsConstructor, @RequiredArgsConstructor

- 문제 : 생성자 부분에 리팩토링(수정) 시 오류 발생 없이 왜곡된 데이터가 사용될 가능성이 있음

- 대처 : 사용 지양, Builder 활용 권장

  > @EqualsAndHashCode

- 문제 : 필드 값이 변경되었을 때 변경 전과 변경 후의 HashCode가 달라지기 때문에 올바르지 않은 값이 산출된다.

- 대처 : 사용 지양

- 동등성 비교에 필요한 필드를 명시하는 형태로 사용 > @EqualsAndHashCode(of={"필드명시"})

  > @Data

- 문제 : 위 애노테이션을 모두 포함하고 있음

- 대처 : 사용 지양




참고 : https://kwonnam.pe.kr/wiki/java/lombok/pitfall




















'공부 > Java' 카테고리의 다른 글

Hibernate(2) - JPA 기본 CRUD 연습  (0) 2019.11.19
Hibernate(1) - ORM? Hibernate?  (0) 2019.11.06
Java_16_Java 프로젝트 exe파일로 변환(jsmooth)  (0) 2019.07.02
Java_15_이메일 전송  (0) 2019.07.01
Java_14_SimpleHomeAccounting  (0) 2019.06.05
Comments