Spring Boot集成REST

前言

仰天大笑出门去,我辈岂是蓬蒿人。

简介

REST,即Representational State Transfer的缩写。直接翻译的意思是"表现层状态转化"。现在流行的各种Web框架,包括我们现在要说的Spring Boot都支持REST开发。注意:REST并非一种技术或者规范,而是一种架构风格!

架构风格如下:

  • 使用“api”作为web上下文,例如:http://localhost:8888/api”
  • 增加版本标识,例如:http://localhost:8888/api/v1.2”
  • 标志资源,例如:http://localhost:8888/api/user,就可以标识是用户相关的;
  • HTTP Method的确定;
  • HTTP Status的确定;

小知识

HTTP方法介绍:

  • POST 新增
  • PUT 更新
  • GET 查询
  • DELETE 删除,注意:实际项目中删除往往都只是逻辑删除,例如:只是改变数据在数据库为删除状态,并没有真正的删除!
  • 等等

HTTP状态介绍:

  • 200 请求成功;
  • 400 请求错误;
  • 404 通常都是对应的url不存在;
  • 500 服务器报错,通常都是参数错误,或者服务器内部抛出了异常;
  • 等等

集成REST

在Spring Boot中只要我们在pom中添加了如下依赖,就自动支持REST:

 <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-web</artifactId>
 </dependency>

实际应用

/**
 * <p>
 * 	模拟一个查询详情的操作
 * </p>
 *
 * @author xianLing.zhou
 * @since 2019/4/17
 */
 //在hello!spring boot 一文中我们使用的是,@Controller加上的@ResponseBody的注解,这里使用@RestController就相当于两者结合。
@RestController   
//这样是符合REST的,使用api作为上下文,v1.1标识版本
@RequestMapping("/api/v1.1/")  
public class RESTController {

    @GetMapping("/{id}")
    public Object detail(@PathVariable Long id) {
        //TODO 这里我们是模拟假设查询ID为1的详情,在实际项目中就是实际的查询逻辑
        if (id == 1) {
            return "这是ID为1的详情";
        }
        return null;
    }
}

我们将项目启动起来,然后在浏览器输入:http://localhost:8080/api/v1.1/1
在这里插入图片描述
其他都是类似,大家可以参照着,试着写出新增、更新这些操作。

结尾

欢迎大家指正,留言谢谢大家。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值