第25卷第12期2005年12月
文章编号:1001-9081(2005)12-2817-03
计算机应用ComputerApplications
Vo.25No12l.Dec2005.
基于Hibernate与Struts框架的数据持久化应用研究
高昂,卫文学(山东科技大学信息科学与工程,山东青岛266510)(tomga163com)@.摘要:基于使用单一框架构建企业级应用时存在拓展性差,结构复杂的
问题,给出使用Hibernate和Struts两个开源框架进行整合开发的实例,同时探讨如何配置和灵活使用两种框架,简化对象持久化映射
工作和开发中的MVC分工,以及如何充分发挥两者优势,构建结构清晰、具备强大扩展性和维护性的J2EE应用。关键词:J2EE;关系映射框架;StrutsMVC;对象/关系映射;对象持久化;中图分类号:TP311文献标识码:A
Applicationof
JavadatapersistencewithHibernateandStrutsframework
GAOAng,WEIWenxue
(CollegeofInforationScienceandEngineering,ShandongUniversityofScienceandTechnology,QingdaoShandong266510,China)mAbstractTosolvetheproblessuchaspoorexpansibilityanddifficultworkdivisioninbuildingWebapplication,abest:mpracticeofhotocombineanddeployHibernateandStrutsfraeorktobuildhighperforanceobject/relationalpersistencewmwmandMVCstructurewasprovided.ThecombinationofusingthecouldconstructastandardJ2EEWebapplicationandalsommiprovethedevelopmentefficiencygreatly.Key
wordsJ2EE;HibernateStrutsMVC(Mode,VieControl);O/Rmappingobjectpersistence:;;lw,;的JavaClass直接访问数据库,而不是必须使用JDBC和SQL进行数据的操作。经上述过程,通过Hibernate实现关系数据库的持久化操作。12选择Hibernate的原因及其应用优势.Hibernate是Java开源项目,用户可以在需要的时候对
源代码进行改写,对其部分功能进行定制和拓展。同时,Hibernate具有一支积极活跃的开发队伍,这使其产品有稳定的发展保障。同时由于Hibernate对JDBC进行了轻量级的对象封装,Hibernate的Transaction实际上是底层的JDBCTransaction的封装,这样简化了数据持久层的开发与调试,大大减轻了
程序员的负担。
1Hibernate的数据持久化技术
Hibernate是一个开放源代码的O/RMapping(对象关系映射框架),它对JDBC进行了轻量级的对象封装,使Java程序员可以方便地使用对象编程思维来操纵数据库。Hibernate的目标是简化开发者通常的数据持久化编程任务,它可以把对象模型表示的对象映射到关系型数据库中,同时提供了数据
查询和获取的方法,以大幅度减少开发时人工使用SQL和JDBC处理数据的时间。通过使用Hibernate可以轻松解决开发者在使用传统的CMP以及JDBC和DAO(DataAccessObject)技术开发持久层时遇到的困难,即很难把关系表记录完整地映射到持久对象的关系上来,主要体现在多表的关系无法直接映射到对持久对象的映射上来。1.1Hibernate原理Hibernate帮助基于普通的Java对象模型的持久对象的创建,允许持久对象拥有复杂的结构如混合类型、合和属集性,还可以拥有用户自定义的类型。现在这些持久对象可以有效地反映出底层数据库模式的复杂结构。为了提高效率,Hibernate包括了一些策略,如与数据库交互时的多重最优化,包括对象的缓存、有效外部连接的获取、必要时SQL语句的执行。Hibernate在构建Java应用中的作用是:应用程序通过Hibernate对数据库进行访问,对数据持久层操作,而Hibernate自身通过properties配置文件和XMLMapping映射文件将类映射到数据库的记录。从而Application应用可以通过模型中起着应用与数据库之间的桥梁作用的PO这个特殊
收稿日期:2005-06-06修订日期:2005-08-30;