zoukankan      html  css  js  c++  java
  • Spring MVC 形参类型

    spring mvc 形参类型

    1 没有占位符号的,形参的名字为参数的名称 请求路径为:organtrans/t1/t5?a=1(a为形参的的名称必须一致)

    @RequestMapping("/t5")
    @ResponseBody
    public String test5(int a)
    {
    return String.valueOf(a);
    }

    2 有占位符号的 请求路径为:organtrans/t1/t5/1/10(根据类型匹配方法)

    @RequestMapping("/t1/{pageIndex}/{pageSize}")
    public @ResponseBody String test1(@PathVariable("pageIndex") Integer pageIndex,
    @PathVariable("pageSize") Integer pageSize) {
    return MessageFormat.format("pageIndex{0},pageSize{1}", pageIndex, pageSize);

    }

    3 形参为Map的 这中类型一般为post 请求方式 请求参数需要转换为json 有对应的key 和value

    @RequestMapping("/t2")
    @ResponseBody
    public String test2(@RequestBody Map<String, String> parameterMap) {
    if (MapUtils.isNotEmpty(parameterMap)) {
    return parameterMap.get("abc");
    }
    return null;
    }

    3 形参为实体类的 如果是提供接口 就需要转换为json 格式的参数

    @RequestMapping("/t3")
    @ResponseBody
    public String test3(@RequestBody ContractInfoVo vo)
    {
    return JSONObject.toJSONString(vo);
    }


    如果是jsp获取js页面提交到controller 页面元素的name 要和实体类或者map 的key 一样这样mvc 会自动映射

    总结:spring mvc 形参没有list类型如果要有list 需要使用pojo 封装类型 ;  (spring mvc 低版本问题,新的可以,这个是很久的 不记得以前是什么版本了,现在用spring 4.3.17 可以)

     入参为List

    @PostMapping("/v1/property/ttt")
        public Integer test(@RequestBody List<Property> properties) {
            return properties.size();
        }

    构造入参:

  • 相关阅读:
    tomcat 自动部署代码
    weex Android
    视频大全
    sql语句
    来一个朴素的验证码小插件
    tcp通信客户端本地日志查看
    python练习题
    由count(sno)和count(cno)引发的思考
    centos7命令行和图形界面的相互切换(附centos7安装配置教程)
    Jenkins配置有用摘抄笔记
  • 原文地址:https://www.cnblogs.com/fanBlog/p/7459513.html
Copyright © 2011-2022 走看看