小弟现在用的是spring mvc + hibernate
使用open session in view
下面是配置spring bean的部分代码
<bean id="bidNoticeManagerImpl"
class="cn.bidlink.procurement.bid.service.impl.BidNoticeManagerImpl" autowire="byName">
<property name="bidNoticeDao"><ref bean="bidNoticeDao"/></property>
</bean> <bean id="bidProjectManager" parent="txProxyTemplate">
<property name="target"><ref bean="bidProjectManagerImpl"/></property>
<property name="transactionAttributes">
<props>
<prop key="create*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED</prop>
</props>
</property>
<property name="proxyInterfaces">
<value>cn.bidlink.procurement.bid.service.IBidProjectManager</value>
</property>
</bean>想请教一下
1.在一个action中 注入多个manager,他们使用的是一个事物 还是多个事物?
2.如果action,调用aManager,aManager中注入bManager,调用bManager时使用的是aManager的事物,还是bManager创建一个新事物.
3.现在在上面1的情况下,如果aManage提交成功,bManage提交出现异常.aManager事物不会回滚,请问有什么好的方式解决么?
希望兄弟们给我解惑. 给点资料. 谢谢
使用open session in view
下面是配置spring bean的部分代码
<bean id="bidNoticeManagerImpl"
class="cn.bidlink.procurement.bid.service.impl.BidNoticeManagerImpl" autowire="byName">
<property name="bidNoticeDao"><ref bean="bidNoticeDao"/></property>
</bean> <bean id="bidProjectManager" parent="txProxyTemplate">
<property name="target"><ref bean="bidProjectManagerImpl"/></property>
<property name="transactionAttributes">
<props>
<prop key="create*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED</prop>
</props>
</property>
<property name="proxyInterfaces">
<value>cn.bidlink.procurement.bid.service.IBidProjectManager</value>
</property>
</bean>想请教一下
1.在一个action中 注入多个manager,他们使用的是一个事物 还是多个事物?
2.如果action,调用aManager,aManager中注入bManager,调用bManager时使用的是aManager的事物,还是bManager创建一个新事物.
3.现在在上面1的情况下,如果aManage提交成功,bManage提交出现异常.aManager事物不会回滚,请问有什么好的方式解决么?
希望兄弟们给我解惑. 给点资料. 谢谢
解决方案 »
- 数据库字段类型为ntext或nvarchar(max)映射java属性异常
- websphere问题
- displaytag-12.tld 在哪里啊?
- java是否能传值给shell文件???
- Hql查询后的类转换异常
- 学习制作动态网站需要学什么
- request.setAttribute问题
- hibernate transaction的问题,在tomcat启动时就报下面的错误,谁知道是什么原因?
- 如何用JAVA自带的API快速构建一个高效连接池???
- JAVA DOM 中如果不知道节点的名字,如何读取第二个节点的名字和值?
- 查询结果拼接成字符串的问题
- 菜鸟问题,隆重发帖,Struts1方面的,呵呵
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager"
parent="baseDao">
</bean> <tx:advice id="mytx" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="*" />
</tx:attributes>
</tx:advice> <!-- 织入 -->
<aop:config>
<aop:advisor advice-ref="mytx"
pointcut="execution(* com.iservice.*.*(..))" />
</aop:config>
但是框架是已经定义好的,没有使用springside. 是老的一个接口一个实现类那种.
三层action->manager->dao
代码规范:举个例子: 现有用户User,和角色Role
他们定义了各自的manager,来实现一些接口 供其他业务调用
UserAction 中,注入userManager和roleManager 而不是吧roleManager的业务放在userManager中实现.
所以一个action中注入多个manager很正常.
自己找了些资料 没看明白 所以来请教各路大侠.
能给第三个问题 举个小例子么? 谢谢