本项目为基于 YMP - 轻量级 Java 应用开发框架 开发的小伙伴儿们提供的一系列 Maven 插件工具,辅助快速生成代码与服务等。
<plugin>
<groupId>net.ymate.maven.plugins</groupId>
<artifactId>ymate-maven-plugin</artifactId>
<version>1.0.2</version>
</plugin>
mvn ymate:<命令> -D<参数1>=<值1> -D<参数n>=<值n>
命令 | 说明 |
---|---|
apidocs |
接口文档生成器 |
configuration |
配置体系目录结构生成器 |
crud |
CRUD 代码生成器 |
dbquery |
数据库 SQL 查询 |
decrypt |
字符串解密 |
encrypt |
字符串加密 |
entity |
数据实体代码生成器 |
interceptor |
拦截器类生成器 |
module |
模块代码生成器 |
tomcat |
Tomcat 服务配置生成器 |
validator |
验证器类生成器 |
接口文档生成器。
参数名称 | 必须 | 说明 |
---|---|---|
packageNames | 否 | 扫描包名称集合,默认为 ${project.groupId} ,多个用 , 分隔 |
format | 否 | 输出格式,默认值:markdown ,取值范围: html 、gitbook 、postman 、json 、 markdown |
outputDir | 否 | 输出路径,默认为当前项目基准路径 |
language | 否 | 自定义语言,默认值:空,系统语言环境 |
overwrite | 否 | 是否覆盖已存在的文件,默认值:false |
ignoredRequestMethods | 否 | 忽略的请求方法名称集合,如:options |
mvn ymate:apidocs -Dformat=postman -Doverwrite=true
配置体系目录结构生成器。
参数名称 | 必须 | 说明 |
---|---|---|
homeDir | 否 | 配置体系根路径,默认为当前项目基准路径,若指定路径不存在则创建 |
projectName | 否 | 项目名称,默认值:空 |
moduleNames | 否 | 模块名称集合,默认值:空,多个用 , 分隔 |
pluginNames | 否 | 插件名称集合,默认值:空,多个用 , 分隔 |
repair | 否 | 是否执行缺失文件修复(除目录结构自动补全外,该参数将对缺失的文件进行补全),默认值:false |
mvn ymate:configuration -DprojectName=default -DmoduleNames=webapp,demo -Drepair=true
CRUD 代码生成器。
通过规则配置文件自动生成控制器(Controller)、存储器(Repository)和页面视图(UI)等相关代码。
参数名称 | 必须 | 说明 |
---|---|---|
file | 否 | 规则配置文件,默认值:misc/crud.json |
action | 否 | 指定本次生成哪些代码,默认为控制器和存储器,取值范围:controller 、repository 、ui 、ui-cdn |
filter | 否 | 指定本次仅生成列表中API或表的代码,默认值:空,多个名称之间用 , 分隔 |
fromDb | 否 | 是否通过数据库表结构生成规则配置文件,默认值:false |
simple | 否 | 是否生成规则配置文件样例,默认值:false |
apidocs | 否 | 是否使用 API 文档注解,默认值:false |
test | 否 | 是否生成单元测试代码,默认值:false |
language | 否 | 自定义语言,默认值:空,系统语言环境 |
- 生成规则配置文件样例
mvn ymate:crud -Dsimple=true
- 根据数据库表结构生成规则配置文件
mvn ymate:crud -DfromDb=true
- 代码生成
mvn ymate:crud
数据库 SQL 查询。
参数名称 | 必须 | 说明 |
---|---|---|
sql | 是 | SQL 查询语句(必须是 SELECT 语句) |
dataSource | 否 | 指定数据源名称,默认值:default |
format | 否 | 结果集输出格式,可选值:table 、markdown 、csv ,默认值:table |
dateColumns | 否 | 指定需转换为日期格式的字段名,默认值:空,多个名称之间用 , 分隔 |
page | 否 | 查询页号,默认值:0 |
pageSize | 否 | 分页大小,默认值:20 |
mvn ymate:dbquery -Dsql="select * from ym_user" -Dpage=1 -Dformat=csv
字符串解密。
参数名称 | 必须 | 说明 |
---|---|---|
content | 是 | 待解密字符串 |
passkey | 否 | 自定义密钥,默认值:空 |
implClass | 否 | 自定义密码处理器接口实现类名,默认值:空 |
mvn ymate:decrypt -Dcontent=D3ytOQrD63BlKGDMJnaYsQ==
字符串加密。
参数名称 | 必须 | 说明 |
---|---|---|
content | 是 | 待加密字符串 |
passkey | 否 | 自定义密钥,默认值:空 |
implClass | 否 | 自定义密码处理器接口实现类名,默认值:空 |
mvn ymate:encrypt -Dcontent=abc12345678
数据实体代码生成器。
更详尽的说明请参考文档:JDBC - 自动生成实体类
参数名称 | 必须 | 说明 |
---|---|---|
dev | 否 | 是否使用开发模式,默认为 false |
overwrite | 否 | 是否覆盖已存在的文件,默认为 false |
cfgFile | 否 | 加载指定的框架初始化配置文件,默认为空 |
dataSource | 否 | 指定数据源名称,默认为 default |
view | 否 | 是否为视图,默认为 false |
showOnly | 否 | 是否仅在控制台输出结构信息(不生成任何文件),默认为 false |
format | 否 | 控制台输出格式,配合 showOnly 使用可选值: table 、markdown 、csv ,默认为 table |
beanOnly | 否 | 是否仅生成 JavaBean(非实体类),默认为 false |
apidocs | 否 | 是否使用 @ApiProperty 文档注解,配合 beanOnly 使用,默认为 false |
mvn ymate:entity
拦截器类生成器。
参数名称 | 必须 | 说明 |
---|---|---|
name | 是 | 拦截器名称 |
packageName | 否 | 拦截器包名,默认值:${project.groupId} |
mvn ymate:interceptor -Dname=Demo
模块代码生成器。
参数名称 | 必须 | 说明 |
---|---|---|
name | 是 | 模块名称 |
packageName | 否 | 模块包名,默认值:${project.groupId} |
projectName | 否 | 工程构件标识,默认值:${project.artifactId} |
mvn ymate:module -Dname=Demo
Tomcat 服务配置生成器。
参数名称 | 必须 | 说明 |
---|---|---|
serviceName | 是 | 服务名称(若在 Windows 环境下同时为注册服务名称) |
catalinaHome | 是 | Tomcat 软件包安装路径,默认值:${env.CATALINA_HOME} |
catalinaBase | 否 | 生成的服务存放的位置,默认为当前路径 |
hostName | 否 | 主机名称,默认值:localhost |
hostAlias | 否 | 别名,默认值:空 |
tomcatVersion | 否 | 指定 Tomcat 软件包的版本,默认值:8 ,目前支持: 6 、7 、8 、9 、10 |
serverPort | 否 | 服务端口,默认值:8005 |
connectorPort | 否 | 容器端口,默认值:8080 |
redirectPort | 否 | 重定向端口,默认值:8443 |
ajp | 否 | 是否启用 AJP 配置,默认值:false |
ajpHost | 否 | AJP 主机名称,默认值:localhost |
ajpPort | 否 | AJP 端口,默认值:8009 |
mvn ymate:tomcat -DserviceName=DemoServer -DcatalinaHome=/Users/.../apache-tomcat-8.5.75
生成的文件说明:
文件名称 | 说明 |
---|---|
conf/server.xml |
Tomcat 服务配置文件 |
vhost.conf |
与 Nginx 和 Apache Server 整合所需配置 |
bin/install.bat |
Windows 环境下服务安装脚本 |
bin/manager.bat |
Windows 环境下启动 Tomcat 服务管理器脚本 |
bin/shutdown.bat |
Windows 环境下服务停止脚本 |
bin/startup.bat |
Windows 环境下服务启动脚本 |
bin/uninstall.bat |
Windows 环境下服务卸载脚本 |
bin/manager.sh |
Linux 环境下控制服务的启动或停止等操作脚本 |
webapps/ROOT/index.jsp |
默认首页文件 |
Linux 下服务的启动和停止:
-
为脚本添加执行权限:
chmod +x manager.sh
-
启动服务:
./manager.sh start
-
停止服务:
./manager.sh stop
验证器类生成器。
参数名称 | 必须 | 说明 |
---|---|---|
name | 是 | 验证器名称 |
packageName | 否 | 验证器包名,默认值:${project.groupId} |
mvn ymate:validator -Dname=Demo
YMP 不仅提供便捷的 Web 及其它 Java 项目的快速开发体验,也将不断提供更多丰富的项目实践经验。
感兴趣的小伙伴儿们可以加入官方 QQ 群:480374360,一起交流学习,帮助 YMP 成长!
如果喜欢 YMP,希望得到你的支持和鼓励!
了解更多有关 YMP 框架的内容,请访问官网:https://ymate.net