代码模板
在使用mybatis时,发现自动生成工具有一个功能:对setter方法中字符串对象,将自动使用trim()方法。这是一个不错的设计,所以我尝试使用最简单的方式实现这个功能,最后使用了idea的模板方法。
#set($paramName = $helper.getParamName($field, $project))
#if($field.modifierStatic)
static ##
#end
void set$StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project)))($field.type $paramName) {
#if ($field.name == $paramName)
#if (!$field.modifierStatic)
this.##
#else
$classname.##
#end
#end
$field.name = ##
#if($field.string)
$paramName == null ? null : $paramName.##
trim();
#else
$paramName;
#end
}
将这个代码放到生成setter方法的模板里,在使用时,选择就好,现在使用ubuntu,没法上传图片,就复制结果吧。
public class UserInfo {
private Long id;
private String name;
private String address;
private String mobile;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address == null ? null : address.trim();
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile == null ? null : mobile.trim();
}
}