1. 程式人生 > >(十四)springMvc 對 restful 的支援

(十四)springMvc 對 restful 的支援

restful 的概念

restful 是一種開發理念;

  1. url 進行規範

    每個 url 代表一個資源,對這個資源的操作,不寫在 url 上 ;

    我們可以看到這是一個更新資源的 url,它在 url 中寫上了具體的操作 ;

    url 很簡潔,僅僅代表資源,裡面不含有任何操作的資訊 ;

  2. http 方法的規範

    不管是刪除、更新、查詢。使用的 url 都是一致的,使用對用的方法,去設定 http 的方法 ;後臺 controller 判斷方法,執行具體邏輯 ;

  3. http contentType 的指定

    需要傳什麼資料,就指定具體的格式 ;

也就是 url 現在僅僅代表一個伺服器上的資源,不再包含具體的操作;

配置支援 restful 的前端控制器

  <!--************************************* 配置 restful的前端控制器 ********************************* -->
    <servlet>
        <servlet-name>springMvc_restful</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class
>
<!--初始化讀取配置檔案,我們指定配置檔案在哪; 否則預設載入 /WEB-INF/servlet-name-servlet.xml 我們這裡的 servlet-name 是 springMvc ,那麼就是去載入 springMvc-servlet.xml --> <init-param> <param-name>contextConfigLocation</param-name> <
param-value
>
classpath:/spring/springMvc.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>springMvc_restful</servlet-name> <!-- 1、 *.action 攔截 .action 結尾的url 2、/ 攔截所有url,即使是訪問 靜態資源也會被攔截,全部走前端控制器,可以實現 resultFul 風格的url 3、/* 這樣配置不對,當轉發到jsp頁面時,還是會交給前端控制器,去找處理器 --> <url-pattern>/</url-pattern> </servlet-mapping>

配置不攔截靜態資源

上面配置的 / ,前端控制器會攔截所有資源,我們要設定其不攔截 ,在 springMvc.xml 中進行配置;

  <!--配置不攔截靜態資源-->
    <mvc:resources mapping="/js/*" location="/js/"></mvc:resources>