`
lilei821029
  • 浏览: 26074 次
  • 性别: Icon_minigender_1
  • 来自: 济南
最近访客 更多访客>>
社区版块
存档分类
最新评论

Struts+Hibernate代码生成器设计思路

阅读更多
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>
  <
分享到:
评论

相关推荐

    用户管理jsp+struts2+hibernate代码

    【用户管理jsp+struts2+hibernate代码】是一个基于Java Web技术的用户管理系统,主要涉及了前端展示层JSP、控制层Struts2以及持久层Hibernate这三大核心技术。这个系统设计的目标是实现用户登录及相关的管理功能,...

    spring+struts+hibernate半自动开发.zip

    JEECG敏捷框架可以有效解决信息孤岛问题,生成统一代码、统一规范、统一设计思路,使你能在这个平台上,快速开发出高 效高质量代码,缩短项目开发周期。 功能特点: • 架构技术: Struts2+Spring3+Hibernate4+...

    网上书店(struts+hibernate+css+mysql)毕业设计——(论文+源码).zip

    网上书店的毕业设计项目是一个基于Java技术栈的Web应用程序,主要使用了Struts、Hibernate、CSS和MySQL数据库。...同时,毕业论文部分提供了系统的理论分析和设计思路,有助于深入理解整个项目的架构和设计原则。

    图书管理系统(struts+hibernate+spring)130225.rar

    开发者可以通过阅读和分析这些文件,进一步了解SSH框架的使用方式,以及图书管理系统的设计思路和实现细节。对于初学者来说,这是一个很好的学习和参考资源,而对于有经验的开发者来说,这也提供了一个快速搭建和...

    Migcode代码生成器使用说明书

    在这个过程中,Migcode代码生成器可以帮助简化多个步骤,例如在实体设计阶段完成之后,可以直接生成数据库、实体类、DAO层、Service层甚至是部分Action层和前端页面的代码。这种方式不仅减少了开发人员的手动编码...

    利用struts编写的图书管理系统

    每个系统都可能有不同的设计思路,比如模型的组织、业务逻辑的处理、用户界面的设计等,提供了很好的学习和实践机会。 5. **数据库交互**:图书管理系统通常需要与数据库进行交互,存储和检索图书信息。这可能涉及...

    Struts和Hibernate技术实现电子商务系统(电子书)

    每个模块都详细阐述了设计思路、编程实现及界面效果,为读者提供了一个从理论到实践的完整学习路径。 **员工登录系统:安全的第一道防线** 第五章重点介绍了员工登录系统的开发过程,从需求分析到数据库设计,再到...

    J2EE电子商务系统开发从入门到精通基于Struts和Hibernate技术实现

    - Middlegen是一个代码生成工具,它可以自动生成Java实体类和Hibernate配置文件,提高开发效率。 - **3.7 hbm2java工具** - hbm2java工具用于将Hibernate的映射文件(hbm.xml)转换成对应的Java实体类。 - **3.8 ...

    jeecg-framework 源代码

    JEECG敏捷框架可以有效解决信息孤岛问题,生成统一代码、统一规范、统一设计思路,使你能在这个平台上,快速开发出高效高质量代码,缩短项目开发周期。 功能特点 • 架构技术: Struts2+Spring3+Hibernate4+...

    J2EE电子商务系统从入门到精通--基于Struts和Hibernate技术实现.

    - **4.1.1 网站设计**:这部分概述了网站的整体设计思路。 - **4.1.2 编程实现**:这部分介绍了网站的主要编程实现过程。 - **4.1.3 测试、发布与维护**:这部分讲述了网站的测试流程、发布策略和后期维护计划。 ...

    jeecg-framework-v2.0 (最新源码)

    JEECG智能框架可以有效解决信息孤岛问题,生成统一代码、统一规范、统一设计思路,使你能在这个平台上,快速开发出高效高质量代码,缩短项目开发周期。 为什么选择JEECG? 1.采用主流框架,容易上手;采用零配置思想,...

    基于Java的SSH框架医院在线挂号系统设计与实现(项目报告+答辩PPT+源代码+数据库+演示录像).zip

    展示了系统的实际运行效果和设计思路,有助于理解系统的功能和用户体验。文档资料可能包含需求分析报告、系统设计文档、测试报告等,这些都是项目开发的重要组成部分。 7. **答辩PPT**: 答辩PPT通常包含项目概述...

    基于struts2、spring、hibernate构建一个网上投票系统—-毕业论文设计.doc

    一、问题描述及设计思路 1.1 需求分析 在需求分析阶段,项目首先要明确的是用户对网上投票系统的基本功能需求,包括用户注册与登录、创建投票主题、参与投票、查看投票结果等。此外,系统还需要具备权限管理,如...

    都市供应信息网(jsp+struts2+sqlserver2005)

    《都市供应信息网:基于JSP、Struts2与SQL ...其设计思路、技术选型及实现方法,对于理解和学习Java Web开发具有重要的参考价值。通过不断迭代和优化,此类系统将在推动城市经济发展、促进商业合作方面发挥更大的作用。

    Struts2,Spring与Hibernate图文例子学生成绩管理系统.pdf

    - **Struts2集成**:在`web.xml`中配置Struts2的过滤器和Spring监听器,定义`struts.properties`文件,整合Spring与Struts2。创建JSP页面,编写Action类继承`ActionSupport`,并在其中注入Service Bean,处理用户...

    基于struts2的学生管理系统

    这个系统利用Struts2框架进行业务逻辑处理,结合数据库存储数据,提供学生选课管理等核心功能,并附带需求分析文档,帮助我们理解系统的设计思路。 首先,我们来看看Struts2框架的核心特点。Struts2提供了灵活的...

    基于Java的新闻发布及管理系统设计与实现(项目报告+答辩PPT+源代码+数据库+截图+部署视频).zip

    11. **项目文档**:包括项目说明报告、答辩PPT等,详述系统的需求分析、设计思路、实现方法和测试结果,是理解项目全貌的关键。 12. **部署与运行**:视频解说可能涵盖了服务器配置、环境搭建、应用部署等实际操作...

    使用MyEclipse整合ss2h

    ### 使用MyEclipse整合SS...在整个过程中,不仅学习了如何配置数据库连接、引入Hibernate、Spring和Struts2,还掌握了实体类的定义方法以及业务逻辑层的设计思路。这为后续开发基于该框架的应用程序打下了坚实的基础。

Global site tag (gtag.js) - Google Analytics