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

Spring?Boot?Rest常用框架注解詳情簡介

 更新時間:2022年06月09日 16:42:23   作者:?sofia??  
這篇文章主要介紹了Spring?Boot?Rest常用框架注解,通過將嘗試解釋Spring?Boot?Rest?API的不同注釋,這些注釋是Spring?Boot中REST?API所必需的,需要的朋友可以參考一下

前言:

讓我們了解一下Spring Boot Rest框架注釋。它是如此簡單和快速。在本文中,我將嘗試解釋Spring Boot Rest API的不同注釋。這些注釋是Spring Boot中REST API所必需的。

開始Spring Boot Rest的先決條件

最需要了解的是Spring容器或IOC。除此之外,還必須具備Java注釋的基本知識。因為Spring Boot應(yīng)用程序充滿了注釋。最后但并非最不重要的一點是,應(yīng)該澄清REST的概念,至少是基本概念。例如GET、POST、PUT、DELETE和Request body和response、headers等。

在Spring Initializer創(chuàng)建Spring Boot項目

Spring Boot最棒的一點是它有一個web應(yīng)用程序用于入門。只需點擊幾個表單字段和按鈕,就可以準(zhǔn)備好初學(xué)者文件。這包括pom。包含所有必需依賴項的xml。只需轉(zhuǎn)到Spring Initializer:https://start.spring.io/。如下面的屏幕截圖所示,填寫適當(dāng)?shù)臄?shù)據(jù)。然后單擊右上角的添加依賴項按鈕。鍵入并選擇Web。我還將為log和Pojo添加Lombok。

Spring Boot Rest常用注解簡介

完成后,只需單擊generate按鈕,就會下載一個包含這些文件的zip文件(pom.xml)。將其解壓縮并在IDE中打開。我將使用IntelliJ IDEA。這個IDE幫助我利用各種功能提高工作效率。 

Spring Boot注解

整個Spring Boot都依賴于注釋。對于不同的需求和過程,有各種注釋。其余部分有4-5個主要注釋。讓我們一個接一個地看它們,并將它們應(yīng)用到我們的示例中。

@RestController

類上使用了@RestController注釋。它將類定義為Rest的控制器。這是一個RESTful版本的控制器,添加了ResponseBy的組合。這樣,您的響應(yīng)就會自動轉(zhuǎn)換為JSON、XML或任何已定義的響應(yīng)類型,而無需單獨使用ResponseBy注釋。

@RestController
public class ArticleRestController {}

其余的注釋在@RestController類下使用。

@RequestMapping

用于將特定端點映射到函數(shù)或方法。這有助于定義端點的路徑、方法、響應(yīng)類型、請求類型等。

@RequestMapping(value = "/articles", method = RequestMethod.GET,  produces = "application/json")
public List<Article> getArticles() { }

在上面的示例中,值表示它映射到的路徑。例如,localhost:8080/articles。方法類型是GET,它生成“application/json”作為響應(yīng)(不過,這是默認(rèn)值,您可以跳過它)。

@RequestParam

URL中的查詢參數(shù),即?key=value&key1=value1@RequestParam注釋獲取。這用于函數(shù)的參數(shù)。它有各種選項,如required、defaultValue等。然后將查詢參數(shù)加載到指定的參數(shù)中。

@RequestMapping(value = "/article", method = RequestMethod.GET)
public Article getArticleByName(
   @RequestParam(value = "articleName", required = true) String articleName
) {}

在上面的例子中,如果我們調(diào)用URL GET localhost/article?articleName=springboot,將在articleName參數(shù)中加載“springboot”。我已經(jīng)把reuired=true,所以如果我們不傳遞articleName,它將向用戶拋出一個錯誤。

@PathVariable

有沒有想過,在不傳遞查詢參數(shù)的情況下,服務(wù)器如何知道要加載哪篇文章?看看這篇文章的網(wǎng)址 post URL不包含查詢參數(shù),而是一個普通的斜杠分隔字符串。服務(wù)器在PathVariable的幫助下讀取它,它看起來是這樣的,/article/{articleslaug}。替換{articleSlug}的任何字符串都將被視為PathVariable。

@RequestMapping(value = "/article/{articleSlug}", method = RequestMethod.GET)
public Article getArticle(@PathVariable("articleSlug") String articleSlug) {}

請記住,{articleSlug}RequestMappingPathVariable中應(yīng)該是相同的(沒有{})。如果不匹配,則無法加載。

@RequestBody

對于POST或PUT方法,您不會通過URL獲取所有數(shù)據(jù),對嗎?這些方法有一個適當(dāng)?shù)恼埱笾黧w。RequestBody注釋有助于將給定的請求正文自動映射到參數(shù)。主要是JSON到POJO。

@RequestMapping(value = "/article", method = RequestMethod.POST)
public Article createArticle(@RequestBody NewArticlePojo newArticle){}

