生成代码
Project description
gencode
gencode 代码生成工具,可以连接MySQL\Oracle\postgresql\sqlite根据jinjan2模板生成出自已想要的代码
安装
pip install gencode
使用方式
在模板文件所在的目录里执行
gendcode -c config.yml
配置文件
config.yml
# 模板文件地址
#templatePath: '/data'
dbConf:
# MySQL / Oracle / Sqlite / postgresql
db_type: MySQL
db_name: admin
user: admin
pwd: Vile123adMin_#
host: 127.0.0.1
# 多表使用;分割
table_name: sys_operator
# Java
dataTypeMapping:
varchar|text: String
decimal(10,2): int
# Python
#dataTypeMapping:
# default:
# varchar(*)|text: str
myself:
author: liuzhuo
mail: liuzhuogood@foxmail.com
sign: 我的签名
jinja2:
variable_start_string: '{{'
variable_end_string: '}}'
模板变量
| 变量 | 示例 | 说明 |
|---|---|---|
| XX_TABLE_NAME | SYS_BULLETIN_FILE | 表名变形 |
| xx_table_name | sys_bulletin_file | 表名变形 |
| XxTableName | SysBulletinFile | 表名变形 |
| xxTableName | sysBulletinFile | 表名变形 |
| TableName | BulletinFile | 表名变形 |
| tableName | bulletinFile | 表名变形 |
| table_name | bulletin_file | 表名变形 |
| xx | sys | 表名变形 |
| XX | SYS | 表名变形 |
| date | 2021-10-11 | 当前日期 |
| datetime | 2021-10-11 10:10:10 | 当前时间 |
| author | liuzhuo | 名称 |
| liuzhuogood@foxmail | 邮箱 | |
| sign | 自动生成代码 | 签名 |
| comment | 文件表 | 表备注 |
| columns | <参考columns集合> | 列集合 |
columns集合
| 关键字 | 说明 |
|---|---|
| column_name | 列名变形 |
| COLUMN_NAME | 列名变形 |
| ColumnName | 列名变形 |
| ColumnName | 列名变形 |
| columnname | 列名变形 |
| COLUMNAME | 列名变形 |
| comment | 列名备注 |
| dataType | 列名 的类型,可以通过配置映射 |
| is_pk | 1:是主键 0:不是主键 |
方法
- ljust(str,[width],[fill_char]) : 左补全字符
- rjust(str,[width],[fill_char]) : 右补全字符
模板
模板可以是文件目录,也可是文件,如果是文件为了区分必须以.gcode后缀命名,比如:
{{XxTableName}}Po.java.gcode
package {{xx}}
/**
{{comment}} 实体类
author: {{author}}
mail: {{mail}}
*/
public class {{TableName}}{
{% for c in columns %}
private {{c.dataType}} {{c.columnName}}; //{{c.comment}}
/**{{c.comment}}*/
public {{c.dataType}} get{{c.ColumnName}}(){return {{c.columnName}};};
/**{{c.comment}}*/
public void set{{c.ColumnName}}({{c.dataType}} {{c.columnName}}){this.{{c.columnName}}={{c.columnName}};};
{% endfor %}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
genCode-0.0.33.tar.gz
(8.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
genCode-0.0.33-py3-none-any.whl
(11.1 kB
view details)
File details
Details for the file genCode-0.0.33.tar.gz.
File metadata
- Download URL: genCode-0.0.33.tar.gz
- Upload date:
- Size: 8.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db2523f3b5cce736bd95b4418060445c05ed35000988049494359c0ede25b11e
|
|
| MD5 |
395667233e262df27cf03b99b0650d6c
|
|
| BLAKE2b-256 |
450b6c436cdd341d164cd3821bde1a3bca3206e777010e2de36dbd0c6925e679
|
File details
Details for the file genCode-0.0.33-py3-none-any.whl.
File metadata
- Download URL: genCode-0.0.33-py3-none-any.whl
- Upload date:
- Size: 11.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
764ddbd600035df907e0426bbcb85732f5d330f76ab23739458abca7973b81cf
|
|
| MD5 |
093efbb2cdddeed14e5bbac1ab8c5b01
|
|
| BLAKE2b-256 |
882ff76b2eee26f6072f77dfdaadc1fc44fb834d8cf218500d04c2d93db2e6f0
|