- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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个业务
您可能关注的文档
- 有效降低拒绝率的五次促成法专题讲述.ppt
- 有效沟通技巧培训PPT讲述.pptx
- 有一个人永远等着你讲述.pptx
- 有机产品认证常见问题讲述.ppt
- 有机化合物的定性鉴别讲述.ppt
- 对数线性模型beta精要.ppt
- 有机化学-第一章-有机化合物的结构和性质讲述.ppt
- 有机化学实验基础知识讲座讲述.ppt
- 有机化学实验讲座讲述.ppt
- 对比分析假山石精要.ppt
- 2024年江西省高考政治试卷真题(含答案逐题解析).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)物理试卷(含答案详解).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)地理试卷(含答案详解).pdf
- 2024年内蒙通辽市中考化学试卷(含答案逐题解析).docx
- 2024年四川省攀枝花市中考化学试卷真题(含答案详解).docx
- (一模)长春市2025届高三质量监测(一)化学试卷(含答案).pdf
- 2024年安徽省高考政治试卷(含答案逐题解析).pdf
- (一模)长春市2025届高三质量监测(一)生物试卷(含答案).pdf
- 2024年湖南省高考政治试卷真题(含答案逐题解析).docx
- 2024年安徽省高考政治试卷(含答案逐题解析).docx
文档评论(0)