Postman接口测试工具,提高SpringBoot开发效率

文章目录

🌺工具---postman

postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件

⭐作用

常用于进行接口测试

🏳️‍🌈安装

我把安装包传到网盘里面了,点击exe文件就可以下载,需要的同学请自取

链接

🎈创建工作空间



点击CTRL+S进行保存

这样子即使我们关了,也能够访问

🎄简单参数

⭐原始方式

在原始的web程序中,获取请求参数,需要通过HttpServletRequest对象手动获取

🎈我们建立springboot项目,输入下面的代码

java 复制代码
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


@RestController
public class RequestController  {
    //原始方法
    //设置注解,指定请求路径
    @RequestMapping("/simpleParam")
    public String simpleParam(HttpServletRequest request){
        //获取请求参数
        String name=request.getParameter("name");
        String ageStr=request.getParameter("age");

        int age=Integer.parseInt(ageStr);
        System.out.println(name+":"+age);
        return "OK";
    }
}

🎈运行

这时候我们打开postman(不要终止项目运行)

输入http://localhost:8080/simpleParam?*name=Tom* &age=10

然后点击send

⭐SpringBoot方式

只需要保证参数名和变量名相同,定义形参即可接收参数

java 复制代码
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


@RestController
public class RequestController  {
    //原始方法
    //设置注解,指定请求路径
    @RequestMapping("/simpleParam")
    public String simpleParam(String name,Integer age){
        //SpringBoot方式
        System.out.println(name+":"+age);
        return "OK";
    }
}

🎄实体参数

🏳️‍🌈简单实体参数

请求参数名与形参对象属性名相同,定义POJO接收即可

⭐代码实现

创建类User.java

java 复制代码
public class User {
    private String name;
    private Integer age;

    public String getName() {
        return name;
    }

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

    public Integer getAge() {
        return age;
    }

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

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

创建类RequestController.Java

java 复制代码
import com.example.springbootwebreqresp.pojo.User;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


@RestController
public class RequestController  {

    //实体参数
    //设置注解,指定请求路径
    @RequestMapping("/simplePojo")
    public String simplePojo(User user){
        System.out.println(user);
        return "OK";
    }
}

🏳️‍🌈复杂实体参数

请求参数名与形参对象属性名相同,安装对象层次结构关系即可接收嵌套POJO属性参数

⭐代码实现

创建类User.java

java 复制代码
package com.example.springbootwebreqresp.pojo;

public class User {
    private String name;
    private Integer age;

    private Address address;

    public String getName() {
        return name;
    }

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

    public Integer getAge() {
        return age;
    }

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

    public Address getAddress() {
        return address;
    }

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

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

创建类Address.java

java 复制代码
package com.example.springbootwebreqresp.pojo;

public class Address {
    private String province;
    private String 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;
    }

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

创建类RequestController.Java

java 复制代码
package com.example.springbootwebreqresp.controller;

import com.example.springbootwebreqresp.pojo.User;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


    @RequestMapping("/complexPojo")
    public String complexPojo(User user){
        System.out.println(user);
        return "OK";
    }
}

🎄数组集合参数

⭐使用数组来接收

请求参数名与形参数组名相同且请求参数为多个,定义数组类型形参即可接收参数

java 复制代码
package com.example.springbootwebreqresp.controller;

import com.example.springbootwebreqresp.pojo.User;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.lang.reflect.Array;
import java.util.Arrays;


@RestController
public class RequestController  {
    @RequestMapping("/arrayParam")
    public String arrayParam(String[] hobby){
        System.out.println(Arrays.toString(hobby));
        return "OK";
    }
}

⭐使用集合来接收

请求参数名与形参集合名称相同且请求参数为多个,@RequestParam绑定参数关系

java 复制代码
package com.example.springbootwebreqresp.controller;

import com.example.springbootwebreqresp.pojo.User;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.List;


@RestController
public class RequestController  {
    @RequestMapping("/arrayParam")
    public String arrayParam(@RequestParam List<String>hobby){
        System.out.println(hobby);
        return "OK";
    }
}

🎆小结

🎄日期参数

使用@DateTimeFormat注解完成日期参数格式转换

🎄路径参数

🥰总结


相关推荐
仰望星空@脚踏实地11 分钟前
Spring Boot Web 服务单元测试设计指南
spring boot·后端·单元测试
吴free44 分钟前
mac电脑wireshark快速实现http接口抓包
网络·测试工具·http·wireshark
一勺菠萝丶2 小时前
Spring Boot + MyBatis/MyBatis Plus:XML中循环处理List参数的终极指南
xml·spring boot·mybatis
RainbowSea3 小时前
问题:后端由于字符内容过长,前端展示精度丢失修复
java·spring boot·后端
风象南3 小时前
SpringBoot 控制器的动态注册与卸载
java·spring boot·后端
我是一只代码狗4 小时前
springboot中使用线程池
java·spring boot·后端
hello早上好4 小时前
JDK 代理原理
java·spring boot·spring
PanZonghui4 小时前
Centos项目部署之运行SpringBoot打包后的jar文件
linux·spring boot
沉着的码农5 小时前
【设计模式】基于责任链模式的参数校验
java·spring boot·分布式
zyxzyx6665 小时前
Flyway 介绍以及与 Spring Boot 集成指南
spring boot·笔记