IDEA小技巧, Surround With快捷生成代码

场景:mybatis里的mapper文件需要生成if条件,先看效果

一键生成

下面来看具体设置:

首先点击打开Code-Surround With-Configure Live Templates

先选择Tempate Group添加一个自定义分组,这里存在你的自定义生成脚本

然后选中新增的分组,点击Live Template添加脚本

添加完成后在下方写入想要一键生成的内容,这里是想要生成sql的if判断语句,下面解释一下各个变量的含义

$SELECTION$是系统预设变量,表示光标选中选择内容,如果没选选中内容,则自动全选光标所在行内容

$sqlparam$是自定义变量,可以随便命名

写好以后点击 Edit variables,需要注意的是,如果不先定义自定义变量,按钮是灰色不可点状态

定义了$sqlparam$后:

点击后,会发现刚刚定义的变量已经在里面,那么问题来的,怎么赋值给自定义变量呢?

我们思考一下会发现,一般mapper文件里写法都是#{abName}这种,那么我可以以此为切入点,去截取所需的字符串

IDEA的模板支持groovyScript脚本,我们只需在Expression写入脚本即可!

Skip if defined表示生成后,不会保留编辑状态,一般勾上即可

脚本解析:

SELECTION等价于$SELECTION$即光标选择文本信息

${_1}就是传入的变量,即这里这里是SELECTION

groovyScript("def result=\"${_1}\";return result.substring(result.indexOf(\"#{\")+2,result.indexOf(\"}\"))", SELECTION)

ok...大功告..等等,为什么打开Surround With没有我们刚才新增的模板?

 

还差了最后一步,把模板的使用场景勾上就好啦,这样模板只会在特定后缀的文件里才会出现

这是IDEA一个非常实用的小技巧,这里举得例子非常简单,起到一个抛砖引玉的作用,事实上,在熟练学习groovyScript后,模板可以生成更复杂更强大的代码!各位就自行发挥自己的想象力啦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值