我在一个二次开发的模块中,测试自己写的代码,在编写测试类后,发现对数据库无法进行增删改操作,只能查到数据。
错误代码示例:
@RunWith(SpringRunner.class)
@Slf4j
@SpringBootTest
@EnableTransactionManagement
public class Test {
@Autowired
BalancePubMapper balancePubMapper;
@Test
public void insertBal() throws DocumentException {
BalancePub balancePub = new BalancePub();
balancePub.setBankCode("***");
balancePub.setAccNo("***");
sBalancePub.setFundId("****");
balancePubMapper.insertBal(balancePub);
}
}
不管是在测试类加事务注解,还是在mapper里加注解,最后都无法插入数据库。
最后经过查询资料,在@Test注解后面加一个@Commit即可
@RunWith(SpringRunner.class)
@Slf4j
@SpringBootTest
@EnableTransactionManagement
public class Test {
@Autowired
BalancePubMapper balancePubMapper;
@Test
@Commit
public void insertBal() throws DocumentException {
BalancePub balancePub = new BalancePub();
balancePub.setBankCode("***");
balancePub.setAccNo("***");
sBalancePub.setFundId("****");
balancePubMapper.insertBal(balancePub);
}
}