• 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();
        }

    构造入参:

  • 相关阅读:
    linux下文件编码转换
    linux下打开文件数
    从hive0.7.1升级到hive0.8.1
    hive使用过程中碰到的问题
    JVM和GC
    代码生成器开发设计
    开源代码生成器:SmartCode [转]
    byte与其他类型的转换
    测试版天思.net代码生成器
    [源码试]写xml的解析器
  • 原文地址:https://www.cnblogs.com/fanBlog/p/7459513.html
Copyright © 2020-2023  润新知