zoukankan      html  css  js  c++  java
  • 第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,实现本章接口具体功能。

  • 相关阅读:
    ButterKnife的使用以及不能自动生成代码问题的解决
    Android事件传递机制
    Java中四种引用类型
    Swiper
    table合并单元格 colspan(跨列)和rowspan(跨行)
    常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全
    解决firefox、chrome不兼容cursor:hand 设置鼠标为手型的方法
    js 验证表单 js提交验证类
    怎么解决浏览器兼容性问题
    JavaScript作用域链
  • 原文地址:https://www.cnblogs.com/jinxiaohang/p/8196474.html
Copyright © 2011-2022 走看看