解决@RequestBody部分属性丢失的问题

 更新时间:2021年08月23日 17:30:11   作者:Ellie_love  
这篇文章主要介绍了解决@RequestBody部分属性丢失的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

@RequestBody部分属性丢失

问题描述

JavaBean实现

public class VerifyNewFriendApplyReq implements Serializable {
    /**
     * 申请ID
     */
    private Long applyId;
    /**
     * 审核结果 true:同意 false:拒绝
     */
    private Boolean isAccept;
    public Long getApplyId() {
        return applyId;
    }
    public void setApplyId(Long applyId) {
        this.applyId = applyId;
    }
    public Boolean getAccept() {
        return isAccept;
    }
    public void setAccept(Boolean accept) {
        isAccept = accept;
    }
}

Controller实现

@RequestMapping(value = "/v0.1/verifyNewFriendApply", method = RequestMethod.POST)
    @ResponseBody
    public ImResponse verifyNewFriendApply(@RequestBody VerifyNewFriendApplyReq reqDto) throws Exception {
        Boolean result = friendApi.verifyNewFriendApply(reqDto);
        return new ImResponse(SystemContext.getSystemProperty().getReqId(), result);
    }

postman接口请求展示

在这里插入图片描述

结果发送请求时,在后台只能接收到aplyId字段的值,拿不到isAccept字段的值,检查后我们发现,在IDEA中,对于布尔类型的isXXX变量,在自动生成getter和setter方法时,会去除is标识,如图所示

在这里插入图片描述

所以@RequestBody在接收解析时,不会执行getAccept()方法,没有找到匹配的getIsAccept()方法,就会是null。

结论

注意:对于布尔类型的isXXX变量,在自动生成getter和setter方法时,会去除is标识。

springboot @RequestBody注入属性为空

对象属性为

private String rEngIds;

Controller中用@RequestBody注解接收

前端的json属性也是一样的rEngIds

但是死活映射不进

我的解决办法

改属性名:r_engIds完事儿啦~

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 浅谈SpringBoot实现异步调用的几种方式

    浅谈SpringBoot实现异步调用的几种方式

    本文主要介绍了浅谈SpringBoot实现异步调用的几种方式,主要包括CompletableFuture异步任务,基于@Async异步任务, TaskExecutor异步任务,感兴趣的可以了解一下
    2023-11-11
  • 扩展tk.mybatis的流式查询功能实现

    扩展tk.mybatis的流式查询功能实现

    mybatis查询默认是一次获取全部,如果数据过于庞大,就会导致OOM问题,本文就介绍了tk.mybatis 流式查询,具有一定的参考价值,感兴趣的可以了解一下
    2021-12-12
  • SpringMVC 拦截器不拦截静态资源的三种处理方式方法

    SpringMVC 拦截器不拦截静态资源的三种处理方式方法

    本篇文章主要介绍了SpringMVC 拦截器不拦截静态资源的三种处理方式方法,详细的介绍了三种方法,有兴趣的可以了解一下。
    2017-01-01
  • win10安装JDK14.0.2的详细安装过程

    win10安装JDK14.0.2的详细安装过程

    这篇文章主要介绍了win10安装JDK14.0.2的详细安装过程的相关资料,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Java图像处理之获取用户感兴趣的区域

    Java图像处理之获取用户感兴趣的区域

    OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它提供了很多函数,这些函数非常高效地实现了计算机视觉算法。本文将利用OpenCV实现获取用户感兴趣的区域,从而达到抠图效果
    2022-07-07
  • Java超详细讲解抽象类的原理与用法

    Java超详细讲解抽象类的原理与用法

    对于面向对象编程来说,抽象是它的一大特征之一,在Java中可以通过两种形式来体现OOP的抽象:接口和抽象类,下面这篇文章主要给大家介绍了关于Java抽象类相关资料,需要的朋友可以参考下
    2022-05-05
  • Java 替换空格

    Java 替换空格

    本文主要介绍了Java中替换空格的方法。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • SpringBoot注解@EnableScheduling定时任务详细解析

    SpringBoot注解@EnableScheduling定时任务详细解析

    这篇文章主要介绍了SpringBoot注解@EnableScheduling定时任务详细解析,@EnableScheduling 开启对定时任务的支持,启动类里面使用@EnableScheduling 注解开启功能,自动扫描,需要的朋友可以参考下
    2024-01-01
  • java中处理json各种各样的转换方法(推荐)

    java中处理json各种各样的转换方法(推荐)

    下面小编就为大家分享一篇java中处理json各种各样的转换方法小结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-11-11
  • 详解Java正则表达式中Pattern类和Matcher类

    详解Java正则表达式中Pattern类和Matcher类

    java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包。包括两个类Pattern和Matcher Pattern,Pattern是一个正则表达式经编译后的表现模式。Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符串展开匹配检查。
    2016-12-12

最新评论