개발.log/framework

[Lombok]@ToString 부모의 toString() 함께 출력하기

개발하는 주디씨 2023. 10. 4. 18:49

 

 

자바 쫌 써봤으면 extends 상속은 당연히 했겠지?

 

 

평소와 다름없이.. extend로 DTO를 공장처럼 찍어낼 때, 갑자기 이상한 현상이 나왔다. Super() 키워드로 분명, 부모클래스를 초기화했는데 자식클래스에서 logging을 해보니까 부모가 없는것..!?

근데 또 디버깅모드로 직접 객체 안을 살펴보면 잘 들어가있다..?

 

대환장 -

 

이때 사용하면 되는 태그가 바로 @ToString(callSuper = true)

callSuper()의 default가 false이니 @ToString(callSuper = true)로 설정해 줍니다. false일 경우 부모의 toString을 출력해주지 않겠다는 설정이기 때문에 꼭 True로 바꿔줘야 한다.

 

 

@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ChainDTO extends TrDTO {
    private String id;
}

 

이렇게 해주면 끝.ᐟ.ᐟ