0
点赞
收藏
分享

微信扫一扫

idea的文件生成模板修改

小桥流水2016 2022-04-15 阅读 79

文章目录


前言

idea创建文件时会根据模板自动生成代码
使用lombok的用户可能会感觉麻烦,每次生成的代码上面都需要自己手动添加@Data或者@Accessors
本文就教大家怎么修改idea默认的模板


一、velocity是什么?

idea使用的模板是velocity
用户指南

二、使用步骤

1.设置

Settings -> Editor -> File and Code Templates -> File

2.修改模板

以Class模板为例
可以在public上面添加注解

@Data
@Accessors(chain = true)

包名下面别忘记引入

import lombok.Data;
import lombok.experimental.Accessors;

下面是我自己的Class模板,可以参考下

#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end

#if (!${NAME.endsWith("Controller")} && !${NAME.endsWith("Test")})
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;#end
#if (${NAME.endsWith("Controller")})
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.RequestMapping;
#end

#parse("File Header.java")
#if (!${NAME.endsWith("Controller")} && !${NAME.endsWith("Test")})
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)#end
#if (${NAME.endsWith("Controller")})
@RestController
@RequestMapping("/${NAME.toLowerCase().replace('controller', '')}")
@AllArgsConstructor
public class ${NAME} extends BaseController {
}
#elseif (${NAME.endsWith("Test")})
public class ${NAME} {
}
#else
public class ${NAME} extends BaseEntity {
}
#end

File Header.java

/**
 * ${NAME}
 * @author ${USER}
 * @date ${DATE}
 */

扩展

支持自定义变量,比如插入${version},每次创建对应文件时除了输入名字外,还会额外弹出对话框输入对应的version插入到指定位置。
但是velocity的#set()设置的变量貌似不行,引用的时候会当成字符串解析,也有可能是我使用方式不对,欢迎指正。

举报

相关推荐

0 条评论