1.Restful是什么?
Restful是一种软件的架构风格
REST式的web服务是一种ROA(面向资源的架构)
2.REST架构的主要原则
网络上的所有事务都可以被抽象为资源。
每个资源都有一个唯一的资源标识符。
同一资源具有多种表现形式(json、xml等)。
对资源的各种操作不会改变资源标识符。
所有的操作都是无状态的(Stateless)
符合REST原则的架构方式即成为RESTful
3.资源操作
之前的操作:
http://127.0.0.1/user/query/1 GET 根据用户id查询用户数据
http://127.0.0.1/user/save POST 新增用户
http://127.0.0.1/user/update POST 修改用户信息
http://127.0.0.1/user/delete GET/POST 删除用户信息
RESTful用法:
http://127.0.0.1/user/1 GET 根据用户id查询用户数据
http://127.0.0.1/user POST 新增用户
http://127.0.0.1/user PUT 修改用户信息
http://127.0.0.1/user DELETE 删除用户信息
3.REST接口定义
4.最佳实践
指定响应的属性字段
http响应状态码
5.基于SpringMVC实现RESTful服务(CRUD)
1.查询资源
2.新增资源
3.更新资源
默认情况下,PUT请求是无法提交表单数据的,需要在web.xml中添加过滤器解决问题。
<!-- 解决PUT请求无法提交表单数据的问题 -->
<filter>
<filter-name>HttpMethodFilter</filter-name>
<filter-class>org.springframework.web.filter.HttpPutFormContentFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>HttpMethodFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
4.删除资源
需要在web.xml中添加过滤器解决DELETE请求无法提交表单数据的问题:
<!--
将POST请求转化为DELETE或者是PUT
要用_method指定真正的请求参数
-->
<filter>
<filter-name>HiddenHttpMethodFilter</filter-name>
<filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>HiddenHttpMethodFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>