对象关系映射技术的发展与应用-1精要.doc

对象关系映射技术的发展与应用-1精要.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
对象关系映射技术的发展与应用-1精要

对象关系映射技术的发展与应用 摘要:首先本文基于JAVA;ORM;DAO;Hibernate Development and application of object-relational mapping technology Yaoding Wang Abstract:Based on J2EE architecture first introduced the use of programming languages ??and database data interaction in development of three ways: using SQL / JDBC hard-coded in the business, using SQL / JDBC hardcoded and object-relational data in a separate class mapping modes (ORM mode). Secondly, the use of object-oriented programming language is a design pattern for implementing object-relational mapping technology --DAO design patterns and realization of the four-level object-relational mapping pattern design standards. Finally, an implementation framework --Hibernate object-relational mapping modes and interfaces as well as its core design principles combined with DAO design patterns and additional Hibernate data persistence layer framework for establishing a process flow diagram and model implementation. Key words: JAVA;ORM;DAO;Hibernate 前言面向对象是从软件工程基本原则(如耦合、聚合、封装)的基础上发展起来的,而关系数据库则是从数学理论发展而来的,两套理论存在显著的区别。为了解决这个不匹配的现象,对象关系映射技术应运而生。EE的三层架构1,2]是指表示层(Presentation),业务逻辑层(Businesss Login)以及基础架构层(Infrastruelure)。但是在实际项目中,往往会对三层体系结构做一些扩展为五层体系,即表示层(Presentation)、控制/中介层(Controller/Mediator)、领域层(Domain)、数据持久层(Data Persistence)和数据源层(Data Source)。五层体系实际上实在三层架构的中层增加了两个中间层。控制/中介层位于表示层和领域层之间,数据持久层位于领域层和基础架构层之间,体系结构如图1所示: 遵从J2EE的N层体系结构[3]的应用程序会因为减少了内部的耦合而提高其健壮性。如图1所示,如果用户接口层要获得信息,必须与业务层的对象交互,然后在通过业务层对象从持久层获得存储在持久机制中的对象。J2EE体系结构的一个重要特点是就是通过禁止用户层与持久结构解耦。通过将程序的业务逻辑封装到业务类中而不是用户接口类中,可以在多处使用这些业务逻辑,从而提高应用程序的复用性。所以,合理设计持久层是一个至关重要的问题。 图1 J2EE的N层体系结构图 2、数据持久层的集中解决方案 2.1 使用SQL/JDBC在开发中的硬编码 使用SQL/JDBC[4]在开发中硬编码数据流示意图如图2所示,这种模式实际上是在开发语言中直接编写SQL语句对数据库[5]进行操作,这种模式的好处是写代码效率很高,对于小型应用程序或者原型是可行的。缺点是直接耦合了的业务类与关系数据库结构,这意味着任何一个小的改变(例如对某一列重命名或者移植到另外一种数据库)都导致源代码级的修改,使代码难于维护和扩展。 图2 SQL/JDBC对数据库的操作 2.2使用SQL/JDBC 在单独的数据类中硬编码。 用SQL/JDBC在单独的数据类中硬编码数据流示意如图3所示,在这种方法中,业务类的SQL/JDBC语句被封装在一个或者多个“数据类”中。这使得业务类不用直接跟数据库进行交互,但是在对数据进行改动后,仍然需要修改和重新编译数据类。这种方法也只适合原型或者小型(少于40或者50个业务

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档