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,实现本章接口具体功能。

最新文章

  1. angular的$filter服务
  2. shell生成指定范围内的随机数
  3. stm32 u8 u16 u32
  4. 【前台 】字符串和js对象的相互转化
  5. JBoss JMX登录需要用户名密码的解决办法
  6. DXGI_FORMAT_R8G8B8A8_UNORM_SRGB
  7. iOS 沙盒路径操作:新建/删除文件和文件夹
  8. (原+转)Ubuntu下安装understand及在启动器中增加快捷方式
  9. Hadoop 2.x从零基础到挑战百万年薪第一季
  10. java模式:模板模式的简单理解
  11. JDBC连接SQL Server 2005步骤详解
  12. 【Netty】ChannelHandler和codec
  13. 将代码托管到github服务器之SSH验证
  14. oracle 夸服务器、数据库查询
  15. @cacheevict 清除多个key
  16. Pytorch安装(基于anaconda虚拟环境)
  17. Spring 学习教程(三):Spring MVC
  18. 一 Struts框架(上)
  19. django by example 第四章 扩展 User 模型( model)
  20. Servlet----------在使用doGet()和doPost()是如何处理中文乱码

热门文章

  1. zookeeper(五):Zookeeper中的Access Control(ACL)
  2. AES加密在windows与linux平台下显示结果不同,解决方案
  3. tomcat web 修改logo
  4. azkaban入门中遇到的问题
  5. nginx调用php-fpm出错解决方法和nginx配置详解
  6. adb 安装apk到指定手机 登录shell
  7. php 合并数组的方法 非array_merge
  8. 第二百三十二节,Bootstrap排版样式
  9. 网页端的utf8和gb2312 之间关于osd 传参数的乱码问题
  10. 2017 ACM区域赛(西安) 参赛流水账