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;
    }
相关推荐
qq_336313931 小时前
java基础-字符串
java
二进制person2 小时前
Java EE初阶 --多线程2
java·开发语言
007php0073 小时前
某游戏大厂 Java 面试题深度解析(四)
java·开发语言·python·面试·职场和发展·golang·php
西西学代码4 小时前
Flutter---个人信息(5)---持久化存储
java·javascript·flutter
陈果然DeepVersion4 小时前
Java大厂面试真题:Spring Boot+Kafka+AI智能客服场景全流程解析(五)
java·spring boot·kafka·向量数据库·大厂面试·rag·ai智能客服
FAFU_kyp4 小时前
Spring Boot 邮件发送系统 - 从零到精通教程
java·网络·spring boot
脚踏实地的大梦想家5 小时前
【Docker】P2 Docker 命令:从Nginx部署到镜像分享的全流程指南
java·nginx·docker
Blossom.1185 小时前
把AI“编”进草垫:1KB决策树让宠物垫自己报「如厕记录」
java·人工智能·python·算法·决策树·机器学习·宠物
芒克芒克5 小时前
ssm框架之Spring(上)
java·后端·spring
消失的旧时光-19435 小时前
Android ble理解
java·kotlin