請求主體將自動映射到NewArticlePojo類,并基于鍵填充字段。

REST方法的特定注釋

在上面的解釋中,您一定已經(jīng)看到我使用特定的方法編寫了RequestMapping。但這太多余了。為了解決這個問題,Spring Boot提供了預(yù)定義的方法映射。這些只是@RequestMapping的擴(kuò)展。

@GetMapping

@GetMapping用于將RequestMapping替換為method=RequestMethod。獲取參數(shù)。現(xiàn)在通過查看,我們知道這是一個GET請求。

@PostMapping和@PutMapping

PostMapping是用method=RequestMethod替換RequestMapping。類似地,PutMapping將用method=RequestMethod替換RequestMethod.PUT

@DeleteMapping

DeleteMapping用method=RequestMethod替換RequestMethod.DELETE

到此這篇關(guān)于Spring Boot Rest常用框架注解詳情簡介的文章就介紹到這了,更多相關(guān)Spring Boot Rest解內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 一文掌握Spring Cookie和Session 是什么及區(qū)別介紹

    一文掌握Spring Cookie和Session 是什么及區(qū)別介紹

    Cookie和Session都是用于在客戶端和服務(wù)器之間傳遞信息的技術(shù),但它們的工作方式和使用場景有所不同,Cookie是在客戶端保存用戶信息的一種機(jī)制,而Session是在服務(wù)器端保存用戶信息的一種機(jī)制,本文介紹Spring Cookie和Session 是什么,感興趣的朋友一起看看吧
    2025-01-01
  • 單元測試 @mock與@SpringBootTest的使用

    單元測試 @mock與@SpringBootTest的使用

    這篇文章主要介紹了單元測試 @mock與@SpringBootTest的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • 解決Sentinel鏈路模式規(guī)則無效問題

    解決Sentinel鏈路模式規(guī)則無效問題

    本文介紹了如何在Spring Cloud Alibaba項目中使用Sentinel鏈路流控規(guī)則,并解決規(guī)則不生效的問題,通過關(guān)閉Sentinel過濾器,可以避免重復(fù)統(tǒng)計請求
    2025-01-01
  • Elasticsearch查詢Range Query語法示例

    Elasticsearch查詢Range Query語法示例

    這篇文章主要為大家介紹了Elasticsearch查詢Range Query語法示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • Springboot實現(xiàn)XSS漏洞過濾的示例代碼

    Springboot實現(xiàn)XSS漏洞過濾的示例代碼

    這篇文章主要介紹了Springboot實現(xiàn)XSS漏洞過濾的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Java程序員的10道常見的XML面試問答題(XML術(shù)語詳解)

    Java程序員的10道常見的XML面試問答題(XML術(shù)語詳解)

    包括web開發(fā)人員的Java面試在內(nèi)的各種面試中,XML面試題在各種編程工作的面試中很常見。XML是一種成熟的技術(shù),經(jīng)常作為從一個平臺到其他平臺傳輸數(shù)據(jù)的標(biāo)準(zhǔn)
    2014-04-04
  • idea修改maven模塊名稱還顯示老名稱問題解決

    idea修改maven模塊名稱還顯示老名稱問題解決

    本文主要介紹了idea修改maven模塊名稱還顯示老名稱問題解決,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-11-11
  • SpringBoot?自定義starter?yaml提示失效問題及解決方法

    SpringBoot?自定義starter?yaml提示失效問題及解決方法

    在自定義starter后,必不可少會有properties配置參數(shù)需要指定,而在有時又不知道為什么出現(xiàn)這個問題,這篇文章主要介紹了SpringBoot?自定義starter?yaml提示失效問題,需要的朋友可以參考下
    2022-12-12
  • 徹底解決java.lang.ClassNotFoundException: com.mysql.jdbc.Driver問題

    徹底解決java.lang.ClassNotFoundException: com.mysql.jdbc.Dr

    這篇文章給大家介紹了如如何徹底解決java.lang.ClassNotFoundException: com.mysql.jdbc.Driver問題,文中有詳細(xì)的解決思路以及解決方法,需要的朋友可以參考下
    2023-11-11
  • Java String 字符串常量池解析

    Java String 字符串常量池解析

    這篇文章主要介紹了Java String 字符串常量池解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08

最新評論

巴中市| 茶陵县| 洛川县| 岱山县| 岳西县| 哈尔滨市| 潜江市| 绍兴市| 清水县| 库尔勒市| 闻喜县| 溆浦县| 禄丰县| 石台县| 阿合奇县| 东兰县| 石台县| 云安县| 泸水县| 时尚| 沈丘县| 卓资县| 新化县| 黔西县| 依安县| 噶尔县| 建德市| 顺义区| 海门市| 报价| 惠水县| 岳普湖县| 望江县| 香港| 崇信县| 滕州市| 金寨县| 称多县| 炉霍县| 峡江县| 库伦旗|