第03章—打造RESTful风格API
spring boot 系列学习记录:http://www.cnblogs.com/jinxiaohang/p/8111057.html
码云源码地址:https://gitee.com/jinxiaohang/springboot
一、解释RESTful什么意思
套用一下百科的话:REST(英文:Representational State Transfer,简称REST,中文名RESTful)一种软件架
构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。
基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。
如要详细了解可参考:http://www.ruanyifeng.com/blog/2014/05/restful_api.html
二、快速实现RESTful风格API(功能没有实现)
添加entity包中添加User实体类
public class User { private String userId; private String username; private String password; public User() { } public User(String userId, String username, String password) { this.userId = userId; this.username = username; this.password = password; } public String getUserId() { return userId; } public void setUserId(String userId) { this.userId = userId; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
在controller包中添加User控制类
import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.List; @RestController @RequestMapping("/user/*") public class UserController { private final static List<User> userList = new ArrayList<>(); { userList.add(new User("1", "admin", "123456")); userList.add(new User("2", "jacks", "111111")); } @GetMapping("list") public List userList() { return userList; } @PostMapping("save") public boolean save(User user) { return userList.add(user); } @PutMapping("update") public boolean update(User user) { return userList.remove(user) && userList.add(user); } @DeleteMapping("delete") public boolean delete(@RequestBody List<User> users) { return userList.removeAll(users); } }
三、测试RESTful风格API
用火狐浏览器或者postmen等工具。
http://localhost:8080/user/list接口:通过get请求可以通过
http://localhost:8080/user/save接口:get请求不能通过,只能通过post请求通过。
其他接口需要对应类型的请求才能通过,RESTful API就是这样,不同功能的接口需要通过不同类型的请求访问。
下一章将学习SpringBoot整合MyBatis,实现本章接口具体功能。