好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

解决@RequestBody使用不能class类型匹配的问题

@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

查看更多关于解决@RequestBody使用不能class类型匹配的问题的详细内容...

  阅读:19次