解决Controller接收JS参数为null及常见获取方式
本文分析Controller接收JS参数为null的常见原因,重点指出数据类型不匹配(如JS传数字、后端用Long接收)导致的转换失败,建议改为String或确保JS传整形。同时总结后端获取前端值的四种方法:request.getParameter、方法参数直接接收、@RequestParam注解及对象接收,供开发者参考。
在开发中,Controller接收JS传递的参数是一个常见场景。
有时会出现这种情况:JS端确认数值存在,参数名称也完全一致,且请求头中也能观察到该参数已成功发送,但Controller端接收到的值却为null。


这通常与参数的数据类型有关。如果Controller期望接收的是字符串类型,而JS传递的是Long型数值,可能会导致接收失败。

将Controller接收参数改为String类型,通常可以解决此问题。
或者,JS端直接传递整形数字,而不是字符串格式。
例如,定义 var areaId=1000000; 并将其作为ajax请求的参数进行传递。
接下来探讨Controller如何获取JS传递的值。
后端获取前端传值的方法有多种,下面介绍几种常见方式。
具体到Controller层,获取JS传递值的方法如下。
第一种方法
通过 request.getParameter("传过来的值的名字"); 获取。
如图:


第二种方法
直接在方法的参数列表中声明,如果返回的是id,可以在方法参数列表中写 int id 来接收。
如图:


第三种方法
与第二种类似,但第二种要求参数名必须与JS传递的名字一致,而第三种方法可以自定义参数名,例如使用 @RequestParam(int id);。
如图:

第四种方法
同样写在方法的参数列表中,适用于数据较多的情况,如表单提交,此时可以通过对象来接收数据。
如图:


总结
以上为个人经验总结,希望能给大家一个参考,也希望大家多多支持本站。
定制 Quill.js 主题样式:修改默认 CSS 与添加自定义类名
2026-11-04 11:21:35
混淆JS代码怎么在线反混淆并格式化阅读
2026-11-03 21:46:39
JS在线编辑器代码报错怎么调试?控制台使用技巧
2026-11-03 21:24:56
从 marked.js 旧版本升级到最新版:API 变更与迁移指南
2026-11-03 17:38:17
JS富文本编辑器Quill与代码编辑器CodeMirror的区别及应用场景
2026-11-03 16:52:09
