spring中怎么实现事务
时间: 2023-09-24 20:14:12 浏览: 43
在Spring中,可以使用注解或XML配置来实现事务管理。使用注解的方式可以通过在方法上添加@Transactional注解来开启事务。示例如下:
```
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserDao userDao;
@Transactional
public void addUser(User user) {
userDao.addUser(user);
}
}
```
使用XML配置的方式则需要定义事务管理器、事务通知和切入点等元素来完成事务管理。示例如下:
```
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="add*" propagation="REQUIRED"/>
</tx:attributes>
</tx:advice>
<aop:config>
<aop:advisor advice-ref="txAdvice" pointcut="execution(* com.example.service.*.*(..))"/>
</aop:config>
```
以上两种方式均可实现事务管理,具体使用哪种方式取决于项目的具体情况。