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

java實現(xiàn)多圖片上傳功能

 更新時間:2019年08月23日 16:21:44   作者:齊天二圣  
這篇文章主要為大家詳細介紹了java多圖片同步上傳功能的實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了java實現(xiàn)多圖片上傳功能的具體代碼,供大家參考,具體內(nèi)容如下

開發(fā)環(huán)境:jdk1.7,MyEclipse10
框架用的是spring。用到了maven工具(maven的包百度下就可以)。

四步完成,全部復(fù)制改參數(shù)就可以

第一步:先在Spring中對圖片進行限制

<!-- SpringMVC上傳文件時,需要配置MultipartResolver處理器 -->
 <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <property name="defaultEncoding" value="UTF-8"/> 
<!-- 指定所上傳文件的總大小不能超過500KB。注意maxUploadSize屬性的限制不是針對單個文件,而是所有文件的容量之和。
這個的大小是以字節(jié)為單位的,要多大自己算好了再設(shè)置-->
   <property name="maxUploadSize" value="500000"/>
   <!-- 最大內(nèi)存大小 (10240)-->
   <property name="maxInMemorySize" value="40960" />
 </bean>

第二步:寫jsp頁面

<%@ page language="java" contentType="text/html; charset=UTF-8"
 pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript" src="../js/jquery-1.7.1.min.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>上傳圖片</title>
</head>
<body>
 <form action="filesUpload" method="POST" name="xiangmu" id="xiangmu"
 enctype="multipart/form-data">
 <table>
  <tr>
  <td>身份證圖片上傳:</td>
  <td><input type=file name="myfiles" id="doc"
   onchange="showImage();">
  </td>
  <div id="localImag">
   <img id="preview" width=-1 height=-1 style="diplay:none" />
  </div>
  </tr>
  <tr>
  <td>公司運營情況:</td>
  <!-- 為了實現(xiàn)張圖片上傳,上傳框這個name要都一樣 -->
  <td><input type="file" name="myfiles" id="doc1"></td>
  <td>   
  </td>
  </tr>
  <tr>
  <td><input type="submit" value="提交" />
  </td>
  </tr>
 </table>
 </form>
</body>

</html>

注意:

多圖上傳,上傳框的name要都一樣,等于發(fā)送了一個MultipartFile[]數(shù)組。
不僅支持上傳圖片,還支持多文件上傳。
form的enctype=“multipart/form-data”,這個是上傳文件必須的。

第三步:如果你要實現(xiàn)頁面展現(xiàn)圖片的功能,就在jsp頁面添加下面的方法:

<script type="text/javascript">
 function showImage() {
 var docObj = document.getElementById("doc");
 var imgObjPreview = document.getElementById("preview");
 if (docObj.files && docObj.files[0]) {
  //火狐下,直接設(shè)img屬性 
  imgObjPreview.style.display = 'block';
  imgObjPreview.style.width = '300px';
  imgObjPreview.style.height = '120px';
  //imgObjPreview.src = docObj.files[0].getAsDataURL(); 
  //火狐7以上版本不能用上面的getAsDataURL()方式獲取,需要一下方式 
  imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]);
 } else {
  //IE下,使用濾鏡 
  docObj.select();
  var imgSrc = document.selection.createRange().text;
  var localImagId = document.getElementById("localImag");
  //必須設(shè)置初始大小 
  localImagId.style.width = "250px";
  localImagId.style.height = "200px";
  //圖片異常的捕捉,防止用戶修改后綴來偽造圖片 
  try {
  localImagId.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
  localImagId.filters
   .item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
  } catch (e) {
  alert("您上傳的圖片格式不正確,請重新選擇!");
  return false;
  }
  imgObjPreview.style.display = 'none';
  document.selection.empty();
 }
 return true;
 }
</script>

注意:這個方法只能上傳一張來顯示,除非你設(shè)置多個div?;蛘撸赫故径鄠€圖片可以找找其他方法。

第四步:后臺接收

