1,了解 RESTful ?
定义是 资源状态转移;
RESTful 区别于非RESTful 有几点:
前者的URL是面向资源型的;后者的URL是服务型的,关注行为和动作
前者URL是参数化的,有层级的;后者URL是输入的
前者URL是参数化,spring 3.0 引入了 注解@PathVariable,获取路径化参数
前者URL只是定义一个资源路径,不做任何事情,要做什么都是由HTTP决定;后者是一个动作;
例如URL:
http://localhost:8080/Spitter/display/Spittle.html?id=102
http://localhost:8080/Spitter/Spilttes/102
2,spring 对RESTful的支持是通过对Springmvc 的支持做的,
控制器提供了处理所有http方法,主要包含4个REST的方法:GET、POST、PUT、DELETE
控制器中提供注解@PathVariable,解析路径化参数
控制器中提供了视图解析器,将资源以各种形式进行表述,包括XML、JSON 等
控制器中提供注解@ResponseBody 基于视图渲染
编写对REST 客户端支持,如果客户端是非web浏览器 ,有RESTTemplate提供发RESTful请求支持
如果是浏览器有<sf:form ></sf:form> 提供发RESTful请求支持
总结:Spring支持RESTful 是通过springmvc 来支持的,RESTful是面向资源的,URL只是代表资源的位置(创建资源除外),具体做什么有HTTP决定;