建立三个restful接口 及Postman测试restful接口
前言:本文内容提示
在Idea上创建基于Spring Boot的web 项目,当客户端浏览器分别用get、put、post等访问该web服务资源时,服务器能做出正确的结果。
装Postman 软件,用Postman对你的web进行测试。
一、在IDEA上创建基于Spring Boot的web项目
建立项目的具体步骤见:
生成一个Spring Boot 项目
二、编码
1. 建包
演示的功能就是提供一个计数器功能,可以初始化计数器,修改计数器,查询计数器当前值。没有使用数据库,直接用一个单例类来模拟了,项目结构如下:
src—main—java—com.example.demo下,新建包名 bean、controller、manage、service;
分别新建java文件:Count、DemoController、DemoManage、DemoService
2. 具体代码
Count:
package com.example.demo.bean;
public class Count {
private int count;
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
}
DemoController:
package com.example.demo.controller;
import com.example.demo.bean.Count;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.example.demo.service.DemoService;
@RestController
public class DemoController {
@Autowired
DemoService demoService;
@RequestMapping(value = "/me/count", method = RequestMethod.PUT)
@ResponseBody
public void initCount(@RequestBody Count count){
demoService.initCount(count);
}
@RequestMapping(value = "/me/count", method = RequestMethod.POST)
@ResponseBody
public void modifyCount(@RequestBody Count count){
demoService.addCount(count);
}
@RequestMapping(value = "/me/count", method = RequestMethod.GET)
@ResponseBody
public Count getCount()
{
return demoService.getCount();
}
}
DemoManage:
package com.example.demo.manager;
public class DemoManager {
private int count = 0;
private static DemoManager instance = new DemoManager();
private DemoManager(){
}
public static DemoManager getInstance(){
return instance;
}
public synchronized void addCount(int i){
count = count + i;
}
public synchronized void minusCount(int i){
count = count -i;
}
public int getCount(){
return count;
}
public void initCount(int i){
count = i;
}
}
DemoService:
package com.example.demo.service;
import com.example.demo.manager.DemoManager;
import com.example.demo.bean.Count;
import org.springframework.stereotype.Service;
@Service
public class DemoService {
public void addCount(Count count){
if (count != null){
DemoManager.getInstance().addCount(count.getCount());
}
}
public void minusCount(Count count){
if (count != null) {
DemoManager.getInstance().minusCount(count.getCount());
}
}
public Count getCount()
{
Count count = new Count();
count.setCount(DemoManager.getInstance().getCount());
return count;
}
public void initCount(Count count){
if (count != null) {
DemoManager.getInstance().initCount(count.getCount());
}
}
}
三、运行结果
四、Postman测试restful接口
1. 何为Postman
Postman 是一个Chrome的一个插件工具,是一种常用的接口测试工具,可以发送几乎所有类型的HTTP请求。Postman适用于不同的操作系统,Postman Mac、Windows X32、Windows X64、Linux系统,还支持postman 浏览器扩展程序、postman chrome应用程序等。
2. 测试
1)确认web地址
链接端口号默认为8080;
URL:http://localhost:8080/me/count
地址 在 DemoController 里确认:
2)用get、put、post进行测试
打开postman并输入web地址,分别用get、put、post进行测试:
URL都是:/me/count,只是分PUT、POST和GET,其中PUT用于初始化,POST用于修改(这里修改是累加),GET用于查询。
① 测试 get 接口,会得到默认参数 0:
②
-
测试 put 接口,在下面选择body——raw——json,输入下列代码:
{
“count”: 100
}
无输出,如图:
-
再用 get 获取结果,结果改变
③
- 测试post接口,body代码不变:
- 再用get调用,结果变为200(累加:100+100):
小小的总结
Postman测试让我们直观的了解到程序运行是否能做出正确的响应;
Postman测试接口十分方便,是一个很好的测试工具。