Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring MVC PUT vs PATCH_Spring_Rest_Patch_Put - Fatal编程技术网

Spring MVC PUT vs PATCH

Spring MVC PUT vs PATCH,spring,rest,patch,put,Spring,Rest,Patch,Put,对于我的用例,我应该使用补丁进行部分更新。但我只是想知道springMVC与RequestMEthod.PUT和RequestMEthod.PATCH有什么不同 FYI@RequestBody对象以相同的方式填充PUT或PATCH PUT和PATCH是HTTP方法 Spring的RequestMethod只包装它们。因此,问题应该是何时使用httpput和httppatch 根据: HTTP RFC指定PUT必须获取完整的新资源 表示为请求实体 当 补丁就像PUT,它更新了一个资源,但与PUT不

对于我的用例,我应该使用补丁进行部分更新。但我只是想知道springMVC与RequestMEthod.PUT和RequestMEthod.PATCH有什么不同


FYI@RequestBody对象以相同的方式填充PUT或PATCH

PUT和PATCH是
HTTP
方法

Spring的
RequestMethod
只包装它们。因此,问题应该是何时使用
httpput
httppatch

根据:

HTTP RFC指定PUT必须获取完整的新资源 表示为请求实体

补丁就像PUT,它更新了一个资源,但与PUT不同的是,它更新了一个资源 应用增量,而不是替换整个资源

对于简单的资源表示,差异通常并不重要


因此,由于它只是语义上的(一旦收到请求,您可以在控制器中做任何您想做的事情),并且我假设您的rest api不包括复杂的更新,比如说,列表的一部分或嵌套对象中的特定字段,我相信
PUT
将是更好的选择。

Spring MVC没有做任何事情。“它所做的一切”就是接收请求并让您从控制器方法处理它。这取决于你想做什么。添加一个链接到一篇好文章,解释如何使用补丁,因为我觉得在这种情况下,它将被错过:我已经整理了一篇文章,描述了在春季使用
补丁的方法。上提供了一个工作示例。