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

Java后臺接收數(shù)據(jù)的三種方式(url、form-data與application/json)

 更新時間:2023年07月13日 10:49:31   作者:瑤山  
本文主要介紹了Java后臺接收數(shù)據(jù)的三種方式(url、form-data與application/json),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

url傳參的方式

    /**
     * 請求路徑:http://localhost:8080/hello/show5/1/james
     */
    @PostMapping("show5/{id}/{name}")
    public void test5(@PathVariable("id") Long ids, @PathVariable("name") String names){
    }

以form_data方式傳輸

    @PostMapping("/add/user")
    public JSONObject addUser(User param){
        return userService.addUser(param);
    }

字段接收-形參

    /**
     * @RequestParam() 里邊的值必須要和前端傳遞過來的參數(shù)名字相同
     */
    @PostMapping
    public String testUser(@RequestParam("name") String a, @RequestParam("phone") String b, String password){
        return "ok";
    }

以json數(shù)據(jù)傳輸

    @PostMapping("/add/user")
    public JSONObject addUser(@RequestBody User param){
        return userService.addUser(param);
    }

其實還有一種以前用過的請求方式:HttpServerletRequest.getParameter("name"),不常用

注解

@RequestParam

作用:將指定的請求參數(shù)賦值給方法中的形參

  • 指定的參數(shù)可以是普通元素、數(shù)組、集合、對象等等
  • 一個請求——》可以有多個@RequestParam

語法:@RequestParam(value="參數(shù)名",required="true/false",defaultValue="")

value:參數(shù)名
required:是否包含該參數(shù),默認為true,表示該請求路徑中必須包含該參數(shù),如果不包含就報錯。
defaultValue:默認參數(shù)值,如果設置了該值,required=true將失效,自動為false,如果沒有傳該參數(shù),就使用默認值

示例:

    @PostMapping("/test")
    public void test(@RequestParam(required = true)String name) {
    }

@RequestBody

作用:接收前端傳遞的Json對象的字符串。(請求體中的數(shù)據(jù))

  • Post請求,GET方式無請求體,所以使用@RequestBody接收數(shù)據(jù)時,前端不能使用GET方式提交數(shù)據(jù)
  • 一個請求——》只有一個@RequestBody

@PathVariable

作用:接收請求路徑中占位符的值。

Get路徑請求

語法:@RequestMapping(value=”user/{userId}/{userName}”)
示例:
    /**
     * 請求路徑:http://localhost:8080/hello/show5/1/james
     */
    @PostMapping("show5/{id}/{name}")
    public void test5(@PathVariable("id") Long ids, @PathVariable("name") String names){
    }

formdata和json的區(qū)別

Content-Type(內(nèi)容類型)

語法格式:

Content-Type: text/html; charset=utf-8
Content-Type: multipart/form-data; boundary=something

常見的媒體格式類型:

  • text/html : HTML格式
  • text/plain :純文本格式
  • text/xml : XML格式
  • image/gif :gif圖片格式
  • image/jpeg :jpg圖片格式
  • image/png:png圖片格式

以application開頭的媒體格式類型:

  • application/xhtml+xml :XHTML格式
  • application/xml: XML數(shù)據(jù)格式
  • application/atom+xml :Atom XML聚合格式
  • application/json: JSON數(shù)據(jù)格式
  • application/pdf:pdf格式
  • application/msword : Word文檔格式
  • application/octet-stream : 二進制流數(shù)據(jù)(如常見的文件下載)
  • application/x-www-form-urlencoded : 中默認的encType,form表單數(shù)據(jù)被編碼為key/value格式發(fā)送到服務器(表單默認的提交數(shù)據(jù)的格式)

另外一種常見的媒體格式是上傳文件之時使用的:

  • multipart/form-data : 需要在表單中進行文件上傳時,就需要使用該格式

formdata:

常用有兩種: application/x-www-form-urlencoded 和 multipart/form-data , 默認為application/x-www-form-urlencoded

  • multipart/form-data:既可以上傳文件等二進制數(shù)據(jù),也可以上傳表單鍵值對,只是最后會轉(zhuǎn)化為一條信息;
  • x-www-form-urlencoded:只能上傳鍵值對,并且鍵值對都是間隔分開的

