一、對url進行規範
非REST的url:http://...../Items.action?id=001&type=T01
RESTful格式的url:http://..../items/001/T01
二、對http的contentType規範
請求時要json資料(contentType:'application/json;charset=utf-8')
三、RESTful應用
①、controller方法
//如果占位符中的名稱和形參名一緻,在@PathVariable可以不指定名稱
@RequestMapping("/itemsView/{id}")
public @ResponseBody ItemsCustom itemsView(@PathVariable("id") Integer id)throws Exception{
//調用service查詢商品資訊
ItemsCustom itemsCustom = itemsService.findItemsById(id);
return itemsCustom;
}
@RequestMapping(value="/ itemsView/{id}"):{×××}占位符,請求的URL可以是“/viewItems/1”或“/viewItems/2”,通過在方法中使用@PathVariable擷取{×××}中的×××變量的值。
@PathVariable用于将請求URL中的變量映射到方法的參數上。
RequestMapping中表示為"/ itemsView /{id}",id和形參名稱一緻,@PathVariable可以不用指定名稱。
<!-- 2、springmvc前端控制器,rest配置
2.1、配置DispatcherServlet前端控制器
2.1、配置servlet映射(通路方式)
-->
<servlet>
<servlet-name>springmvc_rest</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>springmvc_rest</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<url-pattern>/</url-pattern>的配置前端控制器會解析靜态資源(前端控制器會去處理器映射器中查找對應的Handler,是一定找不到的)
<!-- 靜态資源解析
包括 :js、css、img、..
-->
<mvc:resources location="/js/" mapping="/js/**"/>
<mvc:resources location="/img/" mapping="/img/**"/>