博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring事务配置的五种方式
阅读量:6909 次
发布时间:2019-06-27

本文共 2815 字,大约阅读时间需要 9 分钟。

hot3.png

Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager

和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分。
DataSource、TransactionManager这两部分只是会根据数据访问方式有所变化,
比如使用Hibernate进行数据访问时,
DataSource实际为SessionFactory,
TransactionManager的实现为HibernateTransactionManager。

根据代理机制的不同,总结了五种Spring事务的配置方式,配置文件如下:

 第一种方式:每个Bean都有一个代理

PROPAGATION_REQUIRED

第二种方式:所有Bean共享一个代理基类: 

PROPAGATION_REQUIRED

第三种方式:使用拦截器

PROPAGATION_REQUIRED
*Dao
transactionInterceptor

第四种方式:使用tx标签配置的拦截器

第五种方式:全注解

此时在DAO上需加上@Transactional注解,如下:

package com.bluesky.spring.dao;import java.util.List;import org.hibernate.SessionFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;import org.springframework.stereotype.Component;import com.bluesky.spring.domain.User;@Transactional@Component("userDao")public class UserDaoImpl extends HibernateDaoSupport implements UserDao {    public List
listUsers() { return this.getSession().createQuery("from User").list(); } }

 

转载于:https://my.oschina.net/u/2277088/blog/801517

你可能感兴趣的文章
yum搭建本地仓库、更换国内源、下载rpm包
查看>>
mysql多种安装方法
查看>>
记一次线上Java程序导致服务器CPU占用率过高的问题排除过程
查看>>
LoadRunner安装时提示.Net Framework 3.5 SP1问题
查看>>
电子器件的PCB封装图设计
查看>>
spark调优之开发调优
查看>>
vim的一些常用命令
查看>>
导购员不会告诉你的无线智能家居误区
查看>>
如何进入现在较火热的大数据领域,学习路线是什么?
查看>>
UI设计师需要掌握哪些知识点?
查看>>
Oracle客户端简易配置
查看>>
Oracle归档日志(一)
查看>>
ogg中Time Since Chkpt显示unknown解决方法
查看>>
从零开始免费为您的QQ邮件加把锁
查看>>
Codeforces Round #287 (Div. 2) ABCDE
查看>>
ubuntu 配置 vnc server(转)
查看>>
最大公约数
查看>>
MariaDB 10的复制 集群 高可用搭建 大表拆分【持续更新中】
查看>>
Elasticsearch安装中文分词插件ik
查看>>
Android使用AsyncTask实现可以断点续传的DownloadManager功能
查看>>