1、设计目的:大批量程序代码生成。 为了达到这个目的,我们在做系统软件时,基本一个业务逻辑对应一张表。
2、实现手段:(1)从现有的数据库中导出所需要的所有表和字段到一个XML文件,不直接生成代码的原因是可以手工修改这个XML文件。当然,也可以直接手工建立一个XML逻辑文件. 这样就可以很灵活。
然后再跟据XML生成相应程序源代码!!
此外,还可以跟据XML文件生成数据库说明文当。
3、不足之处,表之间的父子关系等功能还没有,这点目前还得手工作代码。
一、根据数据库中生成的XML文件
<?xml version="1.0" encoding="GBK"?>
<database>
<databasename>inner_web</databasename>
<databasename_cn>[inner_web]</databasename_cn>
<table>
<tablename>auth</tablename>
<tablename_cn>[auth]</tablename_cn>
<field>
<fieldname>id</fieldname>
<fieldname_cn>[id]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>parentId</fieldname>
<fieldname_cn>[parentId]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>name</fieldname>
<fieldname_cn>[name]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>createDate</fieldname>
<fieldname_cn>[createDate]</fieldname_cn>
<jsptype>datetime</jsptype>
</field>
</table>
<table>
<tablename>role</tablename>
<tablename_cn>[role]</tablename_cn>
<field>
<fieldname>id</fieldname>
<fieldname_cn>[id]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>name</fieldname>
<fieldname_cn>[name]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>authId</fieldname>
<fieldname_cn>[authId]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>createDate</fieldname>
<fieldname_cn>[createDate]</fieldname_cn>
<jsptype>datetime</jsptype>
</field>
</table>
<table>
<tablename>team</tablename>
<tablename_cn>[team]</tablename_cn>
<field>
<fieldname>id</fieldname>
<fieldname_cn>[id]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>parentId</fieldname>
<fieldname_cn>[parentId]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>name</fieldname>
<fieldname_cn>[name]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>createDate</fieldname>
<fieldname_cn>[createDate]</fieldname_cn>
<jsptype>datetime</jsptype>
</field>
</table>
<table>
<tablename>user</tablename>
<tablename_cn>[user]</tablename_cn>
<field>
<fieldname>id</fieldname>
<fieldname_cn>[id]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>name</fieldname>
<fieldname_cn>[name]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>registerName</fieldname>
<fieldname_cn>[registerName]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>sex</fieldname>
<fieldname_cn>[sex]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>age</fieldname>
<fieldname_cn>[age]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>passWord</fieldname>
<fieldname_cn>[password]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>address</fieldname>
<fieldname_cn>[address]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>phone</fieldname>
<fieldname_cn>[phone]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>fax</fieldname>
<fieldname_cn>[fax]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>email</fieldname>
<fieldname_cn>[email]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>homepage</fieldname>
<fieldname_cn>[homepage]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>question</fieldname>
<fieldname_cn>[question]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>answer</fieldname>
<fieldname_cn>[answer]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>ip</fieldname>
<fieldname_cn>[ip]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>teamId</fieldname>
<fieldname_cn>[teamId]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>roleId</fieldname>
<fieldname_cn>[roleId]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>outDate</fieldname>
<fieldname_cn>[outDate]</fieldname_cn>
<jsptype>date</jsptype>
</field>
<field>
<fieldname>createDate</fieldname>
<fieldname_cn>[createDate]</fieldname_cn>
<jsptype>datetime</jsptype>
</field>
<field>
<fieldname>company</fieldname>
<fieldname_cn>[company]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>Office</fieldname>
<fieldname_cn>[office]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>companyAddress</fieldname>
<fieldname_cn>[companyAddress]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>position</fieldname>
<fieldname_cn>[position]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>userGrade</fieldname>
<fieldname_cn>[userGrade]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>businessGrade</fieldname>
<fieldname_cn>[businessGrade]</fieldname_cn>
<jsptype>text</jsptype>
</field>
<field>
<fieldname>isBusiness</fieldname>
<fieldname_cn>[isBusiness]</fieldname_cn>
<jsptype>text</jsptype>
</field>
</table>
</database>
二、将数据库中生成的XML文件,改一改,写上表字段的汉字名
<?xml version="1.0" encoding="GBK"?>
<!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by frank (frank inc.) -->
<database>
<
分享到:
相关推荐
JEECG敏捷框架可以有效解决信息孤岛问题,生成统一代码、统一规范、统一设计思路,使你能在这个平台上,快速开发出高 效高质量代码,缩短项目开发周期。 功能特点: • 架构技术: Struts2+Spring3+Hibernate4+...
JEECG敏捷框架可以有效解决信息孤岛问题,生成统一代码、统一规范、统一设计思路,使你能在这个平台上,快速开发出高效高质量代码,缩短项目开发周期。 功能特点 • 架构技术: Struts2+Spring3+Hibernate4+...
JEECG代码生成器,有效的解决了信息孤岛的问题,另外,生成统一的代码,统一的规范,统一的设计思路,使您能在这个统一的平台上快速开发出高效高质量的代码。 特点: 可以帮助初学者快速入门,最大限度提高JAVA...
JEECG智能框架可以有效解决信息孤岛问题,生成统一代码、统一规范、统一设计思路,使你能在这个平台上,快速开发出高效高质量代码,缩短项目开发周期。 为什么选择JEECG? 1.采用主流框架,容易上手;采用零配置思想,...
163 9.5 编写Struts整合Hibernate的分页应用 163 9.5.1 分页应用的设计思路 163 9.5.2 创建StrutsPageDemo项目,加入Hibernate开发功能 169 9.5.3 反向工程生成DAO层 169 9.5.4 编写分页应用层 170...
Struts+Spring+Hibernate实现上传下载 本文将围绕SSH文件上传下载的主题,向您详细讲述如何开发基于SSH的Web程序。SSH各框架的均为当前最新版本: •Struts 1.2 •Spring 1.2.5 •Hibernate 3.0 本文...
9.5.1 分页应用的设计思路 184 9.5.2 创建StrutsPageDemo项目,加入Hibernate开发功能 190 9.5.3 反向工程生成DAO层 190 9.5.4 编写分页应用层 191 9.5.5 加入Struts表现层和控制层 192 9.5.6发布,运行并测试 196 ...
Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...
Java绘制图片火焰效果,源代码相关注释:前景和背景Image对象、Applet和绘制火焰的效果的Image对象、Applet和绘制火焰的效果的Graphics对象、火焰效果的线程、Applet的高度,图片到图片装载器、绘制火焰效果的X坐标...