我有一个需要保存项目列表的项目,但是我想做的是,如果所有项目都成功,我希望将所有项目保存在列表中,但是如果其中任何一个在保存操作期间失败,我希望未使用CRUDRespository
提交的列表中项目的所有更改。
控制器:
@PostMapping
ResponseEntity<List<ItemResource>> save(@RequestBody final List<ItemResource> itemResourceList){
List<Item> itemList = new ArrayList<Item>();
for (final ItemResource itemResource : ItemResourceList)
{
final Item savedItem = itemService.save(resourceToEntity(itemResource));
itemList.add(savedItem);
}
}
仅服务repository.save(item);
和存储库,只是存储库扩展了CrudRepository。
我希望它遍历列表,尝试保存所有项目,但是在列表末尾提交,如果在列表中保存项目期间发生任何事情,那么不要提交任何更改。
如果可能的话。
谢谢
答案 0 :(得分:0)
itemService类应使用@Repository注释,并应扩展 CrudRepository
然后尝试创建itemService itemService =上下文的bean .getBean(itemService.class);
然后使用itemService.save(resourceToEntity(itemResource))