lemur-gen 指南
V1.0
介绍
1. 使用手册
1.1 启动Lemur-Gen
1.2 配置基础数据
1.3 新建,编辑模板
1.4 代码生成
1.5 配置表管理
1.6 基础字段
2.模板编写
参数介绍
2.1 参数介绍
2.1.1 GenerationEntity
2.1.2 GenBeanEntity
我们应该怎么编写我们的模板
beetl模板编写
介绍
现在越来越智能,越来越自动化,我们代码也也要与时俱进,简单重复的工作就让他再见 项目的目标是提供在线的代码生成和代码分享,推荐使用线上版本生成和分享代码, 避免本地搭建和项目更新的麻烦 我们不会关注用户信息,只是提供一个在线平台,不会备份你们私密数据,其实也没啥数据,哈哈 官网:http://www.afterturn.cn/ 邮箱: qrb.jueyue@gmail.com QQ群: 364192721 地址: [http://gen.afterturn.cn](http://gen.afterturn.cn) 功能 --------- |功能|子功能|进度|开始时间|版本支持| |----|----|----|----|----| |数据库管理| |80%|2017-9-01|1.0| | | CURD|100%|2017-9-01|1.0| | | 密码加密| | | | |表管理| |0%| | | | |CURD| | | | | |数据库生成表| | | | | |SQL生成表| | | | | |JSON生成表| | | | | |XML生成表| | | | |模板管理| |80%|2017-9-01|1.0| | | CURD|100%|2017-9-01|1.0| | |语法高亮|100%|2017-9-01|1.0| | |分享| | | | |模板组管理| |100%|2017-9-01|1.0| | | CURD|100%|2017-9-01|1.0| |参数管理| |100%|2017-9-01|1.0| | | CURD|100%|2017-9-01|1.0| |代码生成| |30%|2017-9-01|1.0| | | Mysql|100%|2017-9-01|1.0| | | Oracle| | | | | | SqlServer| | | | | | PostgreSQL| | | |
1. 使用手册
1.1 启动Lemur-Gen
Lemur-Gen 目前的底层是使用 [guns](http://git.oschina.net/naan1993/guns),本来打算自己写套基础,后来想想还是直接拿来用算了,guns这个把基础功能都给做了,我这个代码生成也不会用到啥复杂的底层业务,界面也算漂亮,走起,具体的底层大家可以参考guns的介绍,这里就不多言了. 启动Lemur-Gen和启动guns也差不多 **1.下载项目或者clone** ![下载](https://static.oschina.net/uploads/img/201709/15103559_lOKw.png "下载") **2.把项目导入到eclipse或者idea** ![输入图片说明](https://static.oschina.net/uploads/img/201709/15103705_0hwn.png "导入") **3.修改下application.yml 的数据库链接** ![输入图片说明](https://static.oschina.net/uploads/img/201709/15103744_4Kyu.png "application.yml") **4.导入sql** ![输入图片说明](https://static.oschina.net/uploads/img/201709/15104152_giXr.png "sql") **5.运行启动** ![输入图片说明](https://static.oschina.net/uploads/img/201709/15105053_2NV0.png "启动") **6.登录 账户 admin 密码 111111** ![ce](https://static.oschina.net/uploads/img/201709/15105805_oUlY.png "页面") 这样就可以开始玩耍我们的项目
1.2 配置基础数据
大家都是程序员,就不介绍啥CURD的套路,这里讲下我们必须的一些数据配置和他们对应的功能 目前阶段 **第一步就是配置数据库链接,就是你本地的开发库地址** 目前只支持mysql ![输入图片说明](https://static.oschina.net/uploads/img/201709/15110531_A8Ue.png "数据库") **第二步就是建立模板组,主要是方便大家归类自己的模板,生成的时候方便选择,不同项目可以使用不同的模板组,避免搞混了** ![输入图片说明](https://static.oschina.net/uploads/img/201709/15110729_X6ZE.png "模板组") **第三部就是建立自己的参数配置,避免到生成的时候重复填写**, 比如我自己项目的参数配置 ![输入图片说明](https://static.oschina.net/uploads/img/201709/15110823_VwGA.png "参数配置") 基础的参数就这么几个,主要是避免大家重复填写和归集项目的类型
1.3 新建,编辑模板
模板是项目的核心,这里介绍下模板的基础通用以及其意义 先看下模板编辑的界面 ![输入图片说明](https://static.oschina.net/uploads/img/201709/15111214_1I0A.png "模板") - 模板名称不许多言 - 描述 也是正常含义 - 文件名称 这个是生成时候的真是文件名称 规则是 %s内容.后缀 - 生成的时候会用 类名替换 %s - %sController.java 类名是Test生成的文件就是TestController.java - Lemur%sDao.java 类名是Test生成的文件就是LemurTestDao.java - 路径 是文件的项目路径 在生成的时候包后面的下一层 比如controller 生成的就是就会建一个controller的包 - 组 就是模板归类 - 类型 目前支持 beetl和freemark - 语言 语法高亮没啥实际意义 - 模板 模板内容
1.4 代码生成
代码生成是个比较简单的界面 参数组可以选,选了自动填写,模板可以选多个 **目前类名最好自己填写** ![输入图片说明](https://static.oschina.net/uploads/img/201709/15112002_QcOm.png "生成")
1.5 配置表管理
模板的属性配置集合,我们可以DB导入,也可以sql解析,后期会支持其他模式 在配置界面你可以各种定制化配置,以方面模板的判断 先看下界面 ![输入图片说明](https://static.oschina.net/uploads/img/201710/27175918_si9N.png "在这里输入图片标题") 除了CURD 之外我们还可以DB导入,SQL导入,代码生成 **DB导入** ![输入图片说明](https://static.oschina.net/uploads/img/201710/27180007_3cHi.png "在这里输入图片标题") 点击生成 ![输入图片说明](https://static.oschina.net/uploads/img/201710/27173923_DDpH.png "在这里输入图片标题") 就会多条数据 然后我们可以编辑 ![输入图片说明](https://static.oschina.net/uploads/img/201710/27180151_XbfW.png "在这里输入图片标题") 这个是界面的属性,下面是字段的属性,字段属性比较多好在我们好多可以不填 ![输入图片说明](https://static.oschina.net/uploads/img/201710/27180302_Y23y.png "在这里输入图片标题") **SQL导入** 就是把我们的建表语句copy过来就可以了,后面还上一样 ![输入图片说明](https://static.oschina.net/uploads/img/201710/27174109_UeHH.png "在这里输入图片标题") 最后点击生成就可以了 ![输入图片说明](https://static.oschina.net/uploads/img/201710/27174217_sRvy.png "在这里输入图片标题")
1.6 基础字段
基础字段算是一直想出的功能了,在一个系统建设中不可避免每个表都有一些基础字段 比如 CREATE_USER_Id 创建用户,create_time 创建时间 这种,我们基本上每个表都要配置 同时他们可能不需要展示也不需要查找,同时每个表都有,这时候我们可以把他配置到基础字段里面 用来统一管理,当生成的时候就会使用基础字段里面的属性来进行赋值 当然只是在新增的时候赋值,修改是不是赋值的
2.模板编写
参数介绍
2.1 参数介绍
目前参数就两个对象一个是GenerationEntity,生成的通用参数,一个是GenBeanEntity我们的对象参数 下面就这连个对象分别介绍下属性
2.1.1 GenerationEntity
GenerationEntity 的属性介绍
属性
默认值
功能
codePackage
代码路径
htmlPackage
html包名,如果为空,使用codePackage
jsPackage
js包名,如果为空,使用codePackage
name
功能名称,比如系统管理
tableName
数据库表名
idName
id
主键
idType
identity
主键类型
entityName
实体名称 比如 Test
date
生成时间
author
作者
2.1.2 GenBeanEntity
GenBeanEntity 的介绍,字段属性不一定全都支持
属性
子属性
默认值
类型
功能
tableName
String
数据库表名
name
String
驼峰计算出来的类名
chinaName
String
数据库注释表名
comment
String
数据库注释
fieldName
数据库字段名称
name
字段名称
chinaName
字段中文名称
comment
数据库字段注释
fieldType
数据库字段类型
type
字段类型
charmaxLength
字符串允许输入最大长度
precision
精度
scale
小数点
nullable
是否允许为空 Y/N
我们应该怎么编写我们的模板
其实项目的核心就是编写我们自己的模板 把我们的自己的项目梳理清楚,得到一个基础的一套代码,想现在java主流的无非就是这么几个 controller dao Service,ServiceImpl mapper.xml model 外加几个界面 list,list.js add,edit,detail,info.js 就这些,生成之后加上权限配置 auth.sql 我们就可以执行下权限sql,重启下就可以访问我们新生成的代码了 ----------------------------- 项目的Resource的template下面有我写的几个基础的模板大家可以参考这写出自己的模板
beetl模板编写