1.简单参数
1.1原始方法
说明:获取请求传来的name参数,age参数的值。
//简单方式
@RestController
public class RequestController {
    @GetMapping("/books")
    public String simpleParam(HttpServletRequest request) {
        //获取请求参数 name和age
        String name = request.getParameter("name");
        String ageStr = request.getParameter("age");
        int age = Integer.parseInt(ageStr);
        System.out.println(name+":"+age);
        return  "ok";
    }
} 
 
1.2SpringBoot方法
说明:也是获取请求传来的name参数,age参数的值。
    @GetMapping("/books")
    public String simpleParam(String name, Integer age) {
        System.out.println(name + ":" + age);
        return "ok";
    }
 
注意:前端传的参数名与形参变量名相同,定义形参即可接受参数,并且sringboot会自动进行转化,参数不能一一对应就不会成功,也不会报错,只会将值变成空。

 1.3@RequestParam
 
说明:请求参数和方法形式参数不匹配,可以使用@RequestParam完成映射
    //    如果SpringBoot方式,请求参数和方法形式参数不匹配,可以使用@RequestParam完成映射
    @GetMapping("/login")
//    name随便写,请求参数名为"name"
//    如果不加required,那么默认值就是true,如果required为false,那么代表参数可以不传入
    public String simpleParam(@RequestParam(name="name",required = false) String username) {
        System.out.println("name:" + username);
        return "ok";
    } 


2.实体参数
说明:简单实体对象:请求参数名与形参对象属性名相同,定义domain类即可;
复杂实体对象:请求参数名与形参对象属性名相同,按照对象层次结构关系即可接受嵌套属性参数。(对象就是一个类)
2.1定义一个Use类
package com.forever.domain;
public class User {
    private String name;
    private String age;
    @Override
    public String toString() {
        return "User{" +
                "name='" + name + '\'' +
                ", age='" + age + '\'' +
                '}';
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getAge() {
        return age;
    }
    public void setAge(String age) {
        this.age = age;
    }
}
 
2.2控制类
说明:拿到封装请求(请求封装成类)
@RestController
public class RequestController {
    @RequestMapping("/man")
    public  String simpleParam(User user){
        System.out.println(user);
        return  "ok";
    } 





















