RestFul风格

一.概念

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

功能:

  • 资源:互联网万物都可以抽象称为资源
  • 资源操作:使用POST,GET,PUT,DELETE,使用不同的方法对资源进行操作
  • 分别对应添加,删除,修改,查询

传统的资源操作:通过不同的参数来实现不同的效果!方法单一,post和get

  • http://127.0.0.1/item/queryltem.action?id=1  查询GET
  • http://127.0.0.1/item/servlettem.action?  新增POST

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

  • http://127.0.0.1/item/1  查询,GET
  • http://127.0.0.1/item    新增,Post

区别记忆:(GET)

普通风格:

请求路径:http://localhost:8080/add?a=1&b=2

 

 RestFul风格:

在springMVC中可以使用@PathVariable注解,让方法参数的值对应绑定到一个URL模板变量上

@Controller
public class controllerTest4 {
    //访问映射路径
    @RequestMapping("/add/{a}/{b}")
    public String test(@PathVariable int a,@PathVariable int b, Model model){
        model.addAttribute("msf","结果为:"+a+b);
        return "msf";
    }
}

 

请求路径:http://localhost:8080/add/2/3

 

拓展:RequestMapping的请求方式是GET,我们也可以对其进行更改 其它的请求处理方式:POST,PUT,DELETE

@RequestMapping(value = "/add/{a}/{b}",method = RequestMethod.POST)

 

这样描述了以后,我们的请求处理方式就变成POST了,但是一般我们的开发不这么用,因为这里我们也有细化的注解。

@GetMapping("/add/{a}/{b}")
@PostMapping("/add/{a}/{b}")

 

这样更换请求方式就更简化了,也好用,所以一般还是用注解开发。

一般我们使用的注解变体有以下几个:

@GetMapping

@PostMapping

@PutMapping

@DeleteMapping

@PatchMapping

 补充:SpringMVC的请求和转发

当我们有视图解析器的时候默认的return就是转发,

当我们需要重定向的时候;可以return  "redirect:/index.jsp"  重定向地址栏

区别:转发地址栏不会显示路径,重定向地址栏会显示路径

posted @ 2023-03-06 21:27  回忆也交给时间  阅读(26)  评论(0编辑  收藏  举报