Idea live template

1:打印入参日志的配置

复制代码
log.info("$methodName$ 方法入参: $argsLog$",$argsJson$);

methodName:methodName()

argsLog:groovyScript( "def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) { result+= params[i] + ((i < params.size() - 1) ? ':[{}], ' : ':[{}]') }; return result" , methodParameters())

argsJson:groovyScript(" def result=''; def types = 'String,int,Integer,long,Long,float,Float,double,Double,byte,Byte,short,Short,char,Char,boolean,Boolean'; def params=\"{_1}\\".replaceAll('\[\\\\\\\\\[\|\\\\\\\\\]\|\\\\\\\\s\]','').split(',').toList(); def paramTypes=\\"{_2}\".replaceAll('[\\\\[|\\\\]|\\\\s]','').split(',').toList(); for(i = 0; i < params.size(); i++) { if(types.contains(paramTypes[i].replace('java.lang.',''))){ result+=params[i] + ((i < params.size() - 1) ? ', ' : ''); }else{ result+='JSONObject.toJSONString(' + params[i] + ((i < params.size() - 1) ? '), ' : ')'); } }; return result; " , methodParameters(), methodParameterTypes())

2、打印返回结果日志的配置

复制代码
log.info("$METHOD_NAME$() returned: {}" ,  $result$);

methodName:methodName()

result:variableOfType(Type)

相关推荐
quikai19815 分钟前
python练习第二组
开发语言·python
熊猫_豆豆14 分钟前
python 用手势控制程序窗口文字大小
python·手势识别
Tony Bai24 分钟前
Go 安全新提案:runtime/secret 能否终结密钥残留的噩梦?
java·开发语言·jvm·安全·golang
oioihoii30 分钟前
C++11到C++23语法糖万字详解
java·c++·c++23
pengzhuofan33 分钟前
Java演进与与工程师成长
java·开发语言
测试秃头怪34 分钟前
2026最新软件测试面试八股文(含答案+文档)
自动化测试·软件测试·python·功能测试·测试工具·面试·职场和发展
月明长歌34 分钟前
再谈Java 继承与多态:从“能用”到“精通”,更深一层的原理与设计思维
java·开发语言
LUU_7936 分钟前
Day29 异常处理
python
狗头实习生39 分钟前
Spring常见的事务失效原因
java·数据库·spring
子夜江寒1 小时前
Python 学习-Day8-执行其他应用程序
python·学习