【idea技巧篇】idea的类注释和方法注释模版自定义设置

news/2024/10/20 12:22:03/

这块idea技巧虽然常用,谁没事会经常修改模版设置呢,一般是搭建开发环境的时候或者开发规范要求等设置一次就行了。用的虽然少,但几乎每次搭建环境都会用到,这里记录下并分享设置的过程已经发现的更高级的一些使用技巧。

注释模版

idea默认创建java文件时,是不会生成注释>类注释的,但是一般要求统一格式,需要带上类的注释,下图是一个简单的模版,具体模版可以自定义设置,这里分享下如何设置注释模版。
在这里插入图片描述

如何设置

设置文件头方式

效果就是每次创建java文件,会自动带上注释内容。这种方式设置比较简单,只适用于新建Java文件时生效,而且全局统一,推荐使用这种方式进行全局设置。
配置路径:Settings -> Editor -> File and Code Templates -> File Header
配置内容:

java">/*** 负责实验执行,故障摘除等逻辑* @author: wanglianhai* @date: 2024/8/9 16:52*/

在这里插入图片描述
效果如下:
在这里插入图片描述

可用的变量如下:

预定义变量取以下值:
${PACKAGE_NAME}新文件创建时所属的包名
${USER}当前用户的系统登录名
${DATE}当前系统日期
${TIME}当前系统时间
${YEAR}当前年份
${MONTH}当前月份
${MONTH_NAME_SHORT}当前月份名称的前三个字母。例如:Jan, Feb等
${MONTH_NAME_FULL}当前月份的全名。例如:January, February等
${DAY}当前月中的日期
${DAY_NAME_SHORT}当前星期名称的前三个字母。例如:Mon, Tue等
${DAY_NAME_FULL}当前星期的全名。例如:Monday, Tuesday等
${HOUR}当前小时
${MINUTE} 当前分钟
${PROJECT_NAME} 当前项目名称

通过模版自定义

Live Template这种方式可以自定义很多模版以及快捷的设置,而且可以参考注释模版的设置,然后去拓展定义其他模版。

  1. 配置路径:settings -> Editor -> Live Templates,如下图:
    在这里插入图片描述
  2. 创建Template
    在这里插入图片描述
    模版:
java">/**
* Description: <br/>
* @date: $DATE$ $TIME$<br/>
* @author: your name <br/>
* @since JDK 1.8
*/
  1. 看到其中有DATE和TIME变量,还需编辑变量,同理参考这种方式,可以设置用户名等其他变量,内置了很多变量,下拉可以查看。
    在这里插入图片描述
  2. 效果:
    在这里插入图片描述
    回车生成注释内容
    在这里插入图片描述

进阶使用

设置变量函数,上一篇已经看到有内置的函数了,同时我们也可以自定义自己的函数如下图:
在这里插入图片描述

我们尝试设置JavaDoc格式的注释>方法注释模版:
在这里插入图片描述
模版内容,注意下面内容是只有一个*,这样快捷键可以设置成*, 不然会取不到方法参数。

java">** @description* @author xiaohei * @date $date$ $time$* @param $param$* @return $return$**/

获取参数param的脚本:

groovyScript("def result = '';def params = \"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {if(params[i] != '')result+='* @param ' + params[i] + ((i < params.size() - 1) ? '\\r\\n ' : '')}; return result == '' ? null : '\\r\\n ' + result", methodParameters())

获取返回值脚本:

groovyScript("return \"${_1}\" == 'void' ? null : '\\r\\n * @return ' + \"${_1}\"", methodReturnType())

其他Live Template

参考如下,可以设置各种编程语言的快捷键已经自动生成的内容,参考如下图:
在这里插入图片描述

常见的模版内容参考

注释>类注释模版

最简单的注释>类注释模版, 我一般使用这种,比较简介明了,生成完添加下类的功能说明就好了,需要其他信息可以

java">/*** * @author: xiaohie* @date: ${DATE} ${TIME}*/

复杂一点的

java">/*** @className: XXDemo* @description: 演示使用* @author: xiaohei* @date: $date$ $time$**/

注释>方法注释模版

我一般就用默认的就够了,如果需要调整可以参考以下几种模版:

java">*$param$* @description: TODO* @return: $return$* @author: xiaohei* @date: $date$ $time$*/

http://www.ppmy.cn/news/1540511.html

相关文章

STL-list-模拟实现

文章目录 list介绍list的使用list iterator的使用list modifierslist的迭代器失效list的模拟实现 list介绍 list是可以在常数范围内在任意位置进行插入和删除的序列式容器&#xff0c;并且该容器可以前后双向迭代。list的底层是双向链表结构&#xff0c;双向链表中每个元素存储…

机器学习课程学习周报十七

机器学习课程学习周报十七 文章目录 机器学习课程学习周报十七摘要Abstract一、机器学习部分1. 变分推断/推理1.1 证据下界1.2 q ( z ) {q(z)} q(z)的选取 2. VAE2.1 Auto-Encoder的简单回顾2.2 为什么提出VAE2.3 VAE的数学原理 3. Diffusion Model的数学原理3.1 Training算法…

C++ 排序算法(选择、冒泡、插入)

八、选择排序(从小到大)&#xff1a; 选择排序的基本思想是&#xff1a;每一趟从待排序的数据中&#xff0c;通过“打擂台”比较选出最小元素&#xff0c;放在这些数据的最前面。 这样&#xff0c;第一趟把 n 个数中&#xff08;第 1 个到第 n 个&#xff09;最小的放在第一个…

TCP 全连接队列与 tcpdump 抓包

TCP 相关实验 理解 listen 的第二个参数 基于刚才封装的 TcpSocket 实现以下测试代码对于服务器, listen 的第二个参数设置为 1, 并且不调用 accept test_server.cc C #include "tcp_socket.hpp" int main(int argc, char* argv[]) {if (argc ! 3) {printf("…

Zookeeper面试整理-Zookeeper的特性

Zookeeper 具有一些关键的特性,这些特性使其成为分布式系统中非常可靠的协调服务工具。以下是 Zookeeper 的主要特性: 1. 顺序一致性(Sequential Consistency) Zookeeper 保证了所有客户端的操作是按照严格的顺序执行的。每个客户端在对 ZNode 进行操作时,会看到与其他客户…

R语言医学数据分析实践-高级回归分析

【图书推荐】《R语言医学数据分析实践》-CSDN博客 《R语言医学数据分析实践 李丹 宋立桓 蔡伟祺 清华大学出版社9787302673484》【摘要 书评 试读】- 京东图书 (jd.com) R语言编程_夏天又到了的博客-CSDN博客 R编程环境的搭建-CSDN博客 上一节介绍了简单线性回归分析&#…

RHCE【远程连接服务器】

目录 一、远程连接服务器简介 二、加密技术简介 SSH工作过程&#xff1a; &#xff08;1&#xff09;版本协商阶段 &#xff08;2&#xff09;密钥和算法协商阶段 &#xff08;3&#xff09;认证阶段 &#xff08;4&#xff09;会话请求阶段 &#xff08;5&#xff0…

Spring Boot里的响应式和Vue里的响应式

Spring Boot 3中的响应式和Vue 3的响应式虽然都涉及到了“响应式”这一概念&#xff0c;但它们在实现和应用场景上存在显著的差异。 Spring Boot 3的响应式 定义与实现&#xff1a; 在Spring Boot 3中&#xff0c;响应式编程主要通过Spring WebFlux和Spring Data R2DBC等组件来…