Spring Boot中补丁请求后如何映射和保存对象?

时间:2018-11-17 21:14:13

标签: spring mongodb rest spring-boot spring-restcontroller

我有一个补丁映射。

@PatchMapping(value = "/{id}")
    public Orders orderByPatch(@RequestBody Orders newOrders,
        @PathVariable("id") UUID id) {
    return myService.save(newOrders, id);
}

这是服务。

public Orders save(Orders newOrders, UUID id) {
    Orders oldOrders = myRepo.findById(id).orElseThrow(() -> new NoDataFoundException("No data Found"));
    ModelMapper modelMapper = new ModelMapper();
    oldOrders = modelMapper.map(newOrders, Orders.class);
    return myRepo.save(oldOrders);
}
如您所见,

映射后,我的对象已更改。因此,当我尝试再次保存它时,休眠模式将尝试保存新对象而不是更新旧对象。

我只想获取一些文件进行更新。我该怎么办?

0 个答案:

没有答案