1 Star 1 Fork 615

david / EasyCode

forked from van / EasyCode 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

EasyCode

EasyCode能做什么?

EasyCode是基于IntelliJ IDEA Ultimate版开发的一个代码生成插件,主要通过自定义模板(基于velocity)来生成各种你想要的代码。通常用于生成Entity、Dao、Service、Controller。如果你动手能力强还可以用于生成HTML、JS、PHP等代码。理论上来说只要是与数据有关的代码都是可以生成的。

使用环境

IntelliJ IDEA Ultimate版(172+)

支持的数据库类型

因为是基于Database Tool开发,所有Database Tool支持的数据库都是支持的。

包括如下数据库:

  1. MySQL
  2. SQL Server
  3. Oracle
  4. PostgreSQL
  5. Sqlite
  6. Sybase
  7. Derby
  8. DB2
  9. HSQLDB
  10. H2

当然支持的数据库类型也会随着Database Tool插件的更新同步更新。

功能说明:

  • 支持多表同时操作
  • 支持同时生成多个模板
  • 支持自定义模板
  • 支持自定义类型映射(支持正则)
  • 支持自定义扩展属性
  • 支持对表属性进行手动配置
  • 所有配置项目支持分组模式,在不同项目(或选择不同数据库时),只需要切换对应的分组,所有配置统一变化。

安装方法

  • 该插件正在添加到官网插件仓库中,现在只能手动安装,添加完毕后直接在搜索框搜索安装。
  • 手动安装方法如下:
  1. 点击这里 ,下载最新的发行版本。
  2. 然后进入到File->Settings->Plugins,点击Install plugin from disk... 输入图片说明
  3. 找到你下载好的安装包即可安装
  4. 安装完后重启即可

仓库直接安装

由于官网审核较慢,通常会比发行版慢两天更新

安装方法:手写点击Browse repositories... 搜索 Easy Code

注意:请认准5颗星的Easy Code,两颗星的是我之前发布的老版本(由于账号丢失,不再更新维护)

输入图片说明

使用方法

  1. 简单的生成代码

首先在IDEA右边找到数据库工具,点击加号添加好对应的数据源

接着在要生成表上面右键,就可以看到EasyCode菜单,以及子菜单(Generate Code,Config Table)生成代码与配置表。

输入图片说明

  1. 多表代码生成 可以按住Ctrl键同时选择多张表进行操作。

注意:多选的情况下配置信息取首选表(选中的第一张表)。

输入图片说明

统一配置解释:勾选代表所有选中表统一用这个配置去生成代码,否则只有没配置过表的使用这个配置生成,已配置的使用自己的配置。

(注意:没配置过的表在生成代码后都会复用该配置,成为已配置的表)

添加类型映射

在Other Seeting中可以看到如下配置信息,上面部分是分组信息,可以复制分组,删除分组。

下面的表格是类型映射信息:左边是数据库类型(支持正则),右边是对应的java类型(必须为全称)。可以新增删除

输入图片说明

模板配置说明

采用velocit语法编写

输入图片说明

说明文档:

属性
$packageName 选择的包名(String)
$author 设置中的作者(String)
$encode 设置的编码(String)
$modulePath 选中的module路径(String)
$projectPath 项目路径(String)
对象
$tableInfo 表对象(TableInfo)
    obj 表原始对象(DasColumn,下面有贴图)
    name 表名(转换后的首字母大写)(String)
    comment 表注释(String)
    fullColumn 所有列(List<ColumnInfo>)
    pkColumn 主键列(List<ColumnInfo>)
    otherColumn 其他列(List<ColumnInfo>)
    savePackageName 保存的包名(String)
    savePath 保存路径(String)
    saveModelName 保存的model名称(String)
columnInfo 列对象(ColumnInfo)
    obj 列原始对象(DbTable,下面有贴图)
    name 列名(首字母小写)(String)
    comment 列注释(String)
    type 列类型(类型全名)(String)
    ext 附加字段(Map类型)(Map<String,Object>)
$tableInfoList 所有选中的表(List<TableInfo>)
$importList 所有需要导入的包集合(Set<String>)
回调
&callback
    setFileName(String) 设置文件储存名字
    setSavePath(String) 设置文件储存路径,默认使用选中路径
工具
$tool
    firstUpperCase(String) 首字母大写方法
    firstLowerCase(String) 首字母小写方法
    getClsNameByFullName(String) 通过包全名获取类名
    getJavaName(String) 将下划线分割字符串转驼峰命名(属性名)
    getClassName(String) 将下划线分割字符串转驼峰命名(类名)
    append(... Object) 多个数据进行拼接
$time
    currTime(String) 获取当前时间,指定时间格式(默认:yyyy-MM-dd HH:mm:ss)

输入图片说明

输入图片说明

高级货在这里

在这里添加自定义属性,这些属性都是可以动态配置的,而且还可以在模板中获取到这个属性。

这里的关系都是一一对应的,例如:如果配置了disabled属性就可以在columnInfo.ext中拿到你设置的值(如:columnInfo.ext.disabled)

输入图片说明

配置信息储存在哪里?

使用版本控制的开发人员可加这些信息不要添加至忽略(以便共享配置信息)

软件处于1.0版难免会出现问题,手动修改这里可能可以解决一些问题,请谅解。

输入图片说明

:sunglasses: 更多玩法就需要自己摸索了,By makejava。

The MIT License (MIT) Copyright (c) 2018 makejava Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

基于IntelliJ IDEA开发的代码生成插件,支持自定义任意模板(Java,html,js,xml)。只要是与数据库相关的代码都可以通过自定义模板来生成。支持数据库类型与java类型映射关系配置。支持同时生成生成多张表的代码。每张表有独立的配置信息。完全的个性化定义,规则由你设置。 展开 收起
Java
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/davidplanck/EasyCode.git
git@gitee.com:davidplanck/EasyCode.git
davidplanck
EasyCode
EasyCode
master

搜索帮助