Idea正则表达式一键替换注释,生成@ApiModelProperty(““)「建议收藏」

2022-07-29 20:34:16 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

平常日常开发中,返回给前端的vo对象在字段上需要加注释@ApiModelProperty(“xxx”),方便在前端同事在swagger文档看注释,一般我是domain对象生成之后,复制代码到vo对象里,然后再修改Java块注释为前端的注释@ApiModelProperty(“xxx”),那怎么从以下的代码注释转为@ApiModelProperty(“xxx”)注释呢?如果字段很多的话,一个一个写会比较耗时也枯燥,可以用正则表达式一键替。

代码语言:javascript复制
    /**
     * xxx
     */

(1)domain对象

代码语言:javascript复制
@Data
@Table
@Entity
public class FactoryOrder {

    /**
     * id
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    /**
     * 订单号
     */
    private String orderNum;

    /**
     * 订单创建时间
     */
    private Long createTime;

    /**
     * 员工工号
     */
    private String staffId;

    /**
     * 员工名称
     */
    private String staffName;

    /**
     * 订单总金额
     */
    private Integer orderPrice;

    /**
     * 订单类型
     */
    private String type;
}

(2)将字段复制到vo对象里

代码语言:javascript复制
@Data
public class FactoryOrderVO {

    /**
     * id
     */
    private Long id;

    /**
     * 订单号
     */
    private String orderNum;

    /**
     * 订单创建时间
     */
    private Long createTime;

    /**
     * 员工工号
     */
    private String staffId;

    /**
     * 员工名称
     */
    private String staffName;

    /**
     * 订单总金额
     */
    private Integer orderPrice;

    /**
     * 订单类型
     */
    private String type;
}

(3)快捷键ctrl r弹出替换代码功能,选中Regex(此项为使用正则表达式功能),接着在第一个框就可以写正则表达式了,然后第二个框写上要替换的内容即可,如图可以看出已经框出了正则表达式所匹配的内容了,接着点击Replace all即可全局替换为@ApiModelProperty(“xxx”)。

  • 动态图如下(可能有点慢,加载一下就好了 ^ ^):

(4)用到的正则表达式是这个:

代码语言:javascript复制
/**n ** ([^n]*)n **/

一般根据可以根据自己domain对象写的注释来写对应的正则表达式,我简单说一下我的这个正则表达式,这里最主要是用了正则的(pattern)语法,即表达式捕获注释的内容,最后通过1得到捕获的注释,写到@ApiModelProperty(“1”)来替换。 有关正则表达式入门的学习,可以看这个博主写:正则表达式30分钟入门教程,还有这个博主的总结:常用正则表达式,用的时候多看看就好了。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/129711.html原文链接:https://javaforall.cn

0 人点赞