第一步:mybatis.xml中添加支持事务的配置
第二步:Service实现类提供用来测试事务支持与否的方法
@Service
public class UserServiceImpl implements UserService {
@Resource
private UserMapper userMapper;
//@Transactional //--------①
@Override
public int insert(User record) {
User user1 = new User();
user1.setNickname("aa");
user1.setAccount("aaaaaaa");
userMapper.insert(user1);
//System.out.println(3/0); //----------②
User user2 = new User();
user2.setNickname("bb");
user2.setAccount("bbbbbbb");
userMapper.insert(user2);
return 1;
}
}
测试代码
@ExtendWith(SpringExtension.class)
@ContextConfiguration("/applicationContext.xml")
class UserServiceTest {
@Resource
private UserService userService;
@Test
void insert(){
userService.insert(null);
}
}
具体测试工作
-
直接运行测试代码,发现两条数据都添加成功
-
仅去掉编号①行首的注释,运行测试代码,发现程序不报错,两条数据都添加进数据库了
-
仅去掉编号②行首的注释,运行测试代码,发现程序报错,但在第一条数据添加成功
-
同时去掉编号①和编号②行首的注释,运行测试代码,发现程序报错,一条数据也没有添加进数据库