# wf-codegen
**Repository Path**: wfblc/wf-codegen
## Basic Information
- **Project Name**: wf-codegen
- **Description**: java+vue前后端代码生成工具
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2025-06-29
- **Last Updated**: 2026-03-09
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 代码生成工具使用教程
## 1. 工具简介
wf-codegen是一个基于Java和FreeMarker的代码生成工具,能够根据数据库表结构自动生成后端(Entity、Mapper、Service、Controller)和前端(API、列表页、表单页)代码,提高开发效率。
## 2. 环境要求
- JDK 8+
- Maven 3.6+
- MySQL 5.7+/8.0+
- 数据库连接权限
## 3. 项目结构
```
wf-codegen/
├── src/main/java/com/codegen/
│ ├── CodeGenerator.java // 核心生成器
│ ├── CodeGeneratorUtils.java // 工具类
│ ├── Main.java // 程序入口
│ └── DatabaseMetaReader.java // 数据库元数据读取
├── src/main/resources/templates/
│ ├── backend/ // 后端模板
│ └── frontend/ // 前端模板
└── generated-code/ // 生成代码输出目录
```
## 4. 快速开始
### 4.1 配置数据库连接
修改方法中的数据库参数:
```java
String dbName = "你的数据库名";
String url = "jdbc:mysql://数据库地址:端口/" + dbName + "?useInformationSchema=true";
String userName = "数据库用户名";
String password = "数据库密码";
```
### 4.2 构建项目
```bash
mvn clean package
```
### 4.3 运行工具
```bash
java -jar target/wf-codegen-1.0.0.jar
```
## 5. 生成代码结构
### 5.1 后端代码(generated-code/backend)
- entity: 实体类
- dto: 数据传输对象
- mapper: MyBatis接口
- service: 服务接口及实现
- controller: REST接口
- resources/mapper: MyBatis XML文件
### 5.2 前端代码(generated-code/frontend)
- api: API调用文件
- views: 页面组件(列表页、表单页)
## 6. 自定义模板
1. 模板文件位于
2. 修改现有模板或添加新模板
3. 支持的模板变量:
- table: 表元数据对象
- entityName: 实体类名
- lowEntityName: 小写开头实体名
- package: 基础包名
- CodeGeneratorUtils: 工具类方法
## 7. 工具类功能
提供:
- 数据库类型转Java类型(convertType)
- 下划线转驼峰命名(toCamelCase)
## 8. 依赖说明
- FreeMarker: 模板引擎
- MySQL Connector: 数据库连接
- MyBatis-Plus Generator: 代码生成基础
- Lombok: 简化Java代码
## 9. 注意事项
- 确保数据库用户有足够权限读取表结构
- 模板修改后无需重新编译,直接运行即可生效
- 生成代码前建议备份现有文件