@RequestMapping("/filesUpload")
 //requestParam要寫才知道是前臺的那個數(shù)組
 public String filesUpload(@RequestParam("myfiles") MultipartFile[] files,
  HttpServletRequest request) {
 List<String> list = new ArrayList<String>();
 if (files != null && files.length > 0) {
  for (int i = 0; i < files.length; i++) {
  MultipartFile file = files[i];
  // 保存文件
  list = saveFile(request, file, list);
  }
 }
 //寫著測試,刪了就可以
 for (int i = 0; i < list.size(); i++) {
  System.out.println("集合里面的數(shù)據(jù)" + list.get(i));
 }
 return "index";//跳轉(zhuǎn)的頁面
 }

 private List<String> saveFile(HttpServletRequest request,
  MultipartFile file, List<String> list) {
 // 判斷文件是否為空
 if (!file.isEmpty()) {
  try {
  // 保存的文件路徑(如果用的是Tomcat服務(wù)器,文件會上傳到\\%TOMCAT_HOME%\\webapps\\YourWebProject\\upload\\文件夾中
  // )
  String filePath = request.getSession().getServletContext()
   .getRealPath("/")
   + "upload/" + file.getOriginalFilename();
  list.add(file.getOriginalFilename());
  File saveDir = new File(filePath);
  if (!saveDir.getParentFile().exists())
   saveDir.getParentFile().mkdirs();

  // 轉(zhuǎn)存文件
  file.transferTo(saveDir);
  return list;
  } catch (Exception e) {
  e.printStackTrace();
  }
 }
 return list;
 }

注意:upload是文件夾,自己新建下再運行,免得出錯。

結(jié)束,全部復(fù)制就可以實現(xiàn)了。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Eclipse+Java+Swing+Mysql實現(xiàn)電影購票系統(tǒng)(詳細代碼)

    Eclipse+Java+Swing+Mysql實現(xiàn)電影購票系統(tǒng)(詳細代碼)

    這篇文章主要介紹了Eclipse+Java+Swing+Mysql實現(xiàn)電影購票系統(tǒng)并附詳細的代碼詳解,需要的小伙伴可以參考一下
    2022-01-01
  • java中給實體對象屬性的空值賦默認值

    java中給實體對象屬性的空值賦默認值

    這篇文章主要介紹了java中給實體對象屬性的空值賦默認值,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Java Math.round函數(shù)詳解

    Java Math.round函數(shù)詳解

    這篇文章主要介紹了Java Math.round函數(shù)詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • springboot整合vue2-uploader實現(xiàn)文件分片上傳、秒傳、斷點續(xù)傳功能

    springboot整合vue2-uploader實現(xiàn)文件分片上傳、秒傳、斷點續(xù)傳功能

    對于大文件的處理,無論是用戶端還是服務(wù)端,如果一次性進行讀取發(fā)送、接收都是不可取,很容易導(dǎo)致內(nèi)存問題,下面這篇文章主要給大家介紹了關(guān)于springboot整合vue2-uploader實現(xiàn)文件分片上傳、秒傳、斷點續(xù)傳功能的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • Java三種求水仙花數(shù)的方法

    Java三種求水仙花數(shù)的方法

    本篇文章通過求水仙花數(shù)的實例來讓大家對JAVA求數(shù)的概念和方法有更深入的理解和應(yīng)用,學(xué)習參考下吧。
    2018-02-02
  • 簡單了解JavaCAS的相關(guān)知識原理

    簡單了解JavaCAS的相關(guān)知識原理

    這篇文章主要介紹了簡單了解JavaCAS的相關(guān)知識,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2019-11-11
  • 一文教你如何使用Java靈活讀取Excel內(nèi)容

    一文教你如何使用Java靈活讀取Excel內(nèi)容

    這篇文章主要給大家介紹了關(guān)于如何使用Java靈活讀取Excel內(nèi)容的相關(guān)資料,讀取Excel數(shù)據(jù)是Java開發(fā)中常見的任務(wù),文中通過代碼示例介紹的非常詳細,需要的朋友可以參考下
    2023-09-09
  • Java 用Prometheus搭建實時監(jiān)控系統(tǒng)過程詳解

    Java 用Prometheus搭建實時監(jiān)控系統(tǒng)過程詳解

    這篇文章主要介紹了用Prometheus搭建實時監(jiān)控系統(tǒng)過程詳解之上帝之火,普羅米修斯的崛起,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2020-07-07
  • SpringMVC使用注解實現(xiàn)登錄功能

    SpringMVC使用注解實現(xiàn)登錄功能

    這篇文章主要為大家詳細介紹了SpringMVC使用注解實現(xiàn)登錄功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • springboot接口返回數(shù)據(jù)類型全面解析

    springboot接口返回數(shù)據(jù)類型全面解析

    這篇文章主要介紹了springboot接口返回數(shù)據(jù)類型問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12

最新評論