Idea Live Templates代码模板
一. 概念
创建代码模板进行快速代码编写,如sout-->System.out.println();。
如我们经常要写logger的定义:private static final Logger logger = LoggerFactory.getLogger(MyClass.class);,如果每次都手敲或复制是不是有点繁琐,这里就可以借用sout这种Live Templates实现快速代码编写。用好了这个功能,以后妈妈再也不用担心我们经常加班了。
二. 设置
Settings-->Editor-->Live Templates...
2.1 编写模板

- Abbreviation:模板的缩略名称,如sout;
- Template text:模板的代码片段,可以用自定义变量。
2.2 自定义变量
这里我们自定义了CLASS变量(使用时需要前后都加上$),但Idea并不识别,这就需要对自定义的变量进行编辑,Edit Variables。

- Name:我们的自定义变量名称;
- Expression:变量替换表达式,这里我们使用了Idea模板支持的内置函数className()表示类名,更多的内置函数参考:Creating and Editing Template Variables
- Default value:表达式计算失败时的默认值。
2.3 设置应用范围
模板代码设置完后,我们还要设置其应用范围,即loggerDefineStatic在哪里会生效。

这里,我们选择loggerDefineStatic在Java的声明里生效。
OK,到这里,loggerDefineStatic的设置就算完成了,接下来就可以像sout一样使用了,是不是很帅!

三. 常用模板
3.1 loggerDefineStatic
private static final Logger logger = LoggerFactory.getLogger($CLASS_NAME$.class);
1)CLASS_NAME
className()
3.2 loggerDefineThis
private final Logger logger = LoggerFactory.getLogger(this.getClass());
3.3 logStart
logger.info("op=start_$METHOD_NAME$, $PARAMS_FORMAT$", $PARAMS$);
1)METHOD_NAME
methodName()
2)PARAMS_FORMAT
groovyScript("_1.collect{it+'={}'}.join(',')", methodParameters())
3)PARAMS
groovyScript("_1.collect{it}.join(',')", methodParameters())
3.4 test
@Test
public void test() { }
end
Idea Live Templates代码模板的更多相关文章
- Delphi中Templates代码模板添加注意事项
今天用Delphi中的代码模板添加一段代码,结果就是有问题,多次测试后,发现是编码需要注意. <?xml version="1.0" encoding="GB231 ...
- 工欲善其事必先利其器之Xcode高效插件和舒适配色
功能强大的Xcode再配上高效的插件,必会让你的开发事半功倍.直接进入正题. Xcode插件安装方式: 1.github下载插件然后用xcode打开运行一遍,然后重启xcode. 2.安装插件管理Al ...
- idea—— 模版配置
修改File Header: /** * @author: ${USER} Date: ${DATE} Time: ${TIME} */ 新增Package Header: /* * Copyrigh ...
- VS中创建自定义一个VC工程为基础的开发向导的总结
作者:朱金灿 来源:http://blog.csdn.net/clever101 VS允许用户进行自定义开发向导.自定义开发向导的好处在于将常用的设置都通过向导生成,从而大大提供开发效率.特别是在开发 ...
- qt creator源码全方面分析(1)
目录介绍 首先我们对软件源代码根目录下的各个重要文件(夹)做一个简单的介绍,对整体有一个大概的了解. 下面对目录及其内容做一个大概的初步的介绍,后面我尽量按照目录顺序进行依次介绍,当然可能会有一些交叉 ...
- AS 代码模板 文件模板 Templates MD
修改 File and Code Templates Settings –> Editor –>[File and Code Templates] 或者在右键new时选择子菜单[Edite ...
- 怎么在WEBSTORM中设置代码模板 Live Templates
怎么在WEBSTORM中设置代码模板 Live Templates setting 里面 https://www.cnblogs.com/xinzaimengzai/p/9938464.html
- c++builder 代码模板 code templates
c++builder6.0 MENU:Tools>Editor Options>Code Insight>Code templates XE6 c++builder D:\Prog ...
- 在Eclipse中自定义类似syso的快捷代码模板
sysout/syso syserr/ syse 点击菜单栏的“Window”->“Preferences”,打开“Preferences”对话框.在Preferences”对话框中点击“Jav ...
随机推荐
- Servlet 笔记-Cookie 处理
Cookie 是存储在客户端计算机上的文本文件,并保留了各种跟踪信息. 识别返回用户包括三个步骤: 服务器脚本向浏览器发送一组 Cookie.例如:姓名.年龄或识别号码等. 浏览器将这些信息存储在本地 ...
- Redis 学习笔记-5种数据类型的基本操作
1.string类型 基本操作列表: GET 获取指定键对应的值 SET 设定键值 DEL 删除指定键对应的值(对所有数据类型都有效) > set hello world OK > get ...
- 初学者易上手的SSH-hibernate03 三大状态与缓存
这章主要来浅的学习下hibernate三大状态与缓存.首先来看下三大状态: 如上图,三大状态分别为临时状态(Transient),持久化状态(Persistent),游离状态(Detached).那么 ...
- PhiloGL学习(4)——三维对象、加载皮肤
前言 上一篇文章中介绍了如何响应鼠标和键盘事件,本文介绍如何加载三维对象并实现给三维对象添加一个漂亮的皮肤. 一. 原理分析 我对三维的理解为:所谓三维对象无非是多个二维对象拼接到一起,贴图就更简单了 ...
- Spring MVC 快捷定义 ViewController
WHY : 为什么我们需要快捷定义 ViewController ? 在项目开发过程中,经常会涉及页面跳转问题,而且这个页面跳转没有任何业务逻辑过程,只是单纯的路由过程 ...
- Angular5.0.0新特性
文章来自官网部分翻译https://blog.angular.io/version-5-0-0-of-angular-now-available-37e414935ced Angular5.0.0版本 ...
- C++头文件的处理
C++的头文件比自己想的要复杂,不是简单地添加自己需要的头文件,这当中有一定的规律.简单归于以下几点: 1.非stadfx.h的头文件必须要有#pragma once的编译提示符,具体原因也不明白. ...
- scp命令,用来在本地和远程相互传递文件,非常方便
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...
- HDU 4291 A Short problem(矩阵+循环节)
A Short problem Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)T ...
- VMware三种网络模式
VMware网络配置详解一:三种网络模式简介安装好虚拟机以后,在网络连接里面可以看到多了两块网卡: 其中VMnet1是虚拟机Host-only模式的网络接口,VMnet8是NAT模式的网络接口,这些后 ...