SpringMVC笔记四:RestFul风格

19 篇文章 0 订阅
6 篇文章 0 订阅

RestFul风格

1. 概念

RestFul就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更加简介,更有层次,更易于实现缓存等机制,以及更加安全。

2. 功能

  • 资源:互联网中所有的事物都可以被抽象为资源,可以通过url统一资源定位符访问。

  • 资源操作:使用POST,GET,PUT,DELETE等不同的方法对资源进行操作。

  • 传统的操作资源方式:通过不同的参数来实现不同的效果。方法单一,即post和get例如:

    1. http://localhost/user/select.action?id=1
    2. http://localhost/user/delete.action?id=1
    3. http://localhost/user/update.action
    4. http://localhost/user/save.action
  • 使用RestFul风格操作资源:可以通过不同的请求方式实现不同的效果,请求地址可以一样,但是功能可以不同,它注重的是请求方法(PUT改,GET查,DELETE删,POST增),上面的修改为RestFul风格如下

    1. http://localhost/user/1
    2. http://localhost/user/1
    3. http://localhost/user
    4. http://localhost/user

3. 示例

在上一个列子中直接添加一个Controller,上一个例子地址:https://blog.csdn.net/weixin_41549354/article/details/108139130

package com.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class RestFulController {

    //传统方式,a跟b表示这个接口要接受的参数
    @RequestMapping("add1")
    public String test1(int a, int b, Model model) {
        model.addAttribute("msg", "相加结果为:"+(a+b));
        return "hello";
    }

    //RestFul风格
    //使用路径变量注解@PathVariable添加到方法的参数上,让方法参数的值绑定到一个URI模板变量上。
    //对应的@RequestMapping注解可以改为@GetMapping("add2/{a}/{b}"),
    //类似的有@DeleteMapping("add2/{a}/{b}")等等,虽然地址一样,但是它会根据前端提交的不同请求方式
    //识别到不同的@RequestMapping控制器中的方法。
    @RequestMapping(value="add2/{a}/{b}", method=RequestMethod.GET)
    public String test2(@PathVariable int a, @PathVariable int b, Model model) {
        model.addAttribute("msg", "相加结果为:"+(a+b));
        return "hello";
    }
}

访问测试

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-M94ExocF-1597954310398)(D:\我的文档\Pictures\42.PNG)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OJSa7NLp-1597954310404)(D:\我的文档\Pictures\43.PNG)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值