当前位置: 首页 > java >正文

《IDEA 高效开发:自定义类/方法注释模板详解》

在 IntelliJ IDEA 中,可以通过 Live TemplatesFile Templates 来配置 类注释方法注释 模板,方便快速生成规范的代码注释。以下是详细配置方法:


1. 配置类注释模板(File Header)

作用:在创建新类时自动生成类注释(如作者、日期、描述等)。
配置步骤

  1. 打开设置
    FileSettingsEditorFile and Code TemplatesIncludesFile Header
    在这里插入图片描述

  2. 输入模板(示例):

    /*** @ClassName ${NAME}* @Description ${DESCRIPTION}* @Author ${USER}* @Date ${DATE} ${TIME}* @Version 1.0*/
    
  3. 变量说明

    • ${NAME}:类名
    • ${USER}:当前系统用户名
    • ${DATE}${TIME}:当前日期和时间
    • ${DESCRIPTION}:类描述(需手动填写)
  4. 应用:创建新类时,IDEA 会自动插入该注释。


2. 配置方法注释模板(Live Templates)

作用:输入快捷键(如 /** + Enter)自动生成方法注释。
配置步骤

  1. 打开设置
    FileSettingsEditorLive Templates
    在这里插入图片描述

  2. 新建模板组(可选):

    • 点击 +Template Group,命名为 MyTemplates
  3. 新建模板

    • 点击 +Live Template

    • Abbreviation(缩写):输入 /**mc(自定义快捷键)。

    • Template text(模板内容)

      /*** @Description $description$* @Param $params$* @Return $return$* @Author $user$* @Date $date$ $time$*/
      
  4. 变量配置

    • 点击 Edit variables,设置变量值:
      • descriptionmethodName()(或手动填写)
      • paramsmethodParameters()
      • returnmethodReturnType()
      • useruser()
      • datedate()
      • timetime()
  5. 适用范围

    • 勾选 JavaDeclaration(确保在方法上生效)。
  6. 应用:在方法前输入 /** 并按 TabEnter,自动生成注释。


3. 示例效果

类注释

/*** @ClassName UserService* @Description 用户服务类* @Author ZhangSan* @Date 2023-10-01 14:30* @Version 1.0*/
public class UserService {// ...
}

方法注释

/*** @Description 根据ID查询用户* @Param id 用户ID* @Return User 用户对象* @Author ZhangSan* @Date 2023-10-01 14:35*/
public User getUserById(Long id) {// ...
}

4. 高级配置(可选)

  • 自定义日期格式
    File HeaderLive Templates 中使用 $DATE.format("yyyy-MM-dd")$
  • 公司/项目统一模板
    通过 Export/Import Settings 导出模板,团队共享。
http://www.xdnf.cn/news/11891.html

相关文章:

  • 机器学习14-迁移学习
  • 【Linux】Linux权限
  • 在 Windows 系统下配置 VSCode + CMake + Ninja 进行 C++ 或 Qt 开发
  • docker常见命令行用法
  • WebFuture:启动数据库提示: error while loading shared libraries: libaio.so.1问题处理
  • PaddleOCR(2):PaddleOCR环境搭建
  • 跨域请求解决方案全解析
  • NFT 市场开发:基于 Ethereum 和 IPFS 构建去中心化平台
  • Open SSL 3.0相关知识以及源码流程分析
  • 【定时器】定时器存在的内存泄露问题
  • [蓝桥杯]最大比例
  • springboot ErrorController getErrorPath() 版本变迁
  • Java设计模式:责任链模式
  • stress-ng 服务器压力测试的工具学习
  • .NET 原生驾驭 AI 新基建实战系列(三):Chroma ── 轻松构建智能应用的向量数据库
  • Orthanc:轻量级PACS服务器与DICOMweb支持的技术详解
  • 【unity游戏开发入门到精通——通用篇】从零掌握UnityWebRequest:文件下载、表单提交、超时处理、断点续传
  • UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
  • qt+vs Generated File下的moc_和ui_文件丢失导致 error LNK2001
  • Python_day44
  • 定制开发开源AI智能名片S2B2C商城小程序在无界零售中的应用与行业智能升级示范研究
  • NeRF PyTorch 源码解读 - NDC空间
  • AI,如何重构理解、匹配与决策?
  • FFmpeg avformat_open_input函数分析
  • [蓝桥杯]密文搜索
  • 深入解析 Java ClassLoader:揭开 JVM 动态加载的神秘面纱
  • CSP-J 信奥竞赛大纲(2025)
  • C语言-指针基础概念
  • 图神经网络实战——图属性度量方法详解
  • @Prometheus 监控-MySQL (Mysqld Exporter)