• springMvc接口请求参数


    //作用:通常用在`Controller`里,用于设置访问路径
    @RequestMapping(
        value="访问路径",
        method=请求方式,
        params="请求参数"
    )

    一、接收表单参数

    `@RequestParam(value="表单参数名称", required=是否必须,defaultValue = "默认参数")`
    简单参数绑定(不加注解@RequestParam,名称与表单参数保持相同)

    - 如果客户端提交的表单参数名称,和Controller里方法参数名称一样,Spring会把表单数据直接绑定到方法参数上

    - SpringMVC会自动绑定同名参数,并自动转换类型

    绑定简单POJO对象(java对象接收,成员变量名一致)

    - 客户端提交的表单参数名称,必须等于JavaBean的属性名

    绑定复杂POJO

    - 通常把List、Map等放到POJO对象里

    - 客户端提交的表单参数名称,必须和POJO里的属性名称相等

    - 设置List的数据时,表单参数名称:属性名[索引].属性名

    - 设置Map的数据时,表单参数名称:属性名['key'].属性名

    <form action="${pageContext.request.contextPath}/param/complexPojo" method="post">
        <h5>vo里的user</h5>
        <input type="text" name="user.name" value="tom"><br>
        <input type="text" name="user.age" value="20"><br>
        <h5>vo里的userList</h5>
        <input type="text" name="userList[0].name" value="tom1"><br>
        <input type="text" name="userList[0].age" value="21"><br>
        <input type="text" name="userList[1].name" value="tom2"><br>
        <input type="text" name="userList[1].age" value="22"><br>
        <h5>vo里的userMap</h5>
        <input type="text" name="userMap['u1'].name" value="jack1"><br>
        <input type="text" name="userMap['u1'].age" value="31"><br>
        <input type="text" name="userMap['u2'].name" value="jack2"><br>
        <input type="text" name="userMap['u2'].age" value="32"><br>
        <br>
        <input type="submit" value="提交">
    </form>
    
    
    public class QueryVO {
        private User user;
        private List<User> userList;
        private Map<String, User> userMap;
    
        //get/set...
        //toString...
    }
    
    @RequestMapping("/complexPojo")
    public String pojoParam2(QueryVO vo){
        System.out.println(vo);
        return "success";
    }
    

      

    @RequestMapping

    • 语法:@RequestBody(requried=是否必须有请求体)

    • 作用位置:用于方法的参数上,表示把请求体的数据,赋值给方法参数

    • 要求:必须是POST方式提交

      • 只有POST方式提交,才有请求体;GET方式提交,没有请求体

    @RequestMapping("/body2")
    public String body2(@RequestBody User user){
        System.out.println(user);
        return "success";
    }

    @PathVariable

    @RequestMapping(value = "/pathVar/{id}",method = RequestMethod.GET)
    public String pathVar(@PathVariable("id") Integer id){
        System.out.println(id);
        return "success";
    }

    表单提交 formdata提交的用@requestParams 或者javabean对象绑定

    json提交的,后端用@requestbody接收json数据转成

  • 相关阅读:
    引用jar版本错误
    一次皆大欢喜的程序员跳槽加薪
    Netty
    JAVA笔记-如何将百万级数据高效的导出到Excel表单
    100个高质量Java开发者博客
    Stackoverflow上人气最旺的10个Java问题
    偏执却管用的10条Java编程技巧
    如何生成每秒百万级别的 HTTP 请求?
    Google浏览器Chrome安装失败,错误代码0xa0430721解决办法
    Redis介绍及常用命令
  • 原文地址:https://www.cnblogs.com/chenfx/p/14383684.html
Copyright © 2020-2023  润新知