SpringMVC-05-RestFul风格

SpringMVC-05-RestFul风格

概述

Restful是一个资源定位以及资源操作的风格,不是标准也不是协议,只是一种风格,基于该风格设计的软件更加简洁,更加具有层次感,更加易于实现缓存等机制

比如

http://localhost:8080/method?add=1&..&....&...&

变成

http://localhost:8080/method/add/1/2/..../.../

功能

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

示例

普通风格

@Controller
public class ControllerRestFul {
    @RequestMapping("/add")
    public String normal(int a, int b, Model model){
        int res = a+b;
        model.addAttribute("msg",res);
        return "style";
    }
}

url:http://localhost:8080/add?a=1&b=2

RestFul风格

@Controller
public class ControllerRestFul {	
	@RequestMapping("/add/{a}/{b}")
    public String restful(@PathVariable int a,@PathVariable int b, Model model){
        int res = a+b;
        model.addAttribute("msg",res);
        return "style";
    }
}

url:http://localhost:8080/add/1/2

url可复用

通过指定方法类型,使得同一个url得以复用

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

或者使用变体注解精简

@GetMapping
@PostMapping
@DeleteMapping
@PostMapping

为什么使用RestFul风格

  • 精简,风格简单
  • 高效,支持缓存
  • 安全,参数隐蔽
上一篇:RESTful API


下一篇:主流技术栈的Restful API接口测试实战