此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【blackice1015】截止到2008-07-03 10:56:12的历史汇总数据(不包括此帖):
发帖的总数量:1 发帖的总分数:0
结贴的总数量:1 结贴的总分数:0
无满意结贴数:1 无满意结贴分:20
未结的帖子数:0 未结的总分数:0
结贴的百分比:100.00% 结分的百分比:---------------------
无满意结贴率:100.00% 无满意结分率:---------------------
敬礼!
楼主【blackice1015】截止到2008-07-03 10:56:12的历史汇总数据(不包括此帖):
发帖的总数量:1 发帖的总分数:0
结贴的总数量:1 结贴的总分数:0
无满意结贴数:1 无满意结贴分:20
未结的帖子数:0 未结的总分数:0
结贴的百分比:100.00% 结分的百分比:---------------------
无满意结贴率:100.00% 无满意结分率:---------------------
敬礼!
解决方案 »
- poi 3.8 导出excel 乱码
- 在线等!org.hibernate.TransientObjectException: object references an unsaved transie
- 后台打印的这是什么?
- 自己的tomcat服务器别人能登陆吗?
- 请问各位高手。我想学STRUTS
- 要调用dephi写好的web service,不知道如何调用,有什么好的教程介绍一下?
- JBuilder2005E的JDataStore是不是和JDBC一样呀??
- 请推荐基于Java的报表制作工具!
- 问一个关于RMI的初级问题
- 为什麽同一个包中的类和不同包中的类在JBuilder中总是找不到,敬请高手解答,多谢
- 求emf-sdo-xsd-SDK插件的下载地址!
- webservice返回数组问题
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="interceptorNames">
<list>
<idref local="actionPointcutAdvisor" />
</list>
</property>
<property name="proxyTargetClass">
<value>true</value>
</property>
<property name="beanNames">
<list>
<value>/login</value>
<value>/user</value>
<value>/company</value>
<value>/stuff</value>
<value>/experiment</value>
</list>
</property>
</bean>/login,/user,是我的action的path,每次都会拦截下,如果用缓存,那么你就自己去实现一个pointcut把,这个因该不是很麻烦!
我的情况是这样的,我配置了一个
<bean
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list>
<value>*Service </value>
</list>
</property>
<property name="interceptorNames">
<list>
<value>methodCachePointCut </value>
<value>transactionInterceptor </value>
</list>
</property>
</bean> 意思是所有符合*Service的bean都要经过这个BeanNameAutoProxyCreator代理,其中会有两个拦截器,其一是事务拦截器transactionInterceptor ,其二methodCachePointCut 方法缓存拦截器
如下:
<bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
<property name="transactionManager" ref="transactionManager" />
<property name="transactionAttributes">
<props>
<prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>缓存拦截器
<!-- 引用ehCache的配置 -->
<bean id="defaultCacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
<property name="configLocation">
<value>classpath:ehcache.xml</value>
</property>
</bean>
<!-- 定义ehCache的工厂,并设置所使用的Cache name -->
<bean id="ehCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
<property name="cacheManager">
<ref local="defaultCacheManager"/>
</property>
<property name="cacheName">
<value>DEFAULT_CACHE</value>
</property>
</bean>
<!-- find/create cache拦截器 -->
<bean id="methodCacheInterceptor" class="com.dc.common.cache.ehcache.MethodCacheInterceptor">
<property name="cache">
<ref local="ehCache" />
</property>
</bean> <bean id="methodCachePointCut" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
<property name="advice">
<ref local="methodCacheInterceptor"/>
</property>
<property name="patterns">
<list>
<value>.*get.*</value>
</list>
</property>
</bean>
我想要的结果是:所有*service的bean必须要经过事务拦截器,但是有一些service类是不需要经过缓存拦截器
例如我有10个Service类,配置了了10个bean ; AaaService,BbbService,CccService....
其中这10个Service都需要事务,但是有两个Service,例如(AaaService,CccService)不仅要经过事务代理还要经过缓存代理,这样怎么配置?
我现在的配置也能实现,但是就是性能太差,也就是意味着所有的Service都要经过两个拦截器
不知道我描述明白了吗?谢谢
实际工程项目中的Service很多,其实我就想要单独配置不同Service的不同拦截器
比如要通过事务的,就用 *TransactionServlet,
不仅要经过事务代理还要经过缓存代理的,就用 *TransactionProxyServlet
如何在applicationContext.xml配置两个或多个BeanNameAutoProxyCreator怎么配置。
这样配置的原因主要是:根据不同的bean调用不同的拦截器,请专家指点一二,谢谢!!!!例如:
<bean
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list>
<value>AaaService</value>
<value>BbbService</value>
<value>CccService</value>
</list>
</property>
<property name="interceptorNames">
<list>
<value>aaaInterceptor</value>
</list>
</property>
</bean> <bean
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list>
<value>XxxService</value>
<value>YyyService</value>
<value>ZzzService</value>
</list>
</property>
<property name="interceptorNames">
<list>
<value>bbbbInterceptor</value>
</list>
</property>
</bean> 我现在这样配置spring报错
请各位高手指点,怎么能实现这种灵活配置的效果
<property name="beanNames">
<list>
<value>*Service </value>
</list>
</property>
<property name="interceptorNames">
<list>
<value>transactionInterceptor </value>
</list>
</property>
</bean>
这个配置事务,拦截所有得service
在起一个缓存拦截器,可以自己定义,也可以用BeanNameAutoProxyCreator,
这个拦截器用来拦截你的自定义service,下班了,明天在告诉你!