业务逻辑如下:
张三需要转500元给李四。
请问我的业务逻辑的接口应该怎么写。就是说这个业务逻辑需要向数据库操作2条SQL语句.
update test set money = money -500 name='zhansan'
update test set money = money +500 name='lisi'
这个事务是不能分开的,要么成功,要么失败。现在我把这两个操作放在一个方法里实现,还是两个方法实现。如果是一个方法,事务还好一点。如果是两个请问怎么控制这个事务。
注:这是用STRUTS+HIBERNATE+SPRING来做的,请问SPRING事务应该怎么配置这个业务逻辑呢。谢谢。
张三需要转500元给李四。
请问我的业务逻辑的接口应该怎么写。就是说这个业务逻辑需要向数据库操作2条SQL语句.
update test set money = money -500 name='zhansan'
update test set money = money +500 name='lisi'
这个事务是不能分开的,要么成功,要么失败。现在我把这两个操作放在一个方法里实现,还是两个方法实现。如果是一个方法,事务还好一点。如果是两个请问怎么控制这个事务。
注:这是用STRUTS+HIBERNATE+SPRING来做的,请问SPRING事务应该怎么配置这个业务逻辑呢。谢谢。
解决方案 »
- Java写的聊天程序,为什么发送成功,但显示失败?
- j2ee中weblogic8的问题????
- struts2在运行过程中出现错误后,自动跳去input,tomcat也挂了。
- 在WEBLOGIC8.X中创建数据库连接池
- xsd,xml,
- 初学hibernate,Hibernate Synchronizer这个插件感觉有点问题,急死了!老是有错误
- Tomcat的配置问题!?jakarta-tomcat-4.1.31安装时提示使用jdk1.5,能不能更改成1.4?
- Lomboz “Generate EJB files”时的问题,高手请进!!
- 在程序中怎样取得sybase数据使用情况(例如数据库剩余空间)?
- 请问用Java如何处理SQL Server的存储过程?
- 数据插入问题。
- 急啊,webwork标签的问题
比如说你有一个add方法里面有两个update
public void add(User u) {
update(u);
update(u);
} 你就可以在add方法上面加上注解@Transactional 默认的propagation好像就是REQUIRED的吧注意在beans.xml文件中加入<tx:annotation-driven transaction-manager="txManager"/>
我的spring事务这一块也需要加强一下啊
<bean id="txProxyTemplate" abstract="true"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager">
<ref bean="transactionManager" />
</property>
<property name="transactionAttributes">
<props>
<prop key="trans_*">PROPAGATION_REQUIRED</prop>
<prop key="query*">
PROPAGATION_REQUIRED,readOnly,-Exception
</prop>
<prop key="find*">
PROPAGATION_REQUIRED,readOnly,-Exception
</prop>
<prop key="load*">
PROPAGATION_REQUIRED,readOnly,-Exception
</prop>
<prop key="*">PROPAGATION_REQUIRED,-Exception</prop>
</props>
</property>
</bean>