SQL转java,模板化离线java实体生成工具

2023-12-04 21:48:07 浏览数 (2)

一、使用&效果

下载工具包,或手动编译

如下包结构

代码语言:txt复制
├── config.json
├── sql2java
├── table.sql
└── templates
    ├── controller.tpl
    ├── dao.tpl
    ├── entity.tpl
    ├── mapper.tpl
    ├── request.tpl
    ├── service.tpl
    └── service_impl.tpl

运行

代码语言:txt复制
./sql2java table.sql config.json

输出

代码语言:shell复制
└── com
    └── yunx
        └── ldct
            ├── controller
            │   ├── ProductController.java
            │   └── UserController.java
            ├── dao
            │   ├── ProductDao.java
            │   └── UserDao.java
            ├── entity
            │   ├── ProductEntity.java
            │   └── UserEntity.java
            ├── mapper
            │   ├── ProductMapper.java
            │   └── UserMapper.java
            ├── model
            │   └── request
            │       ├── ProductRequest.java
            │       └── UserRequest.java
            └── service
                ├── ProductService.java
                ├── UserService.java
                └── impl
                    ├── ProductServiceImpl.java
                    └── UserServiceImpl.java

二、配置说明

代码语言:json复制
{
  "BasePackage": "项目包base, example com.yunx.base.abc", 
  "BasePath": "运行根路径,用于存放模板文件,配置文件,默认取当前路径",
  "Author": "作者信息",
  "ParentEntityName": "父实体名称, 如 BaseEntity",
  "ParentEntityFields": "父实体属性,输入后生成的实体不带父实体属性,如id,createTime",
  "TablePrefix": "表前缀,用于不期望作用于实体的标识, t_ -> t_user -> UserEntity ",
  "OutputFormat": "若配置true,这基于包路径组织java文件,方便拷贝到项目 "
}

三、内置函数

function

description

example

toLower

returns with all Unicode letters mapped to their lower case

{{.EntityName | toLower}}

toUpper

returns with all Unicode letters mapped to their upper case

{{.EntityName | toUpper}}

四、源码地址

https://github.com/yugj/sql2java

0 人点赞