Hibernate性能优化

Hibernate性能优化

ID:38835915

大小:395.31 KB

页数:29页

时间:2019-06-20

Hibernate性能优化_第1页
Hibernate性能优化_第2页
Hibernate性能优化_第3页
Hibernate性能优化_第4页
Hibernate性能优化_第5页
资源描述:

《Hibernate性能优化》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章Hibernate性能优化10.1事务处理10.2并发控制10.3缓存机制10.1事务处理事务的概念JDBC事务处理JTA事务处理返回10.1.1事务处理—事务的概念事务(Transaction)是访问数据库时,可能更新数据库中各种数据项的一个程序执行单元,用来确保数据的完整性,避免数据库中的数据在不正确的操作下引起的错误更改。事务的4个特性:原子性。指事务执行单元是一个不可分割的单元,这些单元要么都执行,要么都不执行。一致性。指无论执行了什么操作,都应保证数据的完整性和业务逻辑的一致性。隔离性。在事务执行过程中,多个执行单元间操作的数据都是其他单元没有操作或者操

2、作结束后的数据,保证每一个执行单元操作的数据都有完整的数据空间。持久性。事务结束后,执行单元操纵的数据被保存在数据库中,这些数据的保存状态是永久性的,不会因为系统故障而消失。返回10.1.2事务处理—JDBC事务处理(1)Hibernate框架中支持两种事务处理方式:JDBC事务处理和JTA(JavaTransactionAPI)事务处理,这两种事务处理方式默认情况下都是关闭的,可以通过配置开启事务管理。如果不进行配置那么会默认使用JDBC事务。JDBC事务应用:1.声明JDBC事务管理,配置方式:hibernate.cfg.xml中的配置方式

3、"hibernate.transcation.factory_class">net.sf.hibernate.transcation.JDBCTranscationFactory10.1.2事务处理—JDBC事务处理(2)hibernate.properties的配置方式hibernate.transcation.factory_class=net.sf.hibernate.transcation.JDBCTranscationFactory2.编程过程中应用JDBC事务管理流程:实例化Configure类读取配置文件或者属性文件。获得Session

4、Factory实例。获得Session实例。通过session.beginTransaction()获得事务Transaction对象。开始事务:进行数据操作。提交事务:数据处理结束后提交事务。回滚事务:如果数据处理出现异常那么回滚事务,恢复原始数据。结束事务:通过session.close结束事务。10.1.2事务处理—JDBC事务处理(3)3.应用JDBC事务管理实例:Configurationconfig=newConfiguration();//实例化Configure类……//省略业务代码sessionFactory=config.buildSessionFac

5、tory();//建立Session工厂Sessionsession=sessionFactory.openSession();//开启会话Transactiontx=null;//定义事务处理对象try{tx=session.beginTransaction();//开始事务tx.begin();……//省略数据处理代码tx.commit();//提交事务}catch(Exceptione){e.printStackTrace();tx.rollback();//回滚事务}finally{session.close();//关闭Session}返回10.1.3事务处理—

6、JTA事务处理(1)JTA(JavaTransactionAPI)是J2EE事务服务的标准解决方式,通过容器来控制事务。主要应用在多数据库操作的分布式系统中。JTA事务应用:1.声明JTA事务管理,配置方式:hibernate.cfg.xml中的配置方式net.sf.hibernate.transcation.JTATranscationFactoryhibernate.properties的配置方式hibernate.transcation.fa

7、ctory_class=net.sf.hibernate.transcation.JTATranscationFactory10.1.3事务处理—JTA事务处理(2)2.编程过程中应用JTA事务管理流程:创建JTA事务对象。开始事务。获得Session并编写操作数据的方法。关闭Session。提交事务。如果遇到异常事件则回滚事务。3.应用JDBC事务管理实例:try{UserTransactiontx=null;//创建JTA事务tx=(UserTransaction)newInitialContext().lookup("j

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。