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方法)

        

  • 相关阅读:
    lnmp配置Yii2规则
    vue中前进刷新、后退缓存,列表缓存和回到原位置
    vue 或者传统h5移动端input被输入法键盘挡住解决方法
    uni-app知识
    typescript
    flow
    js点击按钮分别实现全屏以及退出全屏的方法
    vue.config.js配置本地,测试,开发环境变量
    git常用指令
    Git指令
  • 原文地址:https://www.cnblogs.com/sjzxs/p/9502850.html
Copyright © 2011-2022 走看看