添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
编程技术
  • 16 建站技术
  • 电脑技术
  • 资源分享
  • 14 影视媒体
  • 1 生活笔记
  • 0 好物分享
  • 此文章发布于 19 个月前,部分信息可能已经 过时 ,请自行斟酌确认。

    在用 Java Kotlin 编写 方法 时建议编写完善的注释,包含每个参数的意义和返回的内容,下面介绍在 IDEA 中自动生成方法注释的技巧。
    特别是我平时使用 Kotlin 比较多,而 Kotlin 的注释生成和 Java 有点不同,请往下看。

    一、需求描述

    默认 Java 方法输入 /** 回车会自动生成方法注释,并添加方法参数。
    但我们可能想在注释中添加 作者和日期 ,就得用到 IDEA 的 实时模板 功能了(代码片段)。

    Java 生成的默认注释:

    /**
     * @param username
     * @param password
     * @return
    public String index(String username, Integer password) {
        return "xinggang";
    }

    我们期望生成这样的注释:

    /**
     * @param username
     * @param password
     * @return java.lang.String
     * @author xinggang
     * @create 2022/02/24
    public String index(String username, Integer password) {
        return "xinggang";
    }

    二、解决方案

    打开 IDEA 设置: 文件 | 设置 | 编辑器 | 实时模板 ,增加一个模板,设置如下,注意标记的 4 处。

    20220224_090246.png

    1、缩写用 *

    2、模板文本(注意开始是个 * ,不是 /*

    *
     * $name$
     * $param$
     * @return $return$
     * @author xinggang
     * @create $date$
     **/

    3、作用于 Java Kotlin(Kotlin 获取不到方法参数,解决方案见本文后面章节)

    4、展开方式 Enter (当然也可以选择自己喜欢的如 Tab

    5、编辑变量

    20220224_090436.png

    其中 param 变量表达式:

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

    6、使用:输入 /** 后回车,生成注释如下,光标会定位在开始位置方便输入方法的名称及描述等。

    /**
     * @param username
     * @param password
     * @return java.lang.String
     * @author xinggang
     * @create 2022/02/24
    public String index(String username, Integer password) {
        return "xinggang";
    }

    三、Kotlin 获取不到参数

    1、若 不使用 上面的模板,Kotlin 默认输入 /** 不会 自动生成带参数的注释,这是因为 IDEA 默认没有安装 kdoc-generator 插件。
    2、即使 使用 上面的模板,Kotlin 方法上也 无法获取方法参数

    本文模板输出的内容(获取不到参数)

    /**
     * @param null
     * @return 
     * @author xinggang
     * @create 2022/02/24
    fun saveData(billNO: String, pcqy: String, currUser: SysUser): Any {
    }

    适用于 Kotlin 的变通解决方案:

    我思前想后终于找到一个不算完美但用起来倒也舒爽的变通方案。

    1、安装 kdoc 插件

    安装 kdoc-generator 插件后即可自动生成带参数的方法注释。

    20220224_090436.png

    kdoc 生成的注释如下:

    /**
     * TODO
     * @param billNO
     * @param pcqy
     * @param currUser
     * @return
    fun saveData(billNO: String, pcqy: String, currUser: SysUser): Any {
    }

    2、修改上面的模板

    将之前定义的 * 模板适用范围 去掉 kotlin ,即 kotlin 中不再使用上面定义的模板,如果一开始就没有勾选 kotlin 则忽略此步。

    3、新增加模板 TODO

    方法不再赘述,和之前的一样,直接看图。

    20220224_093029.png

    模板文本:

    $name$$END$
    * @author xinggang
    * @create $date$

    4、使用

    这样就 OK 了,使用时先按 /** 回车 输入 kdoc 的默认注释,这时光标停留在 TODO 位置,这时再直接按 Tab 就调用 TODO 模板补全内容了。

    效果动图:

    20220224_92647.gif

    四、日期格式化

    默认日期格式为 yyyy/MM/dd ,自定义可使用 groovy 语法:

    groovyScript("import java.text.SimpleDateFormat;return (new SimpleDateFormat(\"yyyy-MM-dd\")).format(new Date())")

    完🏝️。

    IDEA:自动生成方法注释并添加 @param 参数(Java+Kotlin)

    在用 Java Kotlin 编写 方法 时建议编写完善的注释,包含每个参数的意义和返回的内容,下面介绍在 IDEA 中自动生成方法注释的技巧。
    特别是我平时使用 Kotlin 比较多,而 Kotlin 的注释生成和 Java 有点不同,请往下看。

    一、需求描述

    默认 Java 方法输入 /** 回车会自动生成方法注释,并添加方法参数。
    但我们可能想在注释中添加 作者和日期 ,就得用到 IDEA 的 实时模板 功能了(代码片段)。

    Java 生成的默认注释:

    /**
     * @param username
     * @param password
     * @return
    public String index(String username, Integer password) {
        return "xinggang";
    }

    我们期望生成这样的注释:

    /**
     * @param username
     * @param password
     * @return java.lang.String
     * @author xinggang
     * @create 2022/02/24
    public String index(String username, Integer password) {
        return "xinggang";
    }

    二、解决方案

    打开 IDEA 设置: 文件 | 设置 | 编辑器 | 实时模板 ,增加一个模板,设置如下,注意标记的 4 处。

    20220224_090246.png

    1、缩写用 *

    2、模板文本(注意开始是个 * ,不是 /*

    *
     * $name$
     * $param$
     * @return $return$
     * @author xinggang
     * @create $date$
     **/

    3、作用于 Java Kotlin(Kotlin 获取不到方法参数,解决方案见本文后面章节)

    4、展开方式 Enter (当然也可以选择自己喜欢的如 Tab

    5、编辑变量

    20220224_090436.png

    其中 param 变量表达式:

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

    6、使用:输入 /** 后回车,生成注释如下,光标会定位在开始位置方便输入方法的名称及描述等。

    /**
     * @param username
     * @param password
     * @return java.lang.String
     * @author xinggang
     * @create 2022/02/24
    public String index(String username, Integer password) {
        return "xinggang";
    }

    三、Kotlin 获取不到参数

    1、若 不使用 上面的模板,Kotlin 默认输入 /** 不会 自动生成带参数的注释,这是因为 IDEA 默认没有安装 kdoc-generator 插件。
    2、即使 使用 上面的模板,Kotlin 方法上也 无法获取方法参数

    本文模板输出的内容(获取不到参数)

    /**
     * @param null
     * @return 
     * @author xinggang
     * @create 2022/02/24
    fun saveData(billNO: String, pcqy: String, currUser: SysUser): Any {
    }

    适用于 Kotlin 的变通解决方案:

    我思前想后终于找到一个不算完美但用起来倒也舒爽的变通方案。

    1、安装 kdoc 插件

    安装 kdoc-generator 插件后即可自动生成带参数的方法注释。

    20220224_090436.png

    kdoc 生成的注释如下:

    /**
     * TODO
     * @param billNO
     * @param pcqy
     * @param currUser
     * @return
    fun saveData(billNO: String, pcqy: String, currUser: SysUser): Any {
    }

    2、修改上面的模板

    将之前定义的 * 模板适用范围 去掉 kotlin ,即 kotlin 中不再使用上面定义的模板,如果一开始就没有勾选 kotlin 则忽略此步。

    3、新增加模板 TODO

    方法不再赘述,和之前的一样,直接看图。

    20220224_093029.png

    模板文本:

    $name$$END$
    * @author xinggang
    * @create $date$

    4、使用

    这样就 OK 了,使用时先按 /** 回车 输入 kdoc 的默认注释,这时光标停留在 TODO 位置,这时再直接按 Tab 就调用 TODO 模板补全内容了。

    效果动图:

    20220224_92647.gif

    四、日期格式化

    默认日期格式为 yyyy/MM/dd ,自定义可使用 groovy 语法:

    groovyScript("import java.text.SimpleDateFormat;return (new SimpleDateFormat(\"yyyy-MM-dd\")).format(new Date())")

    完🏝️。