gpt4 book ai didi

json - Spring MVC @RequestBody 和部分对象/json 绑定(bind)

转载 作者:行者123 更新时间:2023-12-04 23:10:18 26 4
gpt4 key购买 nike

我有一个大对象,可以通过几个步骤进行更新。我面临部分绑定(bind)问题。我的服务使用 json,我不能将@InitBinder 与@RequestBody 一起使用。将这个对象切割成几个小的不是很好的解决方案,因为步骤之间有很多跨领域的验证。

你有什么解决办法吗?我正在寻找一个干净的解决方案,例如:为给定的 @RequestMapping 或类似的东西注册一个特定的对象映射器。感谢您的帮助。

最佳答案

您应该能够使用 PATCH HTTP 方法

这是您在需要部分更新时使用的首选方法,例如您只想更新资源的几个字段的情况

Spring MVC 在 3.2 版本中添加了对它的支持,所以你可以做类似的事情

@RequestMapping(value="/patch", method=RequestMethod.PATCH, consumes=MediaType.APPLICATION_JSON_VALUE)
public @ResponseBody String patch(@RequestBody Foo foo) {
return foo.toString();
}

并且在发送请求的时候,只添加你想要更新的属性到你的PATCH请求中,为空或者省略的属性不会被更新

由于缺少更好的 Spring MVC PATCH 引用,我将这个 SO 线程链接为一个有趣的读物 Spring MVC PATCH method: partial updates

关于json - Spring MVC @RequestBody 和部分对象/json 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28856446/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com