问题描述
我有一个用 @H_502_1@@Data 注释的类。但我想排除 @H_502_1@toString() 方法并提供自定义 toString。
我刚刚定义了一个自定义的 @H_502_1@toString() 方法,如果我不使用 lombok,我通常会这样做,并且它似乎有效。以下是我的例子。
@H_502_1@@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; } }
但想知道这是否是从 @H_502_1@toString() 中排除 @H_502_1@@Data 的正确方法,以及我是否遗漏了任何副作用。
解决方法
只是不要使用具有以下特性的 @Data
(但提供所有其他注释):
@Getter
@Setter
@RequiredArgsConstructor
@EqualsAndHashCode
SomeDTO { ....
public String toString(){....}
}
这样如果您不小心删除了 toString
,它就不会生成。
是。
这是正确的方式。您可以提供由 {{ field.atribute.all.count }}
生成的任何方法。它将检查该方法已经存在并跳过生成。