json:

application/json: JSON數(shù)據(jù)格式,將數(shù)據(jù)進行序列化的一種方式,后端可以直接使用

關于post請求能用@pathVariable注解的嘗試

正常來說這個注解習慣使用在get請求上, 之前偷懶代碼貼出的是post, 關于此項的疑惑做個嘗試

找個controller復制過來之前的代碼

啟動項目, 端口80, 打開postman, 發(fā)送請求

控制臺

@PathVariable是spring3.0的新功能:接收請求路徑中占位符的值, 請求方式post, get, put等都可以

到此這篇關于Java后臺接收數(shù)據(jù)的三種方式(url、form-data與application/json)的文章就介紹到這了,更多相關Java后臺接收數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • spring data jpa 查詢自定義字段,轉(zhuǎn)換為自定義實體方式

    spring data jpa 查詢自定義字段,轉(zhuǎn)換為自定義實體方式

    這篇文章主要介紹了spring data jpa 查詢自定義字段,轉(zhuǎn)換為自定義實體方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Java 使用Calendar計算時間的示例代碼

    Java 使用Calendar計算時間的示例代碼

    這篇文章主要介紹了Java 使用Calendar計算時間的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • Java實現(xiàn)字符串轉(zhuǎn)為駝峰格式的方法詳解

    Java實現(xiàn)字符串轉(zhuǎn)為駝峰格式的方法詳解

    這篇文章主要介紹了如何利用Java語言實現(xiàn)字符串轉(zhuǎn)為駝峰格式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-07-07
  • Java 8 Stream操作類型及peek示例解析

    Java 8 Stream操作類型及peek示例解析

    這篇文章主要介紹了Java 8 Stream操作類型及peek示例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • springcloud gateway網(wǎng)關服務啟動報錯的解決

    springcloud gateway網(wǎng)關服務啟動報錯的解決

    這篇文章主要介紹了springcloud gateway網(wǎng)關服務啟動報錯的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • SpringBoot3集成Kafka的方法詳解

    SpringBoot3集成Kafka的方法詳解

    Kafka是一個開源的分布式事件流平臺,常被用于高性能數(shù)據(jù)管道、流分析、數(shù)據(jù)集成和關鍵任務應用,下面我們就來看看SpringBoot3是如何集成Kafka的吧
    2023-08-08
  • Java中異常處理之try和catch代碼塊的使用

    Java中異常處理之try和catch代碼塊的使用

    這篇文章主要介紹了Java中異常處理之try和catch代碼塊的使用,是Java入門學習中的基礎知識,需要的朋友可以參考下
    2015-09-09
  • Spring裝配Bean教程之XML安裝配置bean詳解

    Spring裝配Bean教程之XML安裝配置bean詳解

    大家都知道spring有多重配置方式,基于XML,基于注解,基于java類的配置,其中基于XML是最強大的一種,下面這篇文章主要給大家介紹了關于Spring裝配Bean之XML安裝配置bean的相關資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-10-10
  • Java使用Swagger接口框架方法詳解

    Java使用Swagger接口框架方法詳解

    這篇文章主要介紹了Java使用Swagger接口框架方法,Swagger是一個方便我們更好的編寫API文檔的框架,而且Swagger可以模擬http請求調(diào)用,感興趣的同學可以參考下文
    2023-05-05
  • Spring Boot Hello World的實現(xiàn)代碼

    Spring Boot Hello World的實現(xiàn)代碼

    這篇文章主要介紹了Spring Boot Hello World的實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-06-06

最新評論

山东省| 特克斯县| 游戏| 剑阁县| 乐平市| 九龙坡区| 澄城县| 东台市| 墨竹工卡县| 正安县| 绥中县| 泰来县| 阿尔山市| 永兴县| 扶沟县| 潢川县| 南溪县| 许昌市| 望城县| 石棉县| 福清市| 德令哈市| 集贤县| 临城县| 儋州市| 韶山市| 德州市| 海宁市| 开化县| 玉门市| 长兴县| 丹巴县| 疏附县| 忻城县| 临江市| 涪陵区| 康乐县| 泰安市| 聂荣县| 乌拉特后旗| 丁青县|