Spring Boot项目误将Integer类型写成int来进行传参

在处理项目中Idea中无报错

问题:

localhost:8080/param/m2在浏览器中输入:localhost:8080/param/m2

产生报错:

This application has no explicit mapping for /error, so you are seeing this as a fallback.

Tue Feb 27 20:55:33 GMT+08:00 2024

There was an unexpected error (type=Internal Server Error, status=500).

Optional int parameter 'id' is present but cannot be translated into a null value due to being declared as a primitive type. Consider declaring it as object wrapper for the corresponding primitive type.

原因为:Spring Boot项目误将Integer类型写成int来进行传参

该项目具体的代码为:(错误示范)

复制代码
@RestController
@RequestMapping("/param")
public class ParamController {

    @RequestMapping("/m1")
    public String m1(String name){
        return "这是你的姓名:"+name;
    }

    @RequestMapping("/m2")
    public String m2(String name,int id){  //错误代码,需要将int更改为Integer(包装类)
        return "序列号为:"+ id +"这是你的姓名:"+name;
    }
}

解决方案:

因此,正确的代码为:(正确示范)

复制代码
@RestController
@RequestMapping("/param")
public class ParamController {

    @RequestMapping("/m1")
    public String m1(String name){
        return "这是你的姓名:"+name;
    }

    @RequestMapping("/m2")
    public String m2(String name,Integer id){  
        return "序列号为:"+ id +"这是你的姓名:"+name;
    }
}

重启程序,在浏览器输入:localhost:8080/param/m2?id=5&name=zhangsan

运行结果为:

在Postman中测试为:

Bug解决!!

相关推荐
qfljg14 分钟前
OpenRewrite 实战指南
java
Sylvia33.19 分钟前
LOL实时数据接入深度解析:从WebSocket到完整数据模型
java·网络·python·websocket·网络协议
2601_962071576 小时前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
zww89491116 小时前
酒馆预约系统开发实战:从需求分析到上线全流程指南
java·eclipse
zww89491119 小时前
匿名树洞系统开发实战:从需求分析到部署指南
java·eclipse
行百里er9 小时前
Gateway 上别硬塞 MVC:DeferredImportSelector 看菜下锅
spring boot·后端·开源
黑马程序员毕设10 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
木井巳10 小时前
【BFS/DFS 解决 FloodFill 算法】太平洋大西洋水流问题
java·算法·leetcode·深度优先·广度优先·宽度优先·推荐算法
白山编程大哥10 小时前
Java 集合算法:从排序、查找到底层原理的实战指南
java·python·算法
devpotato11 小时前
缓存与数据库更新顺序不一致问题
java·数据库·redis