代码生成器的应用.docx
- 文档编号:2136453
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:16
- 大小:724.74KB
代码生成器的应用.docx
《代码生成器的应用.docx》由会员分享,可在线阅读,更多相关《代码生成器的应用.docx(16页珍藏版)》请在冰豆网上搜索。
代码生成器的应用
第4章代码生成器的应用
1操作步骤
◆使用ERMaster建立数据模型(1.1节)
◆说明:
也可以直接在数据库中建表,但是必须把下图中红框所标识的字段添加进去,ERMaster的具体配置见原文档
◆
◆我拿我的测试案例做参考,我新建了两张表:
分别是课程表,和课程性质表,他们是1对多的关系。
◆进入代码生成模块,添加业务表配置(1.2节)
◆表建完后,在代码生成模块中,添加业务表配置,选择你新建的那张表,按要求一步一步完成配置,test_course表配置如下图所示:
配置有问题的可以在业务表配置页面进行修改,需要注意的地方是,表中的字段对应java中的外键。
我这里的示例里面,课程表引用了课程性质的id作为外键,在添加课程的时候,我希望课程性质是一个下拉列表,因此在这里配置课程性质id的时候显示类型选择下拉选项
◆进入代码生成模块,添加生成方案配置并生成代码(1.3节)
按要求来生成即可,我将的生成方案截图如下,当你做了修改后需重新生成时,最好选择“是否替换现有文件”这样就可以覆盖原来生成的文件。
点击保存并生成代码,生成成功后页面上方会显示生成的文件在哪些目录下。
注意,如果是非maven项目可能需要将生成的代码拷贝到相应的目录。
另外需要将外键引用改为对象,默认生成的是字符串类型
◆根据生成代码的Controller,配置菜单和权限(1.4节)
菜单的配置可以参考系统上原有的菜单进行配置,我是在系统管理下面配置了一个教学管理,教学管理下面配置了课程管理和课程性质管理两个子菜单,菜单添加完成后需给账号配置权限,在角色管理里面,选择系统管理员,打开后选把新添加的菜单,点击保存即可
图中标识的部需要注意一下,代码生成后,页面上可能只显示部份字段,自己可以将其他字段补上。
生成过程中遇到的问题:
1.课程管理添加界面,课程性质不出来
解决方案:
1.在CourseController中添加——课程性质的service
2.添加如下代码
3.courseForm.jsp页面中修改如下:
课程列表显示界面,默认只显示课名,课程性质没有显示,在jsp页面添加后,仍显示空白,debug发现nature.name并不在查询字段中,修改CourseDao.xml,添加需要显示的字段
查询条件中默认只查询课程名,可根据需要添加其他查询字段,同时修改CourseDao.xml里面的
我另外添加了根据课程代码code,课程性质(下接列表)来查询
这样1对多的增删除改查的功能基本完成。
1.1数据模型
◆进行数据库设计,建表。
遇见字段需要存储中文字符的时候要用nvarchar,不要用varchar。
◆自己建立表模型时请拷贝一份“db/test/javamg.erm”文件,在此模型基础上建立自己的业务表即可。
1.1.1业务表必须包含的字段
红框内为必须有的字段:
1.1.2一对多必须包含的字段
红框内为必须有的字段:
1.1.3树结构必须包含的字段
红框内为必须有的字段:
1.1.4快速添加必须包含的字段
在test/javamg.erm文件中已内置两个字段组,分别是common和tree_field,在表编辑界面中可快速选择并添加相应字段,如下图:
1.2业务表配置
1.2.1第一步,选择表
1.2.2第二步,配置表
●表名:
物理表表名
●说明:
物理表表描述
●类名:
生成表关联的实体类名称
●父表表名:
关联父表的表名,外键:
当前表关联父表的主键,如果当前表为子表,需在此指定父表及外键。
外键字段需在字段列表中手动设置属性名(对象.主键,例如:
将userId修改为user.id)
●列名:
数据表定义的字段名称
●说明:
数据表定义的字段注释
●物理类型:
数据表定义字段类型
●Java类型:
实体对象的属性字段类型
●Java属性名称:
实体对象的属性字段(对象名.属性名|属性名2|属性名3,例如:
用户user.id|name|loginName,属性名2和属性名3为Join时关联查询的字段)
●主键:
是否是主键字段
●可空:
该字段是否可为空
●插入:
是否是插入字段,如果是则包含在insert语句里
●编辑:
是否是编辑字段,如果是则包含在update语句里
●列表:
是否是列表查询,如果是则包含在列表页的表格列里。
●查询:
是否是查询字段,如果是则包含在查询页的查询列表里。
●查询方式:
查询字段的查询方式,也就是where后的条件表达式,如:
字段1=字段2AND字段3>字段4AND字段5!
=字段6。
●字段生成方案:
表单中字段生成的样式,如:
input,select,treeselect,areatext等等
●字典类型:
如果字段生成方案为:
下拉框、复选框、单选框,则该字段必须指定一个字典类型,字典类型为字段管理中的字典类型。
●排序:
字段生成的先后顺序,升序。
1.3生成方案配置
●方案名称:
自定的方案名称,随意写即可。
●模板分类:
生成的模板,目前可生成如下模板:
增删改查(单表)、增删改查(一对多)、仅持久层(dao/entity/mapper)、树结构表(一体)。
●生成包路径:
生成哪个包下。
●生成模块名:
生成包下的模块名称,模块名称下进行分层。
●生成子模块名:
分层下的文件夹,可为空。
●生成功描述:
生成到类注释里。
●生成功能名:
生成功能提示,如TAB上、列表上、提示信息等。
●生成功能作者:
开发者姓名
●生成选项:
是否替换现有文件,提供重复生成,覆盖原有文件。
1.4菜单权限
◆根据控制器@RequestMapping及@RequiresPermissions添加菜单和权限标志
1.5生成示例
导入“db/gen/example_xx.sql”文件(默认已导入),将导入“业务表配置”、“生成方案配置”、“菜单权限”示例信息,生成代码后效果如下:
1.5.1菜单
1.5.2单表
1.5.3主子表
1.5.4树结构
1.6主子表(一对多)注意事项
一对多生成需要配置一个主表,和一个或多个子表。
子表配置需要指定父表表名和外键,如下:
表配置结果,如下:
生成方案中选择“增删改查(一对多)”,业务表表名选择“主表”,如下:
其它操作与单表生成相同。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 代码 生成器 应用