zoukankan      html  css  js  c++  java
  • SpringMVC-04-Restful风格

    RestFul风格

    概念

    Restful就是一种资源定位以及资源操作的风格,不是标准也不是协议。基于这种风格设计的软件可以更简洁,更有层次,更易于实现缓存机制;

    功能

    • 资源:互联网所有的事物都可以被抽象为资源
    • 资源操作:使用POST、DELETE、PUT、GET,使用不同方法对资源进行操作;
    • 分别对应CRUD

    传统方法操作资源:通过不同的参数来实现不同的效果

    使用Restful操作资源:可以通过不同的请求方式来实现不同的效果。如下,请求地址一样,但是功能不同!

    学习测试

    1. 新建一个类 RestfulController

      @Controller
      public class RestfulController {
      
          //原来的:http://localhost:8080/add?a=1&b=2
          //Restul:http://localhost:8080/add/a/b
      
      //    @RequestMapping(value = "/add/{a}/{b}",method = RequestMethod.DELETE)
          @GetMapping("/add/{a}/{b}")
          public String test1(@PathVariable int a,@PathVariable int b, Model model){
              int res = a + b;
      
              model.addAttribute("msg","结果为"+res);
      
              return "test";
          }
      
      }
      
    2. 在SpringMVC中可以使用@PathVariable注解,让方法的参数的值对应绑定到一个URL模板变量上。

    3. 测试请求

    思考:使用路径变量的好处

    • 简洁
    • 获得参数更加方便,框架会自动进行类型转换
    • 通过路径变量的类型可以约束访问参数

    使用method属性指定请求类型

    用于约束请求的类型,可以收窄请求范围。

    小结:

    所有地址栏请求默认都会是HTTP GET类型的。

    方法级别的注解变量有如下:

    @GetMapping 
    @PostMapping
    @PutMapping
    @DeleteMapping
    @PatchMapping
    

    小黄鸭调试法

    我向我解释一遍代码执行流程。

  • 相关阅读:
    leetcode 141. Linked List Cycle
    leetcode 367. Valid Perfect Square
    leetcode150 Evaluate Reverse Polish Notation
    小a与星际探索
    D. Diverse Garland
    C. Nice Garland
    数的划分(动态规划)
    平衡二叉树(笔记)
    1346:【例4-7】亲戚(relation)
    1192:放苹果(dp + 搜索)
  • 原文地址:https://www.cnblogs.com/CodeHuba/p/13613544.html
Copyright © 2011-2022 走看看