赞
踩
熟练使用ide快捷键能提高开发效率,在idea里面可以使用alt+insert快捷键打开generate,自动生成使用频率高的代码,比如构造方法、属性getter方法和setter方法等等。
很多场景需要在get或者set之后进行其他操作,比如初始化或者更新数据库字段等。
详细询问了chatgpt各种方法,创建template,在live templates创建或者file and code templates修改java class,都试过了,不行。
最后,自己alt+insert打开generate,点击setter后,才发现是有可以选择模板template,点击选择可以创建自定义的模板。
比如我要在每个自动生成的set方法最后一行自动生成 System.out.println(“自定义模板,属性:属性名”);
解决办法:
创建自定义模板,将默认的模板复制过来,然后在最后一行添加:
System.out.println("自定义模板,属性:$helper.getPropertyName($field, $project)");
这样自动生成的代码就是:
public int gold;
//调用快捷键自动生成setter方法
public void setGold(int gold) {
this.gold = gold;
System.out.println("自定义模板,属性:gold");
}
完整模板代码:
#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 = $paramName;
System.out.println("自定义模板,属性:$helper.getPropertyName($field, $project)");
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。