放飞思想
posts - 23, comments - 0, trackbacks - 0, articles - 3
BlogJava
::
首页
::
新随笔
::
联系
::
聚合
::
管理
spring事务管理配置总结
Posted on 2008-08-18 17:05
beauty9235
阅读(1023)
评论(0)
编辑
收藏
作者:
beauty9235
链接:
http://beauty9235.javaeye.com/blog/229654
发表时间: 2008年05月23日
声明:本文系JavaEye网站发布的原创博客文章,未经作者书面许可,严禁任何网站转载本文,否则必将追究法律责任!
事务代理标准写法
<!--
DAO层接口实现
-->
<
bean
id
="userDAO"
class
="net.test.dao.UserDAO"
>
<
property
name
="sessionFactory"
>
<
ref
local
="sessionFactory"
/>
</
property
>
</
bean
>
<!--
业务层接口实现,把DAO注入到Service里面
-->
<
bean
name
="userServiceTarget"
class
="net.test.service.UserService"
>
<
property
name
="userDAO"
>
<
ref
bean
="userDAO"
/>
</
property
>
</
bean
>
<!--
spring代理业务层的事务管理
-->
<
bean
id
="userServiceProxy"
class
="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"
>
<
property
name
="transactionManager"
>
<
ref
local
="transactionManager"
/>
</
property
>
<
property
name
="transactionAttributes"
>
<
props
>
<
prop
key
="insert*"
>
PROPAGATION_REQUIRED
</
prop
>
<
prop
key
="find*"
>
PROPAGATION_REQUIRED,readOnly
</
prop
>
</
props
>
</
property
>
<
property
name
="target"
>
<
ref
bean
="userServiceTarget"
/>
</
property
>
</
bean
>
事务代理简写法
<
bean
id
="baseTxProxy"
lazy-init
="true"
class
="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"
>
<
property
name
="transactionManager"
>
<
ref
bean
="transactionManager"
/>
</
property
>
<
property
name
="transactionAttributes"
>
<
props
>
<
prop
key
="insert*"
>
PROPAGATION_REQUIRED
</
prop
>
<
prop
key
="find*"
>
PROPAGATION_REQUIRED,readOnly
</
prop
>
</
props
>
</
property
>
</
bean
>
<
bean
id
="userDAO"
class
="net.test.dao.UserDAO"
>
<
property
name
="sessionFactory"
>
<
ref
local
="sessionFactory"
/>
</
property
>
</
bean
>
<
bean
id
="userServiceProxy"
parent
="baseTxProxy"
>
<
property
name
="target"
>
<
bean
class
="net.test.service.UserService"
>
<
property
name
="userDAO"
>
<
ref
local
="userDAO"
/>
</
property
>
</
bean
>
</
property
>
</
bean
>
事务自动化代理写法
<!--
定义事务拦截器bean
-->
<
bean
id
="transactionInterceptor"
class
="org.springframework.transaction.interceptor.TransactionInterceptor"
>
<
property
name
="transactionManager"
ref
="transactionManager"
/>
<
property
name
="transactionAttributes"
>
<
props
>
<
prop
key
="insert*"
>
PROPAGATION_REQUIRED
</
prop
>
<
prop
key
="update*"
>
PROPAGATION_REQUIRED
</
prop
>
<
prop
key
="delete*"
>
PROPAGATION_REQUIRED
</
prop
>
<
prop
key
="find*"
>
PROPAGATION_REQUIRED,readOnly
</
prop
>
<
prop
key
="query*"
>
PROPAGATION_REQUIRED,readOnly
</
prop
>
<
prop
key
="*"
>
PROPAGATION_REQUIRED
</
prop
>
</
props
>
</
property
>
</
bean
>
<!--
定义BeanNameAutoProxyCreator
-->
<
bean
class
="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator"
>
<
property
name
="beanNames"
>
<!--
所有名字以DAO,Service结尾的bean,
将由该"bean后处理器"为其创建事务代理;
实际上应该在业务层进行事务管理,
这里只是举一个简单例子
-->
<
value
>
*DAO,*ServiceProxy
</
value
>
</
property
>
<!--
下面定义BeanNameAutoProxyCreator所需的事务拦截器
-->
<
property
name
="interceptorNames"
>
<
list
>
<!--
可以增加其他的拦截器
-->
<
value
>
transactionInterceptor
</
value
>
</
list
>
</
property
>
</
bean
>
<
bean
id
="userDAO"
class
="net.test.dao.UserDAO"
>
<
property
name
="sessionFactory"
>
<
ref
local
="sessionFactory"
/>
</
property
>
</
bean
>
<
bean
id
="userServiceProxy"
class
="net.test.service.UserService"
>
<
property
name
="userDAO"
>
<
ref
bean
="userDAO"
/>
</
property
>
</
bean
>
本文的讨论也很精彩,浏览讨论>>
JavaEye推荐
搜狐网站诚聘Java、PHP和C++工程师
北京: 千橡集团暨校内网诚聘软件研发工程师
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
Powered by:
BlogJava
Copyright © beauty9235
日历
<
2008年8月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
常用链接
我的随笔
我的评论
我的参与
留言簿
(1)
给我留言
查看公开留言
查看私人留言
我参与的团队
合肥java技术沙龙(0/0)
随笔分类
java编程(1)
工作感言
开发环境配置
随笔档案
2010年7月 (2)
2008年8月 (20)
2006年8月 (1)
文章分类
java技术(1)
文章档案
2010年7月 (2)
2006年8月 (1)
favarite
川农学子在线
本网站非四川农业大学官方网站 我是川农信息与工程技术学院农业建筑与能源工程专业学生 本网站为个人网站,旨在倡导个人修为,网络技术及IT动态及个人展示! 欢迎大家光临,希望本站的内容能给你一点帮助,一点益处,则己足己! 祝福大家每天都过得开开心心!
搜索
最新评论
阅读排行榜
1. spring 任务调度总结(4227)
2. spring事务管理配置总结(1023)
3. 新员工培训建议(510)
4. proxool数据池配置总结(473)
5. 其于window系统的Rsync同步实战(467)
评论排行榜
1. Makefile学习(0)
2. 新员工培训建议(0)
3. Collections.sort 排序(0)
4. proxool数据池配置总结(0)
5. spring事务管理配置总结(0)