最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談SpringMVC對RESTfull的支持

 更新時間:2018年02月06日 13:46:33   作者:eson_15  
這篇文章主要介紹了淺談SpringMVC對RESTfull的支持,分享了相關(guān)配置代碼,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下

本文研究的主要是SpringMVC對RESTfull的支持的相關(guān)內(nèi)容,具體如下。

  RESTful架構(gòu),就是目前流行的一種互聯(lián)網(wǎng)軟件架構(gòu)。它結(jié)構(gòu)清晰、符合標(biāo)準(zhǔn)、易于理解、擴展方便,所以正得到越來越多網(wǎng)站的采用。RESTful架構(gòu)對url進(jìn)行規(guī)范,寫RESTful格式的url是什么樣子的呢?我們一般請求的url是類似這樣子的:

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

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

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

  所以REST有個很明顯的特點:使url變得簡潔,將參數(shù)通過url傳到服務(wù)端。springmvc也是支持這種REST風(fēng)格的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轉(zhuǎn)成json的注解,而@PathVariable注解則是跟REST有關(guān)了,@RequestMapping(value=”/ itemsView/{id}”)中的{id}表示一個占位符,那么這里面?zhèn)鬟^來的值會傳到被@PathVariable標(biāo)記的形參上,如果形參和占位符中的變量一樣的話,可以不用再注解中指定,否則注解中要指定這個占位符中的變量(即id)。這樣的話,參數(shù)就可以通過url傳到形參中來了。

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

<!-- 配置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(/),這個配置跟之前配置好的前端控制器是沒有沖突的,可以并存。經(jīng)過這樣配置后,就可以在瀏覽器中輸入http://localhost:8080/SpringMVC_Study/itemsView/1來測試返回到瀏覽器的數(shù)據(jù)了,可以看到返回一串json數(shù)據(jù)。

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

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

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

總結(jié)

以上就是本文關(guān)于淺談SpringMVC對RESTfull的支持的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關(guān)文章

  • SpringBoot3集成和使用Jasypt的代碼詳解

    SpringBoot3集成和使用Jasypt的代碼詳解

    隨著信息安全的日益受到重視,加密敏感數(shù)據(jù)在應(yīng)用程序中變得越來越重要,Jasypt作為一個簡化Java應(yīng)用程序中數(shù)據(jù)加密的工具,為開發(fā)者提供了一種便捷而靈活的加密解決方案,本文將深入解析Jasypt的工作原理,需要的朋友可以參考下
    2024-01-01
  • 使用MockMvc進(jìn)行controller層單元測試 事務(wù)自動回滾的完整案例

    使用MockMvc進(jìn)行controller層單元測試 事務(wù)自動回滾的完整案例

    這篇文章主要介紹了使用MockMvc進(jìn)行controller層單元測試 事務(wù)自動回滾的完整案例,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • java、freemarker保留兩位小數(shù)

    java、freemarker保留兩位小數(shù)

    這篇文章主要介紹了 java、freemarker保留兩位小數(shù)的實現(xiàn)方法,然后給大家補充介紹了freemarker保留兩位小數(shù)的詳解,需要的朋友可以參考下
    2017-03-03
  • JavaMail實現(xiàn)發(fā)送郵件功能

    JavaMail實現(xiàn)發(fā)送郵件功能

    這篇文章主要為大家詳細(xì)介紹了JavaMail實現(xiàn)發(fā)送郵件功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • SpringBoot參數(shù)校驗與國際化使用教程

    SpringBoot參數(shù)校驗與國際化使用教程

    這篇文章主要給大家介紹了關(guān)于SpringBoot參數(shù)校驗與國際化使用教程的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Java之springcloud Sentinel案例講解

    Java之springcloud Sentinel案例講解

    這篇文章主要介紹了Java之springcloud Sentinel案例講解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • 詳解使用JavaMailSender給曾經(jīng)心愛的她再中秋發(fā)送一封特別的郵件

    詳解使用JavaMailSender給曾經(jīng)心愛的她再中秋發(fā)送一封特別的郵件

    網(wǎng)站的服務(wù)端向用戶發(fā)郵件時,郵件中往往需要攜帶圖片,鏈接等內(nèi)容。所以為了方便起見,我們一般發(fā)送HTML格式的郵件,那么怎么去拼一個HTML格式的郵件呢?——Thymeleaf。開始之前,先新建一個SpringBoot項目,并添加需要用到的依賴。然后就可以繼續(xù)往下了
    2022-09-09
  • Java編寫中容易搞錯的一些東西

    Java編寫中容易搞錯的一些東西

    Java編寫中容易搞錯的一些東西...
    2006-12-12
  • 使用EasyPoi實現(xiàn)多Sheet頁導(dǎo)出的示例代碼

    使用EasyPoi實現(xiàn)多Sheet頁導(dǎo)出的示例代碼

    在項目開發(fā)中,我們常常會遇到導(dǎo)出多Sheet頁的需求,本文降維打擊介紹一下如何使用EasyPoi實現(xiàn)這一功能,文中的示例代碼簡潔易懂,有需要的可以參考下
    2025-03-03
  • springboot多數(shù)據(jù)源配置及切換的示例代碼詳解

    springboot多數(shù)據(jù)源配置及切換的示例代碼詳解

    這篇文章主要介紹了springboot多數(shù)據(jù)源配置及切換,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09

最新評論

休宁县| 淳安县| 出国| 靖江市| 五台县| 枣强县| 禄丰县| 化州市| 霸州市| 随州市| 五台县| 双柏县| 堆龙德庆县| 巫溪县| 固阳县| 湾仔区| 三都| 井陉县| 通海县| 株洲县| 游戏| 鲁山县| 维西| 平凉市| 太仓市| 涞源县| 丽江市| 瑞金市| 阿拉善右旗| 分宜县| 莱阳市| 隆尧县| 福海县| 抚松县| 郑州市| 深泽县| 贞丰县| 桦南县| 沂南县| 翼城县| 离岛区|