1、概念css
Server提供的RESTful API中,URL中只使用名詞來指定資源,原則上不使用動詞。「資源」是REST架構或者說整個網絡處理的核心。好比: http://api.qc.com/v1/newsfeed: 獲取某人的新鮮; http://api.qc.com/v1/friends: 獲取某人的好友列表; http://api.qc.com/v1/profile: 獲取某人的詳細信息;前端
用HTTP協議裏的動詞來實現資源的添加,修改,刪除等操做。即經過HTTP動詞來實現資源的狀態扭轉: GET 用來獲取資源, POST 用來新建資源(也能夠用於更新資源), PUT 用來更新資源, DELETE 用來刪除資源。java
即對url進行規範,
非RESTful格式:http://.../queryItems.action?id=001&type=T001
RESTful 格式:http://.../items/001
特色:將參數經過url傳遞到服務端。spring
對http方法進行規範
使用get獲取資源、post新建資源、put來更新資源、delete來刪除資源json
對http的contentType規範
請求時指定 contentType ,須要json數據,設置成json的type。。api
2、方法定義網絡
需求:查詢商品信息,返回json數據。
方法:使用RESTful風格的url,將查詢商品信息的id傳入controller。輸出json使用@ResponseBody 將java對象輸出json。架構
3、使用url模板映射來傳遞參數mvc
使用**@RequestMapping("/itemsView/{id}")和@PathVariable("id") Integer id **來傳遞參數信息。app
@RequestMapping("/itemsView/{id}") public @ResponseBody ItemsCustom itemsView(@PathVariable("id") Integer id) throws Exception { ItemsCustom itemsCustom = itemsService.findItemsById(id); return itemsCustom; }
4、對靜態資源進行解析
使用RESTful風格的url方式須要對靜態資源進行解析:
配置前端控制器的 url-partten 中指定 "/" ,對靜態資源的解析則出現問題。
在springmvc.xml中添加靜態資源的解析方法。
<!-- 靜態資源解析:包括js、css。img... --> <mvc:resources mapping="/js/**" location="/js/"/> <mvc:resources mapping="/img/**" location="/img/"/>