体系结构--第6章--票务系统架构设计案例分析.pptVIP

体系结构--第6章--票务系统架构设计案例分析.ppt

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
从这个图可以看出,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多层的构架模式,从上到下依次为视图层、控制器层、模型层、持久化层和数据库层,如下图所示: 框架讲解: 视图层:职责是提供控制器,将页面的请求委派给其他层进行处理,为显示提供业务数据模型。 控制层:职责是按预定的业务逻辑处理视图层提交的请求。 (1)?处理业务逻辑和业务校验 (2) 事务管理 (3) 管理业务层对象间的依赖关系 (4) 向表示层提供具体业务服务的实现类 模型层:职责是将模型的状态转交视图层,以提供页面给浏览器。 数据持久层:职责是建立持久化类及其属性与数据库中表及其字段的对应关系。提供简化SQL语句的机制。实现基本的数据操作(增、删、读、改) 数据库层:数据库的建立与管理。 规则(约束): (1)系统各层次及层内部子层次之间都不得跨层调用。 (2) 由bean传递模型状态。 (3)需要在表示层绑定到列表的数据采用基于关系的数据集传递。

文档评论(0)

178****9325 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档