预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于J2EE的高速精密磨削数据共享系统数据持久层解决方案摘要:以国家高速精密磨削共享系统建设为背景,讨论了该系统数据持久层的设计方案,对目前主流的持久层解决方法进行了比较,提出了基于J2EE框架的Hibernate解决方案,并对该方案的优势进行了说明。关键词:高速精密磨削数据共享系统;ORM;Velocity;Hibernate;HibernateSynchronizer;Hibernateextension;持久化;Solutionfordata-sharesystemofhigh-speed&precisiongrindingbasedonJ2EEZhangMengHua,ShengXiaoMing,HuangHongWu(1,2.CollegeofMechanicalAndAutomotiveEngineering,HunanUniversity),ChangshaHunan4182,China;3.XiamenUniversityofTechnology,XiamenFujian3615,China)Abstract:BasedontheconstructionofNationaldata-sharesystemofhigh-speed&precisiongrinding,thedesignofdatapersistencelayerofthesystemwasdiscussedinthispaper.Bycomparingsomemainsolutionsfordatapersistencelayercurrently,theHibernatesolutionbasedonJ2EEwasputforward,andtheadvantagesoftheHibernatesolutionweredescribed.Keywords:data-sharesystemofhigh-speed&precisiongrinding;ORM;Hibernate;HibernateSynchronizer;Hibernateextension;Persistence0引言在基于J2EE的高速精密磨削数据共享系统中进行数据持久层的设计,主要是为整个项目提供一个高层、统一、安全和并发的数据持久机制,从而完成对各种数据进行持久化的编程工作,并为系统业务逻辑层提供服务。数据持久层提供了数据访问方法,避免了手工直接编写程序访问数据持久层(Persistencelayer)提高了代码的可重用性,大大简化了数据增、删、改、查等功能的开发过程,并且可以灵活地支持多种数据库,使系统具有良好的可伸缩性和可扩展性。目前,我们使用的绝大多数数据库是关系型数据库,而设计和开发往往又是面向对象的方式,为了提高数据访问的效率,持久层的解决方案是整个系统的关键。对持久层的实现存在多种方案,例如JDBC、EJB、JDO、ODBMS、以及ORM等。在这些方案中用JDBC是一种低级别的数据库访问方式,数据库表示完全围绕关系数据库模型,不支持面向对象的数据库表示,虽然运行效率最高,但DAO对象和SQL语言耦合太过紧密,代码维护量非常大;EJB功能强大,但使用复杂且不够灵活,对很多开发人员来说比较难以掌握;JDO没有一个开源的代码,本身的缺陷使得它不能完全实现JDBC的所有功能,标准不统一而且产品支持方面存在分裂的问题;ODBMS是一种有发展前途的技术,但目前都还处在不成熟阶段;ORM是一种较为理想的解决方案。ORM工具在Java对象与数据库表之间建立映射关系,具有自我存储到关系数据库的能力,对对象的改变能够直接存储到数据库而不用数据库存取的代码,这样就能形成相对独立的对象持久层,从而降低J2EE应用与数据库耦合度并简化程序开发。目前存在许多ORM工具,比如:Hibernate、IBatisJPOX、JDBM、Jaxor、Cayenne、Castor、PBeans、Torque等。在这些工具中Hibernate对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库,在任何使用JDBC的场合应用,并且能够创建DBA容易接受的SQL语句,因此本文提出的高速精密磨削数据共享系统采用Hibernate进行系统持久层的设计。1Hibernate框架结构1.1关于HibernateHibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了轻量级的对象封装,使Java程序员可以随心所欲的使用对象编程思维来操纵数据库。它不仅提供了从Java类到数据表之间的映射,也提供了数据查询和恢复机制。相对于使用JDBC和SQL来手工操作数据库,Hibernate可以大大减少操作数据库的工作量。另外Hibernate可