如何使用块

时间:2016-11-30 11:41:15

标签: java spring jpa spring-data spring-data-jpa

情况:

  • 我有一个人/桌子/实体(姓名,性别,电子邮件)。
  • 我的申请包含1.000.000.000人
  • 我想删除所有男性(我预计将删除500,000,000人)

天真的解决方案:

我在PersonRepositoy中创建了一个名为:

的方法
deleteBySex(Sex sex)

然后用Sex.MALE调用它

问题:

在执行删除期间,数据库被阻止,无法添加新条目。

理论解决方案:

重复直到所有findAnyBySex(性别性别)都没有返回任何条目:

  • 使用sex = Sex.MALE
  • 删除前1000个条目
  • 执行其他操作以执行查询(例如添加新人)

问题:

Spring数据中是否有某种方法可以删除小块/块/块中的数据而无需手动实现或尽可能少地手动实现? (操作不需要是事务性的,一些异步执行就足够了)

0 个答案:

没有答案