SpringMVC注解@RequestParam全面解析
2016-05-24 16:20
330 查看
一、基本使用,获取提交的参数
二、异常情况处理
1、可以对传入参数指定参数名
错误信息:
HTTP Status 400 - Required String parameter 'aa' is not present
2、可以通过required=false或者true来要求@RequestParam配置的前端参数是否一定要传
3、如果用@RequestMapping注解的参数是int基本类型,但是required=false,这时如果不传参数值会报错,因为不传值,会赋值为null给int,这个不可以
解决方法:
“Consider declaring it as object wrapper for the corresponding primitive type.”建议使用包装类型代替基本类型,如使用“Integer”代替“int”
@RequestMapping("testRequestParam") public String filesUpload(@RequestParam String inputStr, HttpServletRequest request) { System.out.println(inputStr); int inputInt = Integer.valueOf(request.getParameter("inputInt")); System.out.println(inputInt); // ......省略 return "index"; }
<form action="/gadget/testRequestParam" method="post"> 参数inputStr:<input type="text" name="inputStr"> 参数intputInt:<input type="text" name="inputInt"> </form>
二、异常情况处理
1、可以对传入参数指定参数名
@RequestParam String inputStr // 下面的对传入参数指定为aa,如果前端不传aa参数名,会报错 @RequestParam(value="aa") String inputStr
错误信息:
HTTP Status 400 - Required String parameter 'aa' is not present
2、可以通过required=false或者true来要求@RequestParam配置的前端参数是否一定要传
// required=false表示不传的话,会给参数赋值为null,required=true就是必须要有 @RequestMapping("testRequestParam") public String filesUpload(@RequestParam(value="aa", required=true) String inputStr, HttpServletRequest request)
3、如果用@RequestMapping注解的参数是int基本类型,但是required=false,这时如果不传参数值会报错,因为不传值,会赋值为null给int,这个不可以
@RequestMapping("testRequestParam") public String filesUpload(@RequestParam(value="aa", required=true) String inputStr, @RequestParam(value="inputInt", required=false) int inputInt ,HttpServletRequest request) { // ......省略 return "index"; }
解决方法:
“Consider declaring it as object wrapper for the corresponding primitive type.”建议使用包装类型代替基本类型,如使用“Integer”代替“int”
相关文章推荐
- java -查看编译当前class的JDK版本
- 个人学习-java-反射
- SSM +Maven 实现 三级联动 无刷新
- java实现文件断点续传下载功能
- java 数字时间年月日等 格式化format 输出
- hbase Java API 简介
- 【Java基础】异常处理与输入输出流
- 建立spring-framework源码工程
- 【Java基础】字符串与数组
- MyBatis学习教程(八)-Mybatis3.x与Spring4.x整合图文详解
- Eclipse 批量转换文件编码
- Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
- maven工程中报Missing artifact jdk.tools:jdk.tools
- 使用elasticsearch 2.1 和 java客户端 jest 建立springmvc项目
- Java注解一谈
- java注解框架
- 转发下Spring英文文档 学习编程English也要学好 因为要看原版的英文文档
- java的类变量、实例变量、局部变量和参数变量
- Java多线程看着一篇足够了!
- Java_通过反射调用类中的方法