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

java map轉(zhuǎn)Multipart/form-data類型body實(shí)例

 更新時(shí)間:2020年05月05日 19:34:53   作者:qq_33770498  
這篇文章主要介紹了java map轉(zhuǎn)Multipart/form-data類型body實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

我就廢話不多說(shuō)了,大家還是直接看代碼吧!

public static String mapToTxt(Map<String,String> fieldMap, Map<String,File> fileMap,String fileName) throws Exception{
		Random random = new Random();
		int j;
		String getLine = "\r\n";
		String fileType = "Content-Type: application/octet-stream";
		String doubleBar = "--";
		biaoshi = "----WebKitFormBoundary";
		StringBuffer sb = new StringBuffer();
		for(int i = 0; i < 16;i++){
			j = random.nextInt(MULTIPART_CHARS.length-2)+2;
			sb.append(MULTIPART_CHARS[j]);
		}
		biaoshi = biaoshi + sb.toString();
		StringBuffer stringBuffer = new StringBuffer();
 
 
 
		for (Map.Entry<String,String> entity:fieldMap.entrySet()) {
			String name = "Content-Disposition: form-data; name=\""+entity.getKey()+"\"";
			stringBuffer.append(doubleBar+biaoshi);
			stringBuffer.append(getLine);
			stringBuffer.append(name);
			stringBuffer.append(getLine);
			stringBuffer.append(getLine);
			stringBuffer.append(entity.getValue());
			stringBuffer.append(getLine);
		}
 
		for (Map.Entry<String,File> entity:fileMap.entrySet()) {
			String name = "Content-Disposition: form-data; name=\""+fileName+"\"; filename=\""+entity.getValue().getName()+"\"";
			stringBuffer.append(doubleBar+biaoshi);
			stringBuffer.append(getLine);
			stringBuffer.append(name);
			stringBuffer.append(getLine);
			stringBuffer.append(fileType);
			stringBuffer.append(getLine);
			stringBuffer.append(getLine);
			File f = entity.getValue();
			FileInputStream fileInputStream = new FileInputStream(f);
			ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
			byte by[] = new byte[1024];
			int k = 0;
			while ((k=fileInputStream.read(by))!=-1){
				byteArrayOutputStream.write(by,0,k);
			}
			by = byteArrayOutputStream.toByteArray();
			for(int i = 0; i < by.length; i++){
				stringBuffer.append(by[i]);
			}
			stringBuffer.append(getLine);
		}
		stringBuffer.append(doubleBar+biaoshi+doubleBar);
		return stringBuffer.toString();
	}

