本项目为基于 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=trueCRUD 代码生成器。
通过规则配置文件自动生成控制器(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=DemoTomcat 服务配置生成器。
| 参数名称 | 必须 | 说明 |
|---|---|---|
| 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=DemoYMP 不仅提供便捷的 Web 及其它 Java 项目的快速开发体验,也将不断提供更多丰富的项目实践经验。
感兴趣的小伙伴儿们可以加入官方 QQ 群:480374360,一起交流学习,帮助 YMP 成长!
如果喜欢 YMP,希望得到你的支持和鼓励!
了解更多有关 YMP 框架的内容,请访问官网:https://ymate.net
