首页 > 其他分享 >Idea Live Templates 代码模板

Idea Live Templates 代码模板

时间:2022-11-20 00:00:11浏览次数:49  
标签:Templates IntelliJ 自定义 代码 Idea Live template 模板

我们每天都在写代码,有些代码有结构性的相似,但不是所有的代码都可以被抽成方法。在这种情况下,
我们应该考虑使用template的方式加快我们的开发速度。这篇文章会先介绍IntelliJ下已经有的一些code/live
template,然后介绍如何自定义 template。

  1. IntelliJ 下已有的 template
    在 Java 中,我们时常会遇到遍历一个 iterable 的情况。如下所示:
for (Integer item : items) {
//...
}

你可以选择一个字母,一个字母的敲,但是在 IntelliJ 下面,你只需要输入 iter 再按 TAB 键,就可以自动生
成这个代码,和原来的代码比起来,你需要敲键盘的次数少了几倍。

这个时候,红色的框框部分就是当前你的编辑区域,因为我之前有一个 items 的变量,这里 IntelliJ 会建议
Iterable 是 items。如果你觉得不对也可以修改,确认后敲 Enter。

敲了回车以后,就进入下一个编辑的部分,而不需要你手动的去移动光标。确实很 Intelligent 啊。
IntelliJ 中提供了很多现有的 Code/Live Template,你可以在 Settings 中找到这些已有的 template:
比如 sout 可以输出 System.out.println(...), ifn 可以输入 if (xxx == null) 等等。学习这些 template,并且灵活运用,
可以缩短你敲键盘的速度。

  1. 如何自定义 Live Template
    IntelliJ 提供了很多现成的 template。但你也可以根据自己的需要创建新的 template。
    如我们经常要写 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 一样使用了,是不是很帅!

  1. 常用模板
    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())

标签:Templates,IntelliJ,自定义,代码,Idea,Live,template,模板
From: https://www.cnblogs.com/fuqian/p/16907579.html

相关文章

  • LVS+Keepalived 高可用群集部署
    一、LVS+Keepalived高可用群集在这个高度信息化的IT时代,企业的生产系统、业务运营、销售和支持,以及日常管理等环节越来越依赖于计算机信息和服务,对高可用(HA)技术的应用......
  • IDEA出现Unable to resolve table/column **** 问题的解决方法
    1.出现无法解析table/columnxxx2.解决方法idea中file——>setting——>languages&Frameworks——>SQLResolutionScopes——>Projectmapping选择自己项目的库表——>......
  • IDEA提交任务到spark standalone集群
    参考文章:在idea里面怎么远程提交spark任务到yarn集群代码注意setJars,提交的代码,要提前打好包。否则会报找不到类的错误个人理解就相当于运行的main方法是起了一个spar......
  • IDEA里POM变成灰白色解决方法 立马恢复可用
       ①解决以上方法:搜索法     这样就可以恢复了    ②解决以上方法:逐个点开法   ......
  • idea使用commons-fileupload上传文件
    文件上传使用的工具:https://commons.apache.org/proper/commons-fileupload/faq.html文件上传的前提条件:form表单method="post"form表单enctype="multipart/form-data"......
  • gRPC(Java) keepAlive机制研究
    基于javagRPC1.24.2分析结论gRPCkeepAlive是grpc框架在应用层面连接保活的一种措施。即当grpc连接上没有业务数据时,是否发送pingpong,以保持连接活跃性,不因长时......
  • IDEA中使用 SVN 操作详解
    目录IDEA配置SVN拉取代码IDEA+SVN将文件回退到历史版本IDEA更新SVN代码解决冲突IDEA+SVN与资源库同步IDEA为SVN打分支或标签IDEA忽略提交文件到SVN......
  • 如何用idea新建一个Spring web项目
    如何用idea新建一个Springweb项目首先要下好maven,tomcat,idea,jdk等开发工具一、新建一个工程1、打开idea,选择File->New->project2、选择一个空项目,点击next,给项......
  • idea 设置vue@跳转
    第一步:根目录下面,创建一个JS文件,名字随便起config.js/*此文件未使用,只是为了让idea可以识别实际位置*/constpath=require('path');functionresolve(dir){returnpa......
  • 修改IDEA默认生成目录,解决C盘空间不足问题。
    问题:解决:1.打开文件路径,找到这个文件。2.用编辑器打开。去掉四个箭头所指向语句的注释,给其前两个添加你的新路径。3.重启IDEA。导入配置文件。(我好像导入失败了,但是路......