java Spring将@RequestBody绑定到其他数据类型
通常会看到JSON请求体绑定到POJO,如下所示:
@RequestMapping(value="/users", headers="Accept=application/json",method=RequestMethod.POST)
public void create(@RequestBody CustomerInfo customerInfo){
...
}
是否可以将@RequestBody绑定到非POJO但其他数据类型,如基本数据类型和非基本数据类型
例如:
@RequestMapping(value="/users", headers="Accept=application/json",method=RequestMethod.POST)
public void create(@RequestBody Set<Integer> ids){
...
}
# 1 楼答案
是的,这是可能的
根据你的例子
它将收到
[1,2,3]
之类的内容,作为请求主体再举一个原始的例子
它将收到
1
之类的内容,作为请求主体然而,对于后一个例子,我不会说它是
application/json
# 2 楼答案
根据文件:
https://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html#mvc-ann-requestbody
可以使用Java对象尝试作为
@RequestBody
的类型参数。也就是说,我认为不存在对原语的支持根据文档,您有以下选项: