Java系列之 IDEA 为类 和 方法设置注解模板

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。

1、类方法注解模板

1、File-->settings-->Editor-->File and Code Templates-->Files

  • @BelongsProject:项目名

  • @BelongsPackage:当前包的名称

  • @Author:作者姓名

  • @CreateTime:该类创建的时间

  • @Description:对该类的描述

  • @Version:设置版本号,一般新创建的类都是1.0版本,这里写死就可以了

1.1 模板

将这部分代码 放到IDEA 的指定位置。

java 复制代码
/**
*@BelongsProject: ${PROJECT_NAME}
*@BelongsPackage: ${PACKAGE_NAME}
*@Author: zhengyuzhu
*@CreateTime: ${YEAR}-${MONTH}-${DAY}  ${HOUR}:${MINUTE}
*@Description: TODO
*@Version: 1.0
*/

1.2 实际效果

编写一个类,试一下

java 复制代码
/**
 * @BelongsProject: Java-Work-Demo
 * @BelongsPackage: A1多线程.B1超时处理.Demo1
 * @Author: zhengyuzhu
 * @CreateTime: 2023-11-14  11:31
 * @Description: TODO
 * @Version: 1.0
 */
public class MyTest {
}

2、方法注解模板(一)

1.1 模板

java 复制代码
*
 * @description:
 * @author: zhengyuzhu 
 * @date: $date$ $time$
 * @param: $param$
 * @return: $return$
 **/

实现的效果是这样的

具体操作过程如下:




这里注意一点,这里的操作顺序不要弄错了。否则,函数方法可能会读取不到。

1.2 实际效果

java 复制代码
    /**
     * @description:
     * @author: zhengyuzhu 
     * @date: 2023/11/14 12:21
     * @param: [a, str]
     * @return: void
     **/
    public void Test(int a, String str){
        
    }
    
    /**
     * @description:
     * @author: zhengyuzhu 
     * @date: 2023/11/14 12:22
     * @param: []
     * @return: java.util.List
     **/
    public List Test2(){
        ArrayList<Object> list = new ArrayList<>();
        return list;
    }

3、方法注解模板(二)

1.1 模板

java 复制代码
*
 * @description:
 * @author: zhengyuzhu
 * @date: $date$ $time$ $param$ $return$
 **/

效果展示

具体实现过程,过程和 一 相似。只需要改变模板,和获取方法就可以了。具体过程如下:


自定义方法:参数获取

java 复制代码
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())

自定义方法:返回值 包含包名

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

自定义方法: 返回值 不包含包名

java 复制代码
groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split('<').toList(); for(i = 0; i < params.size(); i++) {if(i!=0){result+='<';};  def p1=params[i].split(',').toList();  for(i2 = 0; i2 < p1.size(); i2++) { def p2=p1[i2].split('\\\\.').toList();  result+=p2[p2.size()-1]; if(i2!=p1.size()-1){result+=','}  } ;  };  return result", methodReturnType())

1.2 实际效果

我习惯用返回值包含包名的、根据个人习惯来改。

java 复制代码
    /**
     * @description:
     * @author: zhengyuzhu
     * @date: 2023/11/14 12:34 
     * @param: a
     * @param: b
     * @param: c 
     * @return: java.lang.String
     **/
    public String TestDemo(int a,String b,List c){
        return null;
    }
    
    
    /**
     * @description:
     * @author: zhengyuzhu
     * @date: 2023/11/14 12:41 
     * @param: a
     * @param: b 
     * @return: java.util.List<java.lang.String>
     **/
    public List<String> list (int a ,String b){
        return null;
    }
相关推荐
Hpc_Fun2 分钟前
GPU 工作站品牌怎么比?五把可核验尺子、加权评分脚本与场景重排
java·信创·gpu工作站·品牌对比·加权评分
const_qiu2 分钟前
第四章 03:4.3 Tools —— 让 Agent 会用工具
java·人工智能
Rain的Java大神之路8 分钟前
百万并发直播弹幕系统设计全解:看懂了扇出,你就看懂了高并发的八成
java·后端·面试
\光辉岁月/24 分钟前
2.异常类
java·开发语言·异常类
十年Java程序媛33 分钟前
JVM 基础与 GC 垃圾回收详解|可达性分析、分代模型、垃圾收集器、STW
java·开发语言·jvm·spring boot·后端·面试
2301_32241428041 小时前
基于SSM框架的在线考试管理系统的设计与实现14750-计算机毕设 原创(免费领源码+部署教程+开发环境)
java·redis·mysql·tomcat·maven·mybatis·ssm
clz13145211 小时前
RuoYi-Cloud 新建微服务并实现服务间调用(OpenFeign 实战)
java·ruoyi
const_qiu1 小时前
第四章 06:4.6 统一入口 —— analyze() 能力收束
java·人工智能
lhh_qrsly1 小时前
TI CCS(Code Composer Studio,德州仪器嵌入式 IDE)2015~2026 版本总览
ide·php·composer
她的男孩1 小时前
JAR 全对仍 checksum mismatch:Forge Admin 把 Flyway 从 filesystem 改成 classpath
java·数据库·spring boot