SpringBoot POST请求接收多个参数值为null问题

 更新时间:2025年02月12日 09:33:18   作者:老司机张师傅  
SpringBoot接口中POST请求接收JSON数据时,使用简单类型接收会报null,需要封装成实体类或使用Map(并注明泛型)接收,并且使用@RequestBody注解

问题描述

SpringBoot接口使用Post请求接收前端的JSON数据写了多个参数

无论怎么写获取到的数据都是null

      $.ajax({
                            url: "login4",
                            param: JSON.stringify({
                                "name": "name",
                                "age": 10
                            }),
                            type: "post",
                            dataType: "json",
                            success: function (data) {
                            },
                            error: function (data) {
                            }
                        });
    @PostMapping("login4")
    public void login4(String name, Integer age){
        System.out.println("login3");
        System.out.println(name + " -- " + age);
    }

原因分析

POST请求接收JSON数据时使用简单类型(Integer、String)等不能自动填充数据

必须要封装成实体类或者使用Map接收

而且使用Map接收时还要注明泛型

解决方案

类似于以下这种方式

封装一个实体类(实体类的属性名要与前端请求参数对应)或使用Map<String,Object>

前面加上RequestBody注解就能获取到了

    @RequestMapping("/saveGrAuditLog")
    public void auditUploads(@RequestBody AuditRequestEntity auditRequestEntity, HttpServletRequest request){
        WriteLogParam writeLogParam = new WriteLogParam();
        writeLogParam.setNote(auditRequestEntity.getNote());
        writeLogParam.setOpterationType(auditRequestEntity.getOpterationType());
        writeLogParam.setOptName(auditRequestEntity.getOptName());
        writeLogParam.setResourceId(auditRequestEntity.getResourceId());
        writeLogParam.setResourceName(auditRequestEntity.getResourceName());
        log.info("******params >> "+ JSONUtil.toJsonStr(writeLogParam));
        AuditLogRequestTwo.addAuditNew(request,auditRequestEntity.getParams(),auditRequestEntity.getOptUrl(),auditRequestEntity.getResult(),writeLogParam);
    }

总结

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

相关文章

  • 解决springboot configuration processor对maven子模块不起作用的问题

    解决springboot configuration processor对maven子模块不起作用的问题

    这篇文章主要介绍了解决springboot configuration processor对maven子模块不起作用的问题,本文通过图文实例代码给大家讲解的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • Spring Boot配置动态更新问题

    Spring Boot配置动态更新问题

    这篇文章主要介绍了Spring Boot配置动态更新问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • spring boot使用自定义注解做AOP的案例代码

    spring boot使用自定义注解做AOP的案例代码

    这篇文章主要介绍了spring boot使用自定义注解做AOP的案例代码,代码简单易懂,通过创建一个自定注解,接收一个传值type,感兴趣的朋友一起看看吧
    2024-06-06
  • Java中Tuple的功能及使用详解

    Java中Tuple的功能及使用详解

    Java中的Tuple是一种非常有用的数据结构,它可以让开发者在处理多个数据元素时更加方便和高效,通过Tuple,我们可以将多个变量打包成一个对象,从而减少了代码量,提高了代码可读性,这篇文章主要介绍了Java中Tuple的功能及使用场景,需要的朋友可以参考下
    2024-01-01
  • Java中两种基本的输入方式小结

    Java中两种基本的输入方式小结

    这篇文章主要介绍了Java中两种基本的输入方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • SpringBoot自动配置类加载顺序与优先级

    SpringBoot自动配置类加载顺序与优先级

    本文详细介绍了Spring Boot自动配置类的加载顺序与优先级,首先说明了加载顺序的重要性及典型问题,然后拆解了Spring Boot的默认优先级体系,需要的朋友可以参考下
    2026-04-04
  • SpringBoot3.0集成MybatisPlus的实现方法

    SpringBoot3.0集成MybatisPlus的实现方法

    本文主要介绍了SpringBoot3.0集成MybatisPlus的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • SpringBoot 中常用注解及各种注解作用

    SpringBoot 中常用注解及各种注解作用

    本篇文章将介绍几种SpringBoot 中常用注解及各个注解的作用,感兴趣的朋友跟随脚本之家小编一起学习吧
    2018-03-03
  • Netty实战源码解析NIO编程

    Netty实战源码解析NIO编程

    这篇文章主要为大家介绍了Netty实战源码解析NIO编程的核心组件及关系详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • SSL证书部署+SpringBoot实现HTTPS安全访问的操作方法

    SSL证书部署+SpringBoot实现HTTPS安全访问的操作方法

    文章介绍了SSL和HTTPS的工作原理,包括握手阶段和安全数据传输阶段,通过模拟HTTPS请求,展示了如何生成自签名证书并配置Spring Boot应用程序以支持HTTPS,总结指出,SSL和HTTPS对于保护网络安全至关重要,感兴趣的朋友一起看看吧
    2025-02-02

最新评论