亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java之SpringMVC對RESTfull支持的示例分析

發布時間:2021-09-09 11:49:32 來源:億速云 閱讀:153 作者:小新 欄目:編程語言

這篇文章主要介紹java之SpringMVC對RESTfull支持的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

具體如下。

  RESTful架構,就是目前流行的一種互聯網軟件架構。它結構清晰、符合標準、易于理解、擴展方便,所以正得到越來越多網站的采用。RESTful架構對url進行規范,寫RESTful格式的url是什么樣子的呢?我們一般請求的url是類似這樣子的:

http://...../xxx.action?id=001&type=aaa

  而REST的url風格是什么樣子呢?一般它類似于:

http://..../xxx/001

  所以REST有個很明顯的特點:使url變得簡潔,將參數通過url傳到服務端。springmvc也是支持這種REST風格的url的,我們定義一個controller來測試一下:

//查詢商品信息,輸出json,使用RESTful
@RequestMapping("/itemsView/{id}")
public @ResponseBody ItemsCustom itemsView(@PathVariable("id") Integer id) throws Exception {
  ItemsCustom itemsCustom = itemsService.findItemsById(id);
  return itemsCustom;
}

  @ResponseBody是用來將itemsCustom轉成json的注解,而@PathVariable注解則是跟REST有關了,@RequestMapping(value=”/ itemsView/{id}”)中的{id}表示一個占位符,那么這里面傳過來的值會傳到被@PathVariable標記的形參上,如果形參和占位符中的變量一樣的話,可以不用再注解中指定,否則注解中要指定這個占位符中的變量(即id)。這樣的話,參數就可以通過url傳到形參中來了。

  但是這樣還不行,還要在前端控制器中針對REST進行配置,如下:

<!-- 配置springmvc的前端控制器DispatcherServlet,REST配置 -->
<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:spring/springmvc.xml</param-value>
  </init-param>
</servlet>

<servlet-mapping>
  <servlet-name>springmvc_rest</servlet-name>
  <url-pattern>/</url-pattern>
</servlet-mapping>

 攔截的是所有的url(/),這個配置跟之前配置好的前端控制器是沒有沖突的,可以并存。經過這樣配置后,就可以在瀏覽器中輸入http://localhost:8080/SpringMVC_Study/itemsView/1來測試返回到瀏覽器的數據了,可以看到返回一串json數據。

  但是有個問題,使用上面的配置后會攔截所有的url,那么對靜態資源也會攔截,所以DispatcherServlet也會解析靜態資源,但是這樣的話就會出錯,所以我們要設置一下不讓它解析靜態資源。如:

<!-- 靜態資源解析,包括js,css,img... -->
<mvc:resources location="/js/" mapping="/js/**"></mvc:resources>
<mvc:resources location="/img/" mapping="/img/**"></mvc:resources>

  如果還有其他靜態資源的話,也要設置一下,這樣就不會去解析靜態資源了,訪問靜態資源的時候就直接訪問即可。

以上是“java之SpringMVC對RESTfull支持的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江北区| 克拉玛依市| 格尔木市| 南安市| 孟津县| 牙克石市| 旌德县| 绥滨县| 仁布县| 林西县| 米易县| 景泰县| 禹州市| 基隆市| 郯城县| 历史| 阳泉市| 赤峰市| 镇坪县| 丰镇市| 招远市| 商南县| 庆城县| 海兴县| 建阳市| 桦南县| 岱山县| 车险| 宜宾市| 灵宝市| 林甸县| 杂多县| 遂溪县| 桦甸市| 工布江达县| 高淳县| 荃湾区| 淮南市| 晋宁县| 大同市| 雷州市|