加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

codeGenerator

介绍

通过配置数据库信息,自动生成包含CRUD操作的spring工程。

打包方法

JDK: 8+

在根目录下运行打包命令:

./gradlew clean shadowJar

运行命令后,fatJar在目录build/libs目录下

shirleylee@Shirley codeGenerator % ./gradlew clean shadowJar
Starting a Gradle Daemon, 1 busy and 1 stopped Daemons could not be reused, use --status for details

BUILD SUCCESSFUL in 11s
4 actionable tasks: 3 executed, 1 up-to-date
shirleylee@Shirley codeGenerator % ls -lh build/libs 
total 17408
-rw-r--r--@ 1 shirleylee  staff   7.8M Sep  2 21:22 codeGenerator-1.0-SNAPSHOT-all.jar

使用方法

  1. 编辑配置文件generator.yaml, 可以参考src/main/resources/generator.yaml, 配置说明如下:
author: Shirley
#### 代码生成路径
path: .\code
#### 工程名称
projectName: testCodeGen
#### project group/ 包路径
packageName: com.pcitc.open
#### 是否覆盖已存在文件
fileOverride: true

#### 数据库配置。当前只支持mysql。
db:
  url: jdbc:mysql://192.168.246.129:13306/db_hr_0
  username: rw_user
  password: rw123456

#### 数据库table列表
tables:
  - t_employee
  - t_salary
  - t_sub_company

当前配置只支持mysql。如果是其他关系型数据库,请自行修改

  • build.gradle文件中的数据库依赖包,用于codeGenerator链接数据库
  • src/main/resources/ftls/build.gradle.ftl模板中的数据库依赖
  • src/main/resources/ftls/application.yaml.ftl模板中的配置项:spring.datasource.driver-class-name
  1. 将配置文件generator.yaml拷贝到codeGenerator-1.0-SNAPSHOT-all.jar同目录下
  2. 运行命令生成代码:
PS D:\Workspace\shirley\codeGenerator\build\libs> java -jar .\codeGenerator-1.0-SNAPSHOT-all.jar
Hello Shirley!
directory.getAbsolutePath() = D:\Workspace\shirley\codeGenerator\build\libs\generator.yaml
CodeGenConfig(author=Shirley, path=.\code, projectName=testCodeGen, packageName=com.pcitc.open, fileOverride=true, db=CodeGenConfig.Db(url=jdbc:mysql://192.168.246.129:13306/db_hr_0, username=rw_user, password=rw123456), tables=[t_employee, t_salary, t_sub_company])

... ...

Generating .\code\testCodeGen\src\main\java\com\pcitc\open\entity\Employee.java
Generate java code to Path: .\code done.

代码生成完成,下面可以愉快的使用生成的代码了。如下是生成代码的目录结构:

PS D:\Workspace\shirley\codeGenerator\build\libs\code> tree .\testCodeGen\ /F
Folder PATH listing
Volume serial number is 3C06-2571
D:\WORKSPACE\SHIRLEY\CODEGENERATOR\BUILD\LIBS\CODE\TESTCODEGEN
│  .gitignore
│  build.gradle
│  gradlew
│  gradlew.bat
│  settings.gradle

├─gradle
│  └─wrapper
│          gradle-wrapper.jar
│          gradle-wrapper.properties

└─src
    └─main
        ├─java
        │  └─com
        │      └─pcitc
        │          └─open
        │              │  ApplicationStarter.java
        │              │
        │              ├─controller
        │              │      BaseController.java
        │              │      EmployeeController.java
        │              │      SalaryController.java
        │              │      SubCompanyController.java
        │              │
        │              ├─dao
        │              │      BaseDao.java
        │              │      EmployeeDao.java
        │              │      SalaryDao.java
        │              │      SubCompanyDao.java
        │              │
        │              ├─entity
        │              │      Employee.java
        │              │      Salary.java
        │              │      SubCompany.java
        │              │
        │              └─service
        │                  │  CrudService.java
        │                  │  EmployeeService.java
        │                  │  SalaryService.java
        │                  │  SubCompanyService.java
        │                  │
        │                  └─impl
        │                          CrudServiceImpl.java
        │                          EmployeeServiceImpl.java
        │                          SalaryServiceImpl.java
        │                          SubCompanyServiceImpl.java

        └─resources
                application.yaml

高级功能

如果不想用代码里定义的模板,可以自定义模板生成代码。

  1. 模板文件路径为:src\main\resources\ftls,可以将期望的模板添加到该路径
  2. 修改com.shirley.constants.TemplateFileEnum代码,添加模板信息
  3. 修改com.shirley.MaingenCommonCodegenTableCode函数,将添加的模板类型添加到GenJavaCodeTask的参数里。

空文件

简介

Java代码生成器。通过配置数据库信息,自动生成生成Entity、Dao、Service、Controller相关代码的spring工程。 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化