springboot03(请求和响应)

一、@RequestMapping("/user"):请求映射路径的解析:

  • 总结:一个"公共"的请求路径"前缀"

1.1代码块解析:

有@RequestMapping("/user")和@RequestMapping("/save")/ @RequestMapping("/delete")

@Controller
@RequestMapping("/user")
public class UserController {
    @RequestMapping("/save")
    @ResponseBody
    public String save(){
        System.out.println("User Save...");
        return "{User Save...}";
    }

    @RequestMapping("/delete")
    @ResponseBody
    public String delete(){
        System.out.println("User Delete...");
        return "{User Delete...}";
    }

所以在地址搜索:

二、请求参数

2.1 _"普通参数"的Get和Post方法(‘请求参数名’和‘代码的形参相同’)

*Get

*Post

2.2_"普通参数"的Get和Post方法(‘请求参数名’和‘代码的形参"不"相同’的情况)

解决:加一个@RequestParam("name")的注解

2.3_POJO参数

User的代码块
public class User {
    private String name;
    private int age;


    @Override
    public String toString() {
        return "User{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }


    public User(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public User() {
    }



    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

2.4_嵌套POJO参数

这个和POJO就差在"传入的形参"

用PostMan测试"嵌套POJO"

输出结果

User代码块
public class User {

    private String name;
    private int age;
    private Address address;

    public Address getAddress() {
        return address;
    }

    public void setAddress(Address address) {
        this.address = address;
    }


    public User(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public User() {
    }



    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}
内部嵌套Address的的代码块
public class Address {
    private String province ;
    private String city;

    @Override
    public String toString() {
        return "Address{" +
                "province='" + province + '\'' +
                ", city='" + city + '\'' +
                '}';
    }

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }
}

2.5_数组参数(必须要以代码"形参定义"为输入标准)

用PostMan测试:

测试结果:

2.5_集合参数:(集合和数组就差在一个"@RequesParam"注解上)

用PostMan测试:

测试结果:

三、代码总结:

@Controller
public class UserController {
    @RequestMapping("/commonParam")
    @ResponseBody
    public String commonParam(String name, int age) {
        System.out.println("--> 普通参数传递:" + name);
        System.out.println("--> 普通参数传递:" + age);
        System.out.println("user_CommonParam");
        return "{molder:user_CommonParam}";
    }

    @RequestMapping("/commonParamDifferName")
    @ResponseBody
    public String commonParamDifferName(@RequestParam("name")String userName, int age) {
        System.out.println("--> 普通参数传递:" + userName);
        System.out.println("--> 普通参数传递:" + age);
        System.out.println("user_CommonParam");
        System.out.println("--------");
        return "{molder:user_CommonParam}";
    }


    //POJO参数(传入实体类)
    @RequestMapping("/pojoParam")
    @ResponseBody
    public String pojoParam(User user) { //这个User里面有name和age的成员变量
        System.out.println("--> POJO参数传递pojoParam:" + user);
        System.out.println("--------");
        return "{molder:user_CommonParam}";
    }

    //嵌套POJO参数
    @RequestMapping("/pojoContainParam")
    @ResponseBody
    public String pojoContainParam(User user) { //这个User里面有name和age的成员变量,还有一个类Address
        System.out.println("--> 嵌套POJO参数传递pojoContainParam:" + user);
        System.out.println("--------");
        return "{molder:user_CommonParam}";
    }

    //数组参数
    @RequestMapping("/arrayParam")
    @ResponseBody
    public String arrayParam(String[] likes) { //需要以likes为头,传入数据
        System.out.println("--> 数组参数:" + Arrays.toString(likes));
        System.out.println("--------");
        return "{molder:user_CommonParam}";
    }

    //集合参数
    @RequestMapping("/listParam")
    @ResponseBody
    public String listParam(@RequestParam List<String> likes) { //需要以likes为头,传入数据
        System.out.println("--> 集合参数:" + likes);
        System.out.println("--------");
        return "{molder:user_CommonParam}";
    }
}

posted on   陈嘻嘻-  阅读(141)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示