首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

spring、hibernate调整3(事务)

2012-12-25 
spring、hibernate整合3(事务)声明式事务管理的配置方式通常有如下四种。?使用TransactionProxyFactoryBean

spring、hibernate整合3(事务)

声明式事务管理的配置方式通常有如下四种。
?使用TransactionProxyFactoryBean 为目标bean 生成事务代理的配置。此方式最传统,但配置文件膝肿,难以阅读。
?采用bean 继承的事务代理配置方式比较简沽,但依然是增量式配置。
?使用BeanNameAutoProxyCreator ,根据bean name 自动生成事务代理的方式,这是直接利用Spring 的AOP 框架配置事务代理的方式,需要对Spring 的AOP 框架有所理解,但这种方式避免了增量式配置,效果非常不错。
? DefaultAdvisorAutoProxyCreator: 这也是直接利用Spring 的AOP 框架配置事务代理的方式,效果也非常不错,只是这种配置方式的可读性不如第三种方式。

?

?

?

1、TransactionProxyFactoryBean

?目标bean 直接暴露在Spring 容器中,可以直接引用,如果目标bean 被误引用,将导致业务操作不具备事务性。为了避免这种现象,可将目标bean 配置成嵌套bean , 的配置代码:

?

2、采用bean 继承

?

3、BeanNameAutoProxyCreator拦截器

?

4、用DefaultAdvisorAutoProxyCreator自动创建事务代理

?

?

?

?

?

总结:

(1)Transaction ProxyFactoryBean最原始,事务代理的配置依然是增量式的,每个事务代理都需要单独配置。

(2)Transaction ProxyFactoryBean使用继承后简化了配置,事务代理的配置依然是增量式的,每个事务代理都需要单独配置。

(3)BeanNameAutoProxyCreator 自动创建事务代理,可避免增量式配置,者使用事务拦截器创建代,一种直观。

(4)DefaultAdvisorAutoProxyCreator自动创建事务代理,可避免增量式配置,使用Advisor 创建事务代理,更加简洁。

推荐使用BeanNameAutoProxyCreator 自动创建事务代理或者DefaultAdvisorAutoProxyCreator自动创建事务代理。

?

?

热点排行