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

java 獲取request中的請求參數(shù)代碼詳解

 更新時間:2019年05月24日 11:21:21   作者:紫薇帝星的故事  
這篇文章主要介紹了java 獲取request中的請求參數(shù)的方法,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值 ,需要的朋友可以參考下

1、get 和 post請求方式

 (1)request.getParameterNames(); 獲取所有參數(shù)key后。遍歷request.getParameter(key)獲取value

 (2)request.getParameterMap() 。直接包含參數(shù)key和value值,簡單方便

Map<String, String[]>maps = request.getParameterMap();
for (Map.Entry<String, String[]> entry : maps.entrySet()) {
  String cs = entry.getKey() + ":"+Arrays.toString(entry.getValue())+";";
}

2、獲取請求類型為request  payload方式

 這里就不介紹文件流的了,主要針對 后端采用@RequestBody方式的請求

這類數(shù)據(jù)通過以上2種方式是獲取不到的,它是存放在流里面,要通過getInputStream()getReader()方式獲取

public String getRequestData(HttpServletRequest httpServletRequest){
  HttpServletRequestWrapper httpServletRequestWrapper = new HttpServletRequestWrapper(httpServletRequest);
  StringBuilder sb = new StringBuilder();
  BufferedReader reader = null;
  InputStreamReader inputStreamReader=null;
  ServletInputStream servletInputStream =null;
  try {
   servletInputStream = httpServletRequestWrapper.getInputStream();
   inputStreamReader=new InputStreamReader (servletInputStream, Charset.forName("UTF-8"));
   reader = new BufferedReader(inputStreamReader);
   String line = "";
   while ((line = reader.readLine()) != null) {
    sb.append(line);
   }
  } catch (IOException e) {
   return "";
  }finally {
   try {
    if(servletInputStream!=null){
     servletInputStream.close();
    }
    if(inputStreamReader!=null){
     inputStreamReader.close();
    }
    if(reader!=null){
     reader.close();
    }
   } catch (IOException e) {
    
   }
  }
  return sb.toString ();
 }

需要注意的是getInputStream()這種獲取流的方式  只能用一次,如果多次調(diào)用  需要緩存起來,不然流的數(shù)據(jù)到不了Controller層,報400錯誤

總結(jié)

以上所述是小編給大家介紹的java 獲取request中的請求參數(shù)的代碼詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • Java?for循環(huán)標簽跳轉(zhuǎn)到指定位置的示例詳解

    Java?for循環(huán)標簽跳轉(zhuǎn)到指定位置的示例詳解

    這篇文章主要介紹了Java?for循環(huán)標簽跳轉(zhuǎn)到指定位置,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-05-05
  • 全面解析@InsertProvider執(zhí)行原理

    全面解析@InsertProvider執(zhí)行原理

    這篇文章主要介紹了全面解析@InsertProvider執(zhí)行原理,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Mybatis核心組成部分之SQL映射文件揭秘詳解

    Mybatis核心組成部分之SQL映射文件揭秘詳解

    MyBatis真正的力量是在映射語句中,下面這篇文章主要給大家介紹了關(guān)于Mybatis核心組成部分之SQL映射文件揭秘的相關(guān)資料,現(xiàn)在分享給大家,給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • Java synchronized與CAS使用方式詳解

    Java synchronized與CAS使用方式詳解

    提到Java的知識點一定會有多線程,JDK版本不斷的更迭很多新的概念和方法也都響應(yīng)提出,但是多線程和線程安全一直是一個重要的關(guān)注點。比如說我們一入門就學(xué)習(xí)的synchronized怎么個實現(xiàn)和原理,還有總是被提到的CAS是啥,他和synchronized關(guān)系是啥?請往下看
    2023-01-01
  • JAVA自定義異常使用方法實例詳解

    JAVA自定義異常使用方法實例詳解

    這篇文章主要介紹了JAVA自定義異常使用方法實例詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • 解決springboot 無法配置多個靜態(tài)路徑的問題

    解決springboot 無法配置多個靜態(tài)路徑的問題

    這篇文章主要介紹了解決springboot 無法配置多個靜態(tài)路徑的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Mybatis分頁的4種方式實例

    Mybatis分頁的4種方式實例

    這篇文章主要介紹了Mybatis分頁的4種方式實例,包括數(shù)組分頁,sql分頁,攔截器分頁,RowBounds分頁,需要的朋友可以參考下
    2022-04-04
  • SpringBoot監(jiān)控SQL運行情況的流程步驟

    SpringBoot監(jiān)控SQL運行情況的流程步驟

    Druid是Java語言中最好的數(shù)據(jù)庫連接池,雖然?HikariCP?的速度稍快,但是,Druid能夠提供強大的監(jiān)控和擴展功能?,也是阿里巴巴的開源項目,本文給大家介紹了SpringBoot監(jiān)控SQL運行情況的流程步驟,需要的朋友可以參考下
    2024-03-03
  • SpringBoot+Querydsl?框架實現(xiàn)復(fù)雜查詢解析

    SpringBoot+Querydsl?框架實現(xiàn)復(fù)雜查詢解析

    本篇主要將介紹的是利用spring query dsl框架實現(xiàn)的服務(wù)端查詢解析和實現(xiàn)介紹,對SpringBoot?Querydsl?查詢操作感興趣的朋友一起看看吧
    2022-05-05
  • springMVC的生命周期詳解

    springMVC的生命周期詳解

    本篇文章主要介紹了springMVC的生命周期詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03

最新評論

平阳县| 万山特区| 峡江县| 柳林县| 金平| 来宾市| 抚州市| 兰坪| 垫江县| 肥东县| 新沂市| 延庆县| 白河县| 泽州县| 娱乐| 隆化县| 夹江县| 盐津县| 黄陵县| 罗田县| 阳春市| 阿克| 乌拉特前旗| 图木舒克市| 思南县| 富川| 珠海市| 佛教| 阜阳市| 德令哈市| 琼结县| 娄烦县| 绿春县| 合阳县| 满洲里市| 镇康县| 华蓥市| 卓资县| 两当县| 阿坝| 江津市|