@RequestBody不能class类型匹配
在首次第一次尝试使用@RequestBody注解
开始加载字符串使用post
提交(貌似只能post
),加Json
数据格式传输的时候,
1
2
3
|
data:{"stockCode":"601288","startTime":"2011-11-10 09:05","endTime":"2019-11-20 09:10"}",
type: "POST",
contentType: "application/json",
|
这么做是完全没有问题
但是当尝试注入到一个class
里面,怎么都进不去,直接报不允许加载,最后发现在小xml
里面需要加上
1
2
3
4
5
|
< mvc:annotation-driven >
< mvc:message-converters register-defaults = "true" >
< bean class = "com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter" />
</ mvc:message-converters >
</ mvc:annotation-driven >
|
并且修改
1
|
data:"{\"stockCode\":\"601288\",\"startTime\":\"2011-11-10 09:05\",\"endTime\":\"2019-11-20 09:10\"}",
|
这样是没有问题的!
@RequestBody 注意的问题
1
|
contentType : "application/json" , //只能是这个
|
RequestBody 不能和form/data共存:
1
2
3
4
5
6
|
@RequestMapping (value = "/api/user/platform/report" , method = RequestMethod.POST)
public ReturnData reportPlatform(RequestParamBean bean) { //自定义接受实体RequestParamBean
logger.info( "--------------首次登陆开始----------------" );
try {
bean.getDeviceFigure();
|
-
Springboot
在接收前端实体时,可以在后端建立相应的对象来直接接受,在此可以不使用@RequestBody
(只能接收josn
的对象) -
@RequestPrama
接收单个字段,而非对象实体!
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/zz2580/article/details/84303190