- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[体系结构第章票务系统架构设计案例分析
从这个图可以看出,Hibernate通过配置文件和映射文件来实现与数据库的交互及实现对象关系映射(Object Relational Mapping,简称ORM),通过这种机制,将java程序中的对象自动持久化到关系数据库中,对持久化对象的改动都会反映到数据库中。其中配置文件主要用来配置好数据库连接的各种参数以及定义数据映射文件,通常以hibernate.cfg.xml或者perties形式出现;XML Mapping配置文件是数据库中表的数据映射文件,通常以*.hbm.xml形式出现。 下面我们来更详细地看一下Hibernate运行时体系结构方案。这种方案将应用层从底层的JDBC/JTA API中抽象出来,而让Hibernate来处理这些细节。 Hibernate体系结构方案 图中各个对象的定义如下: SessionFactory 针对单个数据库映射关系经过编译后的内存镜像,是线程安全的(不可变)。 它是生成Session的工厂,本身要用到ConnectionProvider。 该对象可以在进程或集群的级别上,为那些事务之间可以重用的数据提供可选的二级缓存。 Session 表示应用程序与持久储存层之间交互操作的一个单线程对象,此对象生存期很短。 其隐藏了JDBC连接,也是Transaction的工厂。 其会持有一个针对持久化对象的必选(第一级)缓存,在遍历对象图或者根据持久化标识查找对象时会用到。 持久的对象及其集合 带有持久化状态的、具有业务功能的单线程对象,此对象生存期很短。 这些对象可能是普通的JavaBeans/POJO,唯一特殊的是他们正与(仅仅一个)Session相关联。 一旦这个Session被关闭,这些对象就会脱离持久化状态,这样就可被应用程序的任何层自由使用。 (例如,用作跟表示层打交道的数据传输对象。) 瞬态(transient)和脱管(detached)的对象及其集合 那些目前没有与session关联的持久化类实例。 他们可能是在被应用程序实例化后,尚未进行持久化的对象。 也可能是因为实例化他们的Session已经被关闭而脱离持久化的对象。 事务Transaction (可选的)应用程序用来指定原子操作单元范围的对象,它是单线程的,生命周期很短。 它通过抽象将应用从底层具体的JDBC、JTA以及CORBA事务隔离开。 某些情况下,一个Session之内可能包含多个Transaction对象。 尽管是否使用该对象是可选的,但无论是使用底层的API还是使用Transaction对象,事务边界的开启与关闭是必不可少的。 ConnectionProvider (可选的)生成JDBC连接的工厂(同时也起到连接池的作用)。 它通过抽象将应用从底层的Datasource或DriverManager隔离开。 仅供开发者扩展/实现用,并不暴露给应用程序使用。 TransactionFactory (可选的)生成Transaction对象实例的工厂。 仅供开发者扩展/实现用,并不暴露给应用程序使用。 扩展接口 Hibernate提供了很多可选的扩展接口,你可以通过实现它们来定制你的持久层的行为。 6.4 小结 本章通过案例分析描述了设计师是如何通过质量属性来驱动系统设计的过程,根据质量属性选择相应的战术以及场景来进行分析。 * * * * * * * * * * * * * * * * * 根据前期对需求的分析,决定采用基于SSH框架来构建此分布式的信息管理系统。SSH多层的构架模式,从上到下依次为视图层、控制器层、模型层、持久化层和数据库层,如下图所示: Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. 框架讲解: 视图层:职责是提供控制器,将页面的请求委派给其他层进行处理,为显示提供业务数据模型。 控制层:职责是按预定的业务逻辑处理视图层提交的请求。 (1)?处理业务逻辑和业务校验 (2) 事务管理 (3) 管理业务层对象间的依赖关系 (4) 向表示层提供具体业务服务的实现类 模型层:职责是将模型的状态转交视图层,以提供页面给浏
您可能关注的文档
最近下载
- 腰椎穿刺术的护理.pdf VIP
- 博士申请的研究计划书.docx VIP
- 2024年初级会计职称考试《初级会计实务》考点精讲第五章负债.pdf VIP
- 表D.0.1-1-防火卷帘、防火门、防火窗工程质量控制资料核查记录(必威体育精装版).xlsx VIP
- 食堂食材配送食品副食品安全服务食材供货流程及配送服务实施方案.pdf VIP
- 2024年初级会计职称考试《初级会计实务》考点精讲 第四章 非流动资产.pdf VIP
- 八年级物理下学期教学计划(沪科版).pdf
- 2024年初级会计职称考试《初级会计实务》考点精讲第三章流动资产.pdf VIP
- 律师如何利用人工智能提升工作效率.docx VIP
- MAC340-450大容量风冷模块机安装说明书.pdf
文档评论(0)