使用Live Template 增加开发效率

## 背景

最近在开发一个新项目,在写新类的时候要加log对象:

private static final Logger log = LoggerFactory.getLogger(ExperienceController.class);

然后每次都忘,于是想看看有没有什么办法能简化这个流程,最后用了intellij 的live templates

## Live Template
关于live template的介绍参照这里这里, 它主要作用是能自定义一些代码片段的快捷方式,然后通过代码提示能快速的帮你生成代码。

它的配置地方和快捷键如下:
97f2a2ae8d9a6312.png

Intellij已经集成了一些快捷项了,比如

99805490cd713c04.png

这样你输入sy时候会提示:
d7975c1a27cae4fd.png

按下tab键后会生成:

95f9a599dca0b47c.png

光标会停留在$END$处的地方方便你编辑。

除此之外,live templates还支持定义一些变量和一些内置函数,具体可以参考上面的官方文档。

另外在写新的template时候要定义使用场景,即最下方的:
0920128a50939d4a.png

点击define会弹出一个对话框:
13a6ef5cb39b707b.png

你可以选择希望什么时候提示你的template。

实践

下面简单介绍一下我自己写的几个例子

第一个是生成log对象的例子:
786de1f6e266794a.png

输入后生成代码:
b10f055b33bb4c41.png

这里用到了一个变量供用户输入classname

第二个例子涉及两个变量,这个使用场景是自己写了个处理response的类,对每个需要返回reponse的地方都要调用它:
2177068d2edb04bb.png

输入comrepn后生成代码:
2e5f1f3690146b93.png

输入第一个变量后光标自动跳到第二个变量处:
140c72258947febf.png

最后一个例子涉及变量之间的函数。这里的场景是jackson把一个类转换成一个json时候需要自定义那个key,由于json里我用的是下划线的,java里又是camel的,所以我希望只需要编辑一个地方自动生成另一个地方。先看一下定义的template.
69d7ef58f1d9228b.png

点击右边的edit variables:
726bdf83d8f6a93b.png

所以这边的逻辑就是输入NAME时候会自动生成ToCamelCase的变量名,完了以后再输入type。
效果如下:
e488613fa957dd1a.png

9f1df582e43f11b5.png

在输入jsonproperty的时候下面变量名会跟着变,直到输入回车会跳到输入类型的地方。

总的来说live template能让你编写代码幸福感上升好几层,值得大家拥有!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值