亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JavaWeb中的常用的請求傳參注解說明

 更新時間:2023年04月04日 14:35:43   作者:IT__learning  
這篇文章主要介紹了JavaWeb中的常用的請求傳參注解說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

1、@RequestMapping

@RequestMapping 既可以用在類級別,也可以用在方法級別,當它定義在類級別的時候,標明該控制器所處理的請求都將被映射到這個路徑下。

另外,@RequestMapping中可以使用method屬性,如果指定了method屬性的值,那么就只能使用指定的請求方法,如果沒有指定的話,那么就可以使用HTTP的get/post方法了。

get 請求特點

  • a. 請求參數會添加到請求資源路徑的后面,只能添加少量參數(因為請求行只有一行,大約只能存放2K左右的數據)
  • b. 請求參數會顯示在瀏覽器地址欄,路由器會記錄請求地址 (極為的不安全)
  • c. 如果傳輸中文,必定會亂碼(原因:get 請求默認編碼格式為:IIO-8859-1,后臺編碼格式一般為:GBK或者UTF-8)

post 請求的特點

  • a. 請求參數添加到請求體里面,可以添加大量的參數(也解釋了為什么瀏覽器地址欄不能發(fā)送post請求,在地址欄里我們只能填寫URL,并不能進入到 Http 包的請求體當中)
  • b. 相對安全,但是,post 請求不會對請求參數進行加密處理(可以使用https協(xié)議來保證數據安全)

2、@GetMapping

用于將HTTP GET請求映射到特定處理程序方法的注釋。

相當于@RequestMapping(method = RequestMethod.GET)

3、@PostMapping

用于將 HTTP POST 請求映射到特定處理程序方法的注釋。

相當于@RequestMapping(method = RequestMethod.POST)

4、@RequestParam

這個注解是使用在方法的形參上的,主要用途就是將請求的參數綁定到方法的形參上,有一個required屬性,默認情況下是true,就是必須要傳參數,如果想該形參可傳可不傳參數的話,就將屬性值設置為false即可。

@RequestMapping("/hello")
  public String hello(@RequestParam(value = "name", required = false) String name, @RequestParam(value = "age", required = true) String age) {
  //age參數必須傳 ,name可傳可不傳
  ...
  }

5、@PathVariable

該注解主要是用于做動態(tài)綁定使用,讓形參的值變成可供使用的URL變量,多用在 Restful 風格中。

@RequestMapping(value="/hello/{name}",method=RequestMethod.GET)
public String findPet(@PathVariable String name) {
//使用@PathVariable注解綁定 {name} 到String name
}

@PathVariable中的參數可以是任意的簡單類型,如int、long、Date等,Spring會自動將其轉換成合適的類型或者拋出TypeMismatchException異常,也可以注冊支持額外的數據類型。

另外,它也支持正則表達式,這就決定了它超強的屬性,它能在路徑模板中使用占位符,可以設定特定的前綴匹配和后綴匹配,自定義格式等。

6、@RequestBody

該注解是指方法形參應該被綁定到HTTP請求的Body上。

@RequestMapping(value = "/something", method = RequestMethod.PUT)
public void handle(@RequestBody User user){
   //可以綁定自定義的對象類型
}

使用 @RequestBody 注解

@RequestBody 注解是用于接收請求的 Content-Type為application/json 類型的請求,數據類型是 JSON。

不使用 @RequestBody 注解

不使用 @RequestBody 注解時,可以接收 Content-Type為application/x-www-form-urlencoded 類型,或者 Text 類型的請求所提交的數據,數據格式:

aaa=111&bbb=222  

1)form 表單提交以及用 Ajax 提交數據時方法所發(fā)送的請求就是這種類型。

2)后臺只需用具有對應屬性 id 和 name 的對象接收就行。

如果使用了 @RequestBody 來強行接收 Text 或者 application/x-www-form-urlencoded 類型,會報類型 not supported 的如下錯誤:

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 使用Spring注入Hibernate驗證框架

    使用Spring注入Hibernate驗證框架

    這篇文章主要介紹了使用Spring注入Hibernate驗證框架方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Nacos與SpringBoot實現配置管理的開發(fā)實踐

    Nacos與SpringBoot實現配置管理的開發(fā)實踐

    在微服務架構中,配置管理是一個核心組件,而Nacos為此提供了一個強大的解決方案,本文主要介紹了Nacos與SpringBoot實現配置管理的開發(fā)實踐,具有一定的參考價值
    2023-08-08
  • springboot調用支付寶第三方接口(沙箱環(huán)境)

    springboot調用支付寶第三方接口(沙箱環(huán)境)

    這篇文章主要介紹了springboot+調用支付寶第三方接口(沙箱環(huán)境),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • Java實現寵物商店管理

    Java實現寵物商店管理

    這篇文章主要為大家詳細介紹了Java實現寵物商店管理,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • Spring中@Value讀取properties作為map或list的操作

    Spring中@Value讀取properties作為map或list的操作

    這篇文章主要介紹了Spring中@Value讀取properties作為map或list的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java實現視頻時間維度剪切的工具類

    Java實現視頻時間維度剪切的工具類

    這篇文章主要為大家詳細介紹了將視頻按照時間維度進行剪切的Java工具類,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起了解一下
    2022-12-12
  • Java和Python現在都挺火,我應該怎么選?

    Java和Python現在都挺火,我應該怎么選?

    這篇文章主要介紹了Java和Python現在都挺火,我應該怎么選?本文通過全面分析給大家做個參考,需要的朋友可以參考下
    2020-07-07
  • 解析Spring Mvc Long類型精度丟失問題

    解析Spring Mvc Long類型精度丟失問題

    在平時開發(fā)過程中,經常會使用long類型作為id的類型,但是在使用過程中會導致long類型數據轉換為number類型時的后兩位變?yōu)?,今天小編給大家分享Spring Mvc Long類型精度丟失問題,需要的朋友參考下吧
    2021-06-06
  • java 詳解類加載器的雙親委派及打破雙親委派

    java 詳解類加載器的雙親委派及打破雙親委派

    這篇文章主要介紹了java 詳解類加載器的雙親委派及打破雙親委派的相關資料,需要的朋友可以參考下
    2017-01-01
  • springboot集成springsession如何實現分布式session共享

    springboot集成springsession如何實現分布式session共享

    這篇文章主要介紹了springboot集成springsession如何實現分布式session共享問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09

最新評論