補(bǔ)充知識(shí):java 如何取出傳參數(shù)格式為form-data中的值

 public Map<String, Object> Test(HttpServletRequest request,HttpServletRequest response) throws Exception {
     Map<String, String> returnMap = new HashMap<String, String>();
    String a=request.getParameter("a");//取出form-data中a的值
    String b=request.getParameter("b");//取出form-data中a的值
    //取出form-data中的二進(jìn)制字段
    MultipartHttpServletRequest multipartRequest=(MultipartHttpServletRequest) request; 
    MultipartFile multipartFile = multipartRequest.getFile("file");//file是form-data中二進(jìn)制字段對(duì)應(yīng)的name
    System.out.println(multipartFile.getSize());  
    Map<String, Object> resultMapsReturn = new HashMap<>();
    String imagePath="C:\\Users\\win\\Desktop\\1.jpg"http://把取出來(lái)的二進(jìn)制保存圖片到本地
    if(multipartFile.getSize()<=0){
      resultMapsReturn.put("resultcode", "0");
      resultMapsReturn.put("msg", DisWebConst.ERROR_TITLE);
    }else{
      InputStream is = multipartFile.getInputStream();

      OutputStream out = new FileOutputStream(imagePath);
      IOUtils.copy(is, out);
      is.close();
      out.close();
    }

以上這篇java map轉(zhuǎn)Multipart/form-data類型body實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring框架中IoC容器與DI依賴注入教程

    Spring框架中IoC容器與DI依賴注入教程

    IOC也是Spring的核心之一了,之前學(xué)的時(shí)候是采用xml配置文件的方式去實(shí)現(xiàn)的,后來(lái)其中也多少穿插了幾個(gè)注解,但是沒有說(shuō)完全采用注解實(shí)現(xiàn)。那么這篇文章就和大家分享一下,全部采用注解來(lái)實(shí)現(xiàn)IOC + DI
    2023-01-01
  • java常見事件響應(yīng)方法實(shí)例匯總

    java常見事件響應(yīng)方法實(shí)例匯總

    這篇文章主要介紹了java常見事件響應(yīng)方法,對(duì)于初學(xué)者有很好的參考借鑒價(jià)值,分享給大家,需要的朋友可以參考下
    2014-08-08
  • Java 注解的使用實(shí)例詳解

    Java 注解的使用實(shí)例詳解

    這篇文章主要介紹了Java 注解的使用實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • Java中的CopyOnWriteArrayList原理詳解

    Java中的CopyOnWriteArrayList原理詳解

    這篇文章主要介紹了Java中的CopyOnWriteArrayList原理詳解,如源碼所示,CopyOnWriteArrayList和ArrayList一樣,都在內(nèi)部維護(hù)了一個(gè)數(shù)組,操作CopyOnWriteArrayList其實(shí)就是在操作內(nèi)部的數(shù)組,需要的朋友可以參考下
    2023-12-12
  • java三個(gè)環(huán)境變量配置簡(jiǎn)單教程

    java三個(gè)環(huán)境變量配置簡(jiǎn)單教程

    這篇文章主要為大家詳細(xì)介紹了java三個(gè)環(huán)境變量配置簡(jiǎn)單教程,配置path變量、配置classpath變量、最后是配置JAVA_HOME變量,感興趣的小伙伴們可以參考一下
    2016-07-07
  • Java之Mybatis多層嵌套查詢方式

    Java之Mybatis多層嵌套查詢方式

    這篇文章主要介紹了Java之Mybatis多層嵌套查詢方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • SpringBoot數(shù)據(jù)庫(kù)查詢超時(shí)配置詳解

    SpringBoot數(shù)據(jù)庫(kù)查詢超時(shí)配置詳解

    這篇文章主要介紹了SpringBoot數(shù)據(jù)庫(kù)查詢超時(shí)配置,超時(shí)配置可以避免長(zhǎng)時(shí)間占用數(shù)據(jù)庫(kù)連接,提高系統(tǒng)的響應(yīng)速度和吞吐量,還可以快速的反饋可以提升用戶體驗(yàn),避免用戶因長(zhǎng)時(shí)間等待而感到挫敗,文中有詳細(xì)的代碼示例供大家參考,需要的朋友可以參考下
    2024-11-11
  • Maven使用方法詳及方式詳細(xì)介紹

    Maven使用方法詳及方式詳細(xì)介紹

    使用maven倉(cāng)庫(kù)的話需要從網(wǎng)上下載maven的包,比如“apache-maven-3.5.4-bin.tar”,下載完成之后解壓,在解壓的文件夾中的conf目錄下的settings.xml文件夾下就可以配置maven遠(yuǎn)程倉(cāng)庫(kù)和本地倉(cāng)庫(kù)的地址
    2022-11-11
  • Spring Boot整合logback一個(gè)簡(jiǎn)單的日志集成架構(gòu)

    Spring Boot整合logback一個(gè)簡(jiǎn)單的日志集成架構(gòu)

    今天小編就為大家分享一篇關(guān)于Spring Boot整合logback一個(gè)簡(jiǎn)單的日志集成架構(gòu),小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01
  • Java集合之整體結(jié)構(gòu)

    Java集合之整體結(jié)構(gòu)

    Java中集合類是Java編程中使用最頻繁、最方便的類。接下來(lái)通過(guò)本文給大家介紹Java集合之整體結(jié)構(gòu),一起看看吧
    2016-05-05

最新評(píng)論

荆州市| 海城市| 茌平县| 内乡县| 成都市| 湘潭市| 曲麻莱县| 定边县| 唐海县| 旬邑县| 湖南省| 鄯善县| 平罗县| 榆社县| 陆河县| 墨江| 开鲁县| 宜昌市| 宜春市| 渑池县| 丰城市| 容城县| 乳源| 嘉义县| 肇州县| 合肥市| 黑河市| 台北县| 定陶县| 大石桥市| 中卫市| 平原县| 深水埗区| 额尔古纳市| 昌宁县| 临邑县| 阿克陶县| 衡南县| 临洮县| 东丰县| 巴东县|