论坛首页 Java企业应用论坛

关于spring的两个拦截器的问题

浏览 7305 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-09-13  
   因为对spring,hibernate的研究都不深,只是停留在最基本的应用上,现在到公司,感觉在配置上有些不同,以前都是用spring的声明性事务管理的,现在公司的框架没有用这个,我也看到论坛中有人说了,声明性事务管理不灵活,性能也不好,公司是用了两个拦截器,HibernateInterceptor和org.springframework.transaction.interceptor.TransactionInterceptor,为每个DAO加一个
HibernateInterceptor,然后为每个service增加这两个拦截器,以前没有用过这种方式,网上这么用的也比较少,看了看他们的源代码,当然我现在的理解能力还不行,始终没明白,这样配置后事务管理究竟在什么时候做的?哪位指教一下
   发表时间:2006-09-13  
在每个DAO和Service方法执行前后拦截
0 请登录后投票
   发表时间:2006-09-13  
意思是说在每个service,dao前后进行拦截,那为什么都配置呢?如果是在拦截的前后加上对事务的处理,只配置service或者dao就可以了啊?并且这两个拦截器的作用有什么不同呢?
0 请登录后投票
   发表时间:2006-09-13  
HibernateInterceptor和TransactionInterceptor作用不同。HibernateInterceptor实现的功能和ibernateTemplate差不多,我觉得比之HibernateTemplate它唯一的优势大概就是没有匿名类让代码更加美观了。在数据访问中抛出CheckedException的优势,几乎可以忽略不计。
0 请登录后投票
   发表时间:2006-10-12  
应该可以用aop的实现 来设置拦截dao的方法还是service的方法吧。
        <bean id="autoproxysession"
		class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
		<property name="frozen" value="true" />
		<property name="proxyTargetClass" value="true" />
		<property name="interceptorNames">
			<list>
				<value>sessionInterceptor</value>
			</list>
		</property>
		<property name="beanNames">
			<list>
				<value>*Service</value>
			</list>
		</property>
	</bean>

	<bean id="sessionInterceptor"
		class="org.springframework.orm.hibernate3.HibernateInterceptor">
		<property name="sessionFactory" ref="sessionFactory" />
	</bean>

这样做的前提是所有的service也申明在spring的applicationContext.xml里。
0 请登录后投票
   发表时间:2006-10-12  
spring2.0的集成静态织入,喜欢这个!喜欢aspectJ!
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics