RestFul风格
概念
Restful就是一种资源定位以及资源操作的风格,不是标准也不是协议。基于这种风格设计的软件可以更简洁,更有层次,更易于实现缓存机制;
功能
资源:互联网所有的事物都可以被抽象为资源资源操作:使用POST、DELETE、PUT、GET,使用不同方法对资源进行操作;分别对应CRUD传统方法操作资源:通过不同的参数来实现不同的效果
使用Restful操作资源:可以通过不同的请求方式来实现不同的效果。如下,请求地址一样,但是功能不同!
http://localhost/item/1 查询,GEThttp://localhost/item/ 新增,POSThttp://localhost/item/ 更新,PUThttp://localhost/item/1 删除,DELETE学习测试
新建一个类 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"; } }在SpringMVC中可以使用@PathVariable注解,让方法的参数的值对应绑定到一个URL模板变量上。
测试请求
思考:使用路径变量的好处
简洁获得参数更加方便,框架会自动进行类型转换通过路径变量的类型可以约束访问参数使用method属性指定请求类型
用于约束请求的类型,可以收窄请求范围。
小结:
所有地址栏请求默认都会是HTTP GET类型的。
方法级别的注解变量有如下:
@GetMapping @PostMapping @PutMapping @DeleteMapping @PatchMapping小黄鸭调试法
我向我解释一遍代码执行流程。
