您的位置:首页 > 编程语言 > Java开发

4、spring集成hibernate 及事务控制

2014-12-24 00:00 375 查看
ORM 对象关系映射

spring提供的一个FactoryBean来获取sessionFactory,具体实现类:LocalSessionFactoryBean将创建一个SessionFactory的代理对象,结合spring的事务控制,获取线程绑定。

p132

<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:test">
</property>
<property name="username" value="scott"></property>
<property name="password" value="mb3"></property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<!--<span style="color:#ff9900;">接管hibernate的映射文件</span>-->
<p align="left"><span style="color:teal;">        <</span><span style="color:#3F7F7F;">property</span> <span style="color:#7F007F;">name</span>=<em><span style="color:#2A00FF;">"</span><span style="color:#ff0000;">mappingResources</span><span style="color:#2A00FF;">"</span></em><span style="color:teal;">></span></p><p align="left">            <span style="color:teal;"><</span><span style="color:#3F7F7F;">list</span><span style="color:teal;">></span></p><p align="left">                <span style="color:teal;"><</span><span style="color:#3F7F7F;">value</span><span style="color:teal;">></span>org/s2ssh1/pojo/Testr.hbm.xml<span style="color:teal;"></</span><span style="color:#3F7F7F;">value</span><span style="color:teal;">></span></p><p align="left"><span style="color:teal;">            </</span><span style="color:#3F7F7F;">list</span><span style="color:teal;">></span></p><p align="left">        <span style="color:teal;"></</span><span style="color:#3F7F7F;">property</span><span style="color:teal;">></span></p><!--<span style="color:#ff9900;">配置hibernate配置文件</span>-->
<property name="<span style="color:#ff0000;">hibernateProperties</span>">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.Oracle9Dialect
</prop><span style="font-family: Arial, Helvetica, sans-serif;">				</span>
<span style="white-space:pre"></span><pre name="code" class="html">                                 <prop key="hibernate.show_sql">
true
</prop>
</props></property></bean>


学习内容:

数据分页

监听

延时加载

事务控制

数据库的事务特点:

原子性:多个数据表进行操作的一段代码构成一个单元,要保证所用的操作成功,事务才能提交,其中一个失败就要撤销操作,回退操作;

一致性:数状态与业务操作一致

隔离性:并发对数据库进行操作时,数据库为每个事务提供隔离空间,和隔离等级,级别越高数据一致性越好而并发性越弱。(同java的锁同步机制)

持久性:只要事务提交成功,数据库必须对其持久化!及时提交后数据库发生异常也要在下次启动时恢复数据!!

数据一致性是事务的终极目标;

数据库对事务控制的支持p150&spring对事务的支持

spring针对不同ORM的事务管理实现类:p155

5种方法配置事务控制

常用xml配置文件和注解配置
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: