jpa删除时遇到的坑

1、删除的方法上一定要加@Transactional和@Modifying注解
2、自定义删除方法的时候如果传的是基本类型或者包装类型一定要用
void deleteByxxx(String s)
而不是
void deleteAllByxxx(String s)

因为deleteAllByxxx(String s)会被jpa识别为查询语句

只有传入参数是列表时才是用deleteAllByxxx(List<String> s)

推荐使用自己写的这种方式,自带的delete或者deleteAll会先进行查询,然后在查询结果上面挨个执行删除,并不是一条sql执行完删除操作,所以还是建议自己写delete


版权声明:本文为weixin_40967715原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。