nate框架,非常关键的一点就是要了解Hibernate的核心接口。
Hibernate的 核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。
这5个核心接口在开发中会经
常用到。
通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。
下面对这五的核心接口分别加以介绍。
>Session接口:Session接口负责执行被持久化对象的CRUD操作(创建、读取、更新及删除)。
它也是Transaction的工厂。
但需要注意的是Session对象是非线程安全的。
同时,Hibernat e 的Session不同于JSP应用中的HttpSessi on。
>SessionFactory接口:SessionFactroy接口负责初始化Hibernate。
它充当数据存储源的代理, 并负责创建Session对象。
这里用到了工厂模式。
需要注意的是SessionFactory并不是轻量级 的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据 库时,可以为每个数据库指定一个SessionFactory。
≯Configuration接121:Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。
在Hibernate的启动的过程中,Configuration类的实例首先定位映射
文档位置、读取 配置,然 后创建SessionFactory对象 【7J。
>Transaction接口:Transaction接口负责事务相关的操作。
它是可选的,可发人员也可以 设计 编写自己的底层事务处理代码。
≯Qua-y和Criteria接口:Query和Cdtcria接口负责执行各种数据库查询。
它可以使用HQL语 言或SQL语句两种表达方式。
4 第一二章开发平台和开发框架选择分析2.4Ibatis框架概述 用Hibernate操作数据库虽然简单方便,但Hibernate是一款完全ORM.T具,它不允许用户轻 松控制如何查询数据,并且有一些查询的效率非常低下,特别是在进行I:N和M:N查询的时候更加复杂哺J。
为此在数据持久层选择Ibatis框架来弥补Hibernate在复杂查询方面的不足。
Ibatis是一个功能强大实用的SQLMap工具,使用简单XML映射描述符保持在Java类和SQL之间的松散耦合唧。
它允许开发者自定义SOL来组配bean的属性值。
允许开发者使用数据库对标准的SQL语法进行扩展。
IbatissqIL映射是一种很有吸引力的关系数据库访问途径,它以声明性的方式定义SQL语句,并且允许基于数据集的访问。
从简单的值到JavaBean它都可以映射。
与Hibernate不同,SQL映射不是那么复杂。
SQL映射只是借助简便的“语句映射”来进行SQL层面上的上作——很适合用于实现简单的需求,以及需要充分控制数据库访问的业务。
Ibatis的性能非常好。
因为Ibatis允许在sqlMap文件中写自己的SOL语句,可以自由使用所用 数据库的额外特性。
Ibatis最重要的优点就是它不生成任何代码。
因此,开发人员没有数据语言需要
学习。
也不需要转换到数据库的SQL代码。
总之选择了Ibatis框架具有如下优点: ①保持了SQL的全部能力,可以完全掌握相关语句的一切细节。
②可以使用基于数据集的更新、删除高效地处理多行数据。
◎可以毫无限制的使用统计函数(例如avg,sum,max和count等)。
④可以很轻松地将领域对象映射到多张表的字段,可以使用任何粒度的映射。
2.5Struts框架概述 Struts框架是ApacheJakarta项目的一部分,是一种使用JSP和Scrvlet来开发Web层的应用 框架。
它是MVC设计模式的一种实现。
它由一组相互协作的类、Servlet以及丰富的标记库(Taglib1组成,同时Struts也包