1. Editor --> Live Templates --> 右上角新建Template Group
2. Editor --> Live Templates --> 右上角新建Live Template
2.1 设置快捷键Abbreviatiion, 设置完之后代码提示里会出现提示的。我这里设置为 **
2.2 写入Description, 随便写,中文也是OK的
2.3 点击Define, 勾选整个Java
下面是重点;
3. 输入Template text:
** * @author liyanlong * @date $datetime$ $param$ $return$ */ |
4. 编辑Edit variables, 会出现三个变量,然后分别在Default Value输入对应的值即可
Name | Expression | Default Value | Skip if defined |
datetime | groovyScript("def now = new Date().format(\"yyyy-MM-dd HH:mm:ss\");return now;", time()) | ☑️ | |
param | groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n' : '')}; return result", methodParameters()) | ☑️ | |
return | groovyScript("def returnType = \"${_1}\"; def result = ' * @return ' + returnType; return result;", methodReturnType()); | ☑️ |
5. done.
效果:
/** * @author liyanlong * @date 2020-05-21 15:01:24 * @param a * @param b * @return java.lang.String */ public String aa(String a, Integer b){ return a + b; } |
说明一下:
此时, 在java方法前输入 “/**” 然后回车,应该是OK了的。
1. 如果模板是以 /** 开始,在java中使用也问题不大,但是@param 后面显示是null, 在方法内部通过 /** 回车却是可以的。 只能说这个功能是有瑕疵的或者不人性化的。
2. datetime 是通过groovy脚本生成的,格式化了。
3. skip if defined 勾选,是因为,如果不勾选,生成注释之后就会有个红色的框,比较烦人。
另一种简单的设置:
** * @author liyanlong * @date $date$ $time$ * @param $param$ * @return $return$ */ |
Name | Expression | Default Value | Skip if defined |
date | date() | ☑️ | |
time | time() | ☑️ | |
param | methodParameters() | ☑️ | |
return | methodReturnType() | ☑️ |
效果:
/** * @author liyanlong * @date 2020/5/21 3:02 下午 * @param [a, b] * @return java.lang.String */ public String aa(String a, Integer b){ return a + b; } |
所以:
methodParameters() 这个方法返回的是一个打印后的数组字符串?? 就是带有一个中括号的东西。 所以可以通过这种格式,自己调试groovy脚本。