zoukankan      html  css  js  c++  java
  • SpringMVC 相关

    参数绑定

    简单类型参数绑定

    • 方法参数名称和请求参数名称一致,如url:xxx/rpdsearch?devName=123&devNum=0
    	@RequestMapping(value = "/rpdsearch", method = RequestMethod.GET)
    	public String rpdsearch(ModelMap map, String devName, Integer devNum){
                ...
            }
    
    • 方法参数名称和请求参数名称不一致时使用@RequestParam指定名称

    @RequestParam可以指定:参数名(value )、默认值(defaultValue )、存在(required)

    	@RequestMapping(value = "/rpdsearch", method = RequestMethod.GET)
    	public String rpdsearch(ModelMap map, @RequestParam(value = "devName", defaultValue = "")String name, @RequestParam(value = "devNum", defaultValue = "0")Integer num){
                ...
            }
    

    包装类型参数绑定

    • 请求参数id必须和实体类名称相同,因为springmvc是通过set方法赋值的

    参数中使用自定义类时会被springmvc的处理器映射器解析,并通过相关set方法绑定到类成员

    	@RequestMapping(value = "/rpdsearch", method = RequestMethod.GET)
    	public String rpdsearch(ModelMap map, Device device){
            }
    

    日常填坑

    • 参数绑定时,包装类型为null导致空指针异常,如xxx/rpdsearch?devNum=,devNum为Integer时为null,可指定默认值解决
    • 包装类型的参数绑定时,前台出入空值会造成400错误。解决方案是接收简单类型参数(因为可设置默认值,不会出现空值)再逐一赋值给包装类型,或者包装类型设置默认值??
  • 相关阅读:
    洛谷 P1508 Likecloud-吃、吃、吃
    Codevs 1158 尼克的任务
    2017.10.6 国庆清北 D6T2 同余方程组
    2017.10.6 国庆清北 D6T1 排序
    2017.10.3 国庆清北 D3T3 解迷游戏
    2017.10.3 国庆清北 D3T2 公交车
    2017.10.3 国庆清北 D3T1 括号序列
    2017.10.4 国庆清北 D4T1 财富
    2017.10.7 国庆清北 D7T2 第k大区间
    2017.10.7 国庆清北 D7T1 计数
  • 原文地址:https://www.cnblogs.com/xiongyungang/p/13875400.html
Copyright © 2011-2022 走看看