zoukankan      html  css  js  c++  java
  • SpringMVC七种参数绑定简单介绍

    a. 默认支持的类型:
            httpServletRequest, httpservletresponse, httpsession, model
            看自己需要, 如果需要用就加上,不需要用就可以不加.
        b. 简单类型:string, double, float, long, boolean等
            要求: 接收的类型的变量名称必须等于页面input框的name属性值
        c. pojo类型:
            springMvc可以直接接收pojo类型数据, 要求pojo的属性名称必须等于页面input框的name属性值
        d. pojo的包装类型
            要求: 页面上input框的name属性值, 必须得用pojo的属性.属性.属性.....
        e. 自定义转换器converter
            作用: 进行手动类型转换, 因为springMvc只能自动转换简单类型, 对于例如string转date无法转换
                所以我们需要手动进行类型转换, 编写自定义转换器, 在contrller方法接收到参数前进行
                类型转换.(此案例已经在其他贴子展示:https://www.cnblogs.com/sjzxs/p/9498625.html)
        f. 数组:
            需求:批量删除
            要求:页面上input框的name属性值必须等于接受的变量名称, 如果数组封装在pojo中, 那么pojo中的属性名称必须等于
                页面上input框的name属性值

      案例:

    @RequestMapping("/queryitem")

    public String queryItem(QueryVo queryVo, String[] ids) {

    System.out.println(queryVo.getItems().getName());

    System.out.println(queryVo.getItems().getPrice());

    System.out.println(ids.toString());

    return null;

    }

    或者直接将数组封装到某个pojo中然后生成setget方法。


        g. list集合
            需求: 批量修改
            要求: 页面上input框的name属性值必须等于接收的属性名称+[循环下标]+.+集合泛型pojo的属性名称
                controller方法必须接收pojo, 所以可以将list集合封装到QueryVo中.

       List中存放对象,并将定义的List放在包装类中,使用包装pojo对象接收。
       jsp页面的name属性字段需要简单调整一下<input type="text" name=" itemsList[0].id" value="${item.id}"/>(items是一个pojo,自定义了一个po类里面包含pojo的包装类型(itemsList),生成setget方法)

        

  • 相关阅读:
    由于挂载的nfs存储目录掉下线,导致创建VM时,无法创建
    使用RVM更新Ruby 版本
    安装logstash+kibana+elasticsearch+redis搭建集中式日志分析平台
    Topic modeling【经典模型】
    [第1集] 课程目标,数据类型,运算,变量
    Juint test Case 的2种使用方式
    getJSON方式请求服务器
    Web项目改名的带来的404not found问题
    JavaWeb EL表达式, JSTL标签及过滤器综合学习
    HashMap的几种遍历方式(转载)
  • 原文地址:https://www.cnblogs.com/sjzxs/p/9502850.html
Copyright © 2011-2022 走看看