我使用@Setter生成Setter,但我也想为同一字段添加一个不同数据类型的Setter作为输入。
@Setter
private Date date;
它将生成:
public void setDate(Date date) {
this.date = date;
}
我还想再添加一个setter,其中输入的格式是String。
public void setDate(String date) {
this.date = Date.valueOf(date);
}
通过使用@Setter并添加setDate(String date)Setter,lombok无法自动生成setDate(date date)Setter。有没有方法可以使用Date作为输入自动生成setter,并添加一个明确接受String作为输入的setter。
来自文档:
如果已经存在具有相同名称(不区分大小写)和相同参数计数的任何方法,则不会生成任何方法。例如,如果已经有一个方法getFoo(String…x),即使在技术上可以生成该方法,也不会生成getFoo)。存在此警告是为了防止混淆。如果由于这个原因跳过了方法的生成,则会发出警告。变量计数为0到N个参数。您可以用
@lombok.experimental.Tolerate
标记任何方法以对lombok隐藏它们。
我的建议是使用类似(或使用实验注释)的东西:
@Setter
private Date date;
public void setDateFromString(String date) {
this.date = Date.valueOf(date);
}