| |
技术文档>>JAVA>>新手入门>>基础入门>查看文档 |
|
| |
struts + hibernate 代码生成器设计思路 |
|
| |
文章作者:未知 文章来源:水木森林 |
|
| |
查看:93次 录入:管理员--2007-11-17 |
|
| |
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> <
|
|