我使用Project Lombok为String字段生成getter / setter。该字段(例如密码)具有验证注释。
@Size(min = 6,max = 100, message = "The password must be between 6 and 100 characters")
private String password;
我想在setter中添加trim方法,以便不计算长度中的空白区域。
public void setPassword(String password) {
this.password = password.trim();
}
如何在Lombok setter中添加trim方法?或者我必须写自定义setter?
答案 0 :(得分:2)
在这种情况下,您必须编写自定义setter。如果你使用的是Immutable等价物(Wither),你可以将trim()放在构造函数中,只需将@Wither添加到方法中,这也适用于通过@Builder生成的构建器。这是一种更安全的方法,可确保始终修剪密码。
@Wither
@Size(min = 6,max = 100, message = "The password must be between 6 and 100 characters")
private final String password; //guaranteed to be trimmed
public MyClass(final String password){
this.password= password.trim();
}