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注解完成日期参数格式转换

🎄路径参数

🥰总结


相关推荐
苹果醋343 分钟前
React源码02 - 基础知识 React API 一览
java·运维·spring boot·mysql·nginx
荆州克莱3 小时前
mysql中局部变量_MySQL中变量的总结
spring boot·spring·spring cloud·css3·技术
美团测试工程师3 小时前
Postman接口测试工具使用详解
测试工具·postman
武昌库里写JAVA4 小时前
Java成长之路(一)--SpringBoot基础学习--SpringBoot代码测试
java·开发语言·spring boot·学习·课程设计
Q_19284999064 小时前
基于Spring Boot的九州美食城商户一体化系统
java·spring boot·后端
Q_19284999064 小时前
基于Spring Boot的营销项目系统
spring boot
路在脚下@6 小时前
Spring Boot @Conditional注解
java·spring boot·spring
测试杂货铺6 小时前
如何用postman做接口自动化测试及完美的可视化报告?
自动化测试·软件测试·测试工具·职场和发展·jenkins·压力测试·postman
一二小选手6 小时前
Postman接口测试工具
java·测试工具·postman
陶庵看雪6 小时前
Spring Boot注解总结大全【案例详解,一眼秒懂】
java·spring boot·后端