I have a class that is annotated with @Data
. But I want to exclude the toString()
method and provide a custom toString.
I just defined a custom toString()
method as I usually do if I was not using lombok and it seemed to work. Following is my example.
@Data
class SomeDTO {
private String property1;
private String property2;
private String someReallyHugeString;
@Override
public String toString(){
return "someReallyHugeString size is: " + someReallyHugeString.length()
+ "property1 = " + property1
+ "property2 = " + property2;
}
}
But wanted to know if this is the right way to exclude toString()
from @Data
and if there are any side effects I am missing.
Just don't use @Data
(but provide all the other annotations) that is has:
@Getter
@Setter
@RequiredArgsConstructor
@EqualsAndHashCode
SomeDTO { ....
public String toString(){....}
}
This way if you remove toString
by accident, it will not be generated.