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+= paramsi + ((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(paramTypesi.replace('java.lang.',''))){ result+=paramsi + ((i < params.size() - 1) ? ', ' : ''); }else{ result+='JSONObject.toJSONString(' + paramsi + ((i < params.size() - 1) ? '), ' : ')'); } }; return result; " , methodParameters(), methodParameterTypes())

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

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

methodName:methodName()

result:variableOfType(Type)

相关推荐
xcl09254 小时前
商超智能运营实战:数据驱动提升门店效率与体验指南
java·mfc·宠物
Flynt6 小时前
OpenJDK禁AI代码半年了,现在执行得怎么样?答案是:全靠自觉
java·开源·ai编程
古法安卓11 小时前
Android-日志系统源码解析
android·java·android studio
用户77833661321112 小时前
用 React Hook 封装搜索数据:useSerp 的防抖、缓存与错误处理
python·api
小夏coding13 小时前
从"一把梭"到"精妙拆解" —— 滑动窗口计时框架的设计演进
java·后端
MacroZheng14 小时前
同事问我:"Claude Code经常失忆,不怕它把项目搞炸?",我:"怕,三个Markdown文件给它装个永不丢失的外置大脑!"
java·人工智能·后端
十年Java程序媛15 小时前
深度实战:JDK21 虚拟线程 + HikariCP 生产正确配比、坑点、监控全套
java·spring boot
xiaoqiMikko15 小时前
有人在搜一个不存在的 Tomcat 版本
java·tomcat
65岁退休Coder16 小时前
LangGraph v1.2.9 节点容错策略 & 流式输出 & 持久化记忆管理
后端·python·langchain
用户31268748772019 小时前
ConcurrentHashMap 怎么保证线程安全?从分段锁到 CAS+synchronized
java