zoukankan      html  css  js  c++  java
  • Controller 获取前端数据

    默认支持的类型

    在controller的方法的形参中直接定义上面这些类型的参数,springmvc会自动绑定。
    HttpServletRequest对象
    HttpServletResponse对象
    HttpSession对象
    Model/ModelMap对象
    

    简单类型的参数绑定

    直接在controller中定义一个变量,但是此种传输方式有一个限制就是参数名和请求中的参数名必须保持一致,否则是接收不到数据的。
    public String regist(Integer id){}
    

    form-data

    通过form-data的方式发送请求,参数是通过key-value的形式,在controller中通过@requestparam注解的 方式就可以取到值:

    @RequestParam注解用来接收地址中的参数
    @RequestParam(value = "name", required = false,defaultValue="aaa") String name
    

    json

    在发送数据时,data键的值一定要写成JSON.stringify(json),将数据转换成json格式

    1、以RequestParam接收:@RequestParam ("id") int id    //@RequestParam注解用来接收地址中的参数
    
    2、以实体类方式接收json对象:@RequestBody User user    //@RequestBody注解用来接收request的body中的参数(可以接收json格式的数据)
    
    3、以Map接收json对象:@RequestBody Map<String, Object> map
    
    4、以List接收:@RequestBody List<User> list
    
    5、@PathVariable注解可以用一个模型来接收地址栏中的参数:public String getUserInfo(@PathVariable User user) {}
    
    注:@RequestBody:将json数据转换成bean对象    @ResponseBody:将bean对象转换成json数据
    

    请求路径参数 /url/{id}

    url:http://localhost:8080/demo/123?name=ld
        @GetMapping("/demo/{id}")
        public void demo(@PathVariable(name = "id") String id, @RequestParam(name = "name") String name) {
            System.out.println("id="+id);    //123
            System.out.println("name="+name);    //ld
        }
    
  • 相关阅读:
    Android Architecture Components
    adb命令
    Dagger2 scope
    Dagger2学习资源
    Dependency Injection学习笔记
    什么是ADB
    使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露
    Dagger学习笔记
    linux & shell & nginx & Docker Kubernetes
    Go 目录
  • 原文地址:https://www.cnblogs.com/loveer/p/11358417.html
Copyright © 2011-2022 走看看