springMVC學習--RESTful支持


  • 簡介

  RESTful架構,就是目前最流行的一種互聯網軟件架構。它結構清晰、符合標准、易於理解、擴展方便,所以正得到越來越多網站的采用。RESTfulRepresentational State Transfer的縮寫)其實是一個開發理念,是對http的很好的詮釋。

  1、對url進行規范,寫RESTful格式的url

 

   非RESTurlhttp://...../queryItems.action?id=001&type=T01

 

  RESTurl風格:http://..../items/001

 

  特點:url簡潔,將參數通過url傳到服務端

 

  2http的方法規范

 

  不管是刪除、添加、更新。。使用url是一致的,如果進行刪除,需要設置http的方法為delete,同理添加。。。

 

    后台controller方法:判斷http方法,如果是delete執行刪除,如果是post執行添加。

 

    3、對httpcontentType規范

 

  請求時指定contentType,要json數據,設置成json格式的type

  • 添加DispatcherServletrest配置

 

 1 <servlet>
 2         <servlet-name>springmvc-servlet-rest</servlet-name>
 3         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 4         <init-param>
 5             <param-name>contextConfigLocation</param-name>
 6             <param-value>classpath:spring/springmvc.xml</param-value>
 7         </init-param>
 8     </servlet>
 9     <servlet-mapping>
10         <servlet-name>springmvc-servlet-rest</servlet-name>
11         <url-pattern>/</url-pattern>
12     </servlet-mapping>

 

  • URL 模板模式映射

 

  @RequestMapping(value="/ viewItems/{id}"):{×××}占位符,請求的URL可以是“/viewItems/1”或“/viewItems/2”,通過在方法中使用@PathVariable獲取{×××}中的×××變量。@PathVariable用於將請求URL中的模板變量映射到功能處理方法的參數上。

1 @RequestMapping("/viewItems/{id}") 
2     public @ResponseBody viewItems(@PathVariable("id") String id,Model model) throws Exception{
3         //方法中使用@PathVariable獲取useried的值,使用model傳回頁面
4         //調用 service查詢商品信息
5         ItemsCustom itemsCustom = itemsService.findItemsById(id);
6         return itemsCustom;
7 }

  如果RequestMapping中表示為"/viewItems/{id}",id和形參名稱一致,@PathVariable不用指定名稱。

  • 靜態資源訪問<mvc:resources>

 

  如果在DispatcherServlet中設置url-pattern為 /則必須對靜態資源進行訪問處理。

 

  spring mvc <mvc:resources mapping="" location="">實現對靜態資源進行映射訪問。

 

  如下是對js文件訪問配置:

 

1 <mvc:resources location="/js/" mapping="/js/**"/>

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM