实体类传递
首先我们在后端定义一个实体类,通过lombok插件重写 有参 无参 get set toString 方法,
然后前端发送数据,后端就会自动收到,然后属性填写
后端代码如下
@AllArgsConstructor
@Data
@NoArgsConstructor
public class role {
    private   String  name;
    private   String   skill;
    private  Integer  age;
    @Override
    public String toString() {
        return "role{" +
                "name='" + name + '\'' +
                ", skill='" + skill + '\'' +
                ", age=" + age +
                '}';
    }
}
实体类
然后是对应的映射
    @GetMapping("/role")
    public  void  getName4(role role){
        System.out.println(role);
    }
会输出前端装填的数据
前端的数据如下

请注意,前端和后端的name必须一样
但是前端后端不一样的话,我们可以使用 @RequestParam()来绑定前后的关系
嵌套的实体类
所谓嵌套实体类,请看如下结构
我们首先给出一个address类
@AllArgsConstructor
@NoArgsConstructor
@Data
public class address {
    private   String   address;
}
然后我们在 role类中定义它
@AllArgsConstructor
@Data
@NoArgsConstructor
public class role {
    private   String  name;
    private   String   skill;
    private  Integer  age;
    private   address address;
    @Override
    public String toString() {
        return "role{" +
                "name='" + name + '\'' +
                ", skill='" + skill + '\'' +
                ", age=" + age +
                ", address=" + address +
                '}';
    }
}
目标,在前端传递四个数据,包括 address

通过 address.address可以传递数据给后端
数组传值
首先我们完善后端的方法
@GetMapping("/shuzu")
public  void  getName5(String[] name){
     for (int i = 0; i <name.length;i++){
         System.out.println(name[i]);
     }
}
 
前端如下

请注意:我们需要的是 只要前端的name 和后端的数组名一致就可以了
输出结果如下
  
集合的传递
s首先给出后端代码
@GetMapping("/jihe")
 public  void  getName6(List<String> name){
 for (   String    i   : name){
     System.out.println(i);
 }
 
 
 
前端代码

为什么出错呢?
java.lang.IllegalStateException: No primary or single unique constructor found for interface java.util.List
大致是 前端传递数据,但是后端不知道这是数据,于是去创建集合,但是创建失败
于是我们只需要告诉后端,前面传递过来的是一个集合数据就可以了
只要添加
@RequestParam   就可以了 



















