亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? uploadservlet.java

?? 實現各種文件的長傳功能!同時可以設置上傳文件的格式和大小!上傳的目錄!
?? JAVA
字號:
package com.upload;

import java.io.*;
import java.util.Iterator;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.*;

import org.apache.commons.fileupload.*;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

public class UploadServlet extends HttpServlet {
	
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {
        //創建HttpSession對象
		HttpSession session = request.getSession();

		if ("status".equals(request.getParameter("c"))) {//如果請求中c的值為status
			doStatus(session, response);//調用doStatus方法
		} else {//否則,調用doFileUpload方法
			doFileUpload(session, request, response);
		}
	}
	public void processUploadedFile(FileItem item) {
		String result=null;
		//獲得上傳文件的文件名
		String fileName = item.getName().substring(item.getName().lastIndexOf("\\") + 1);
		//創建File對象,將上傳得文件保存到C:\\upload文件夾下
		File file = new File("C:\\upload\\", fileName);
		InputStream in;
		try {
			in = item.getInputStream();//獲得輸入數據流文件
			//將該數據流寫入到指定文件中
			FileOutputStream out = new FileOutputStream(file);
			byte[] buffer = new byte[4096]; // To hold file contents
			int bytes_read;
			while ((bytes_read = in.read(buffer)) != -1) // Read until EOF
			{
				out.write(buffer, 0, bytes_read);
			}
			if (in != null)
				try {
					in.close();
				} catch (IOException e) {
					;
				}
			if (out != null)
				try {
					out.close();
				} catch (IOException e) {
					;
				}
		} catch (IOException e1) {
			e1.printStackTrace();
		}
	}

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws IOException, ServletException {
		doPost(request, response);
	}

	private void doFileUpload(HttpSession session, HttpServletRequest request,
			HttpServletResponse response) throws IOException {
		try {
			//創建UploadListener對象
			UploadListener listener = new UploadListener(request.getContentLength());
			listener.start();//啟動監聽狀態
			//將監聽器對象的狀態保存在Session中
			session.setAttribute("FILE_UPLOAD_STATS", listener.getFileUploadStats());
			//創建MonitoredDiskFileItemFactory對象
			FileItemFactory factory = new MonitoredDiskFileItemFactory(listener);
			//通過該工廠對象創建ServletFileUpload對象
			ServletFileUpload upload = new ServletFileUpload(factory);
			//將轉化請求保存到list對象中
			List items = upload.parseRequest(request);
			//停止使用監聽器
			listener.done();
			boolean hasError = false;
			//循環list中的對象
			for (Iterator i = items.iterator(); i.hasNext();) {
				FileItem fileItem = (FileItem) i.next();
				if (!fileItem.isFormField()) {//如果該FileItem不是表單域
					processUploadedFile(fileItem);//調用processUploadedFile方法,將數據保存到文件中
					fileItem.delete();//內存中刪除該數據流
				}
			}

			if (!hasError) {//如果沒有出現錯誤
				sendCompleteResponse(response, null);//調用sendCompleteResponse方法
			} else {
				sendCompleteResponse(response,
						"Could not process uploaded file. Please see log for details.");
			}
		} catch (Exception e) {
			sendCompleteResponse(response, e.getMessage());
		}
	}

	private void doStatus(HttpSession session, HttpServletResponse response)
			throws IOException {
		// 設置該響應不在緩存中讀取
		response.addHeader("Expires", "0");
		response.addHeader("Cache-Control",
				"no-store, no-cache, must-revalidate");
		response.addHeader("Cache-Control", "post-check=0, pre-check=0");
		response.addHeader("Pragma", "no-cache");
        //獲得保存在Session中的狀態信息
		UploadListener.FileUploadStats fileUploadStats = (UploadListener.FileUploadStats) session.getAttribute("FILE_UPLOAD_STATS");
		if (fileUploadStats != null) {
			long bytesProcessed = fileUploadStats.getBytesRead();//獲得已經上傳的數據大小
			long sizeTotal = fileUploadStats.getTotalSize();//獲得上傳文件的總大小
			//計算上傳完成的百分比
			long percentComplete = (long) Math.floor(((double) bytesProcessed / (double) sizeTotal) * 100.0);
			//獲得上傳已用的時間
			long timeInSeconds = fileUploadStats.getElapsedTimeInSeconds();
			//計算平均上傳速率
			double uploadRate = bytesProcessed / (timeInSeconds + 0.00001);
			// 計算總共所需時間
			double estimatedRuntime = sizeTotal / (uploadRate + 0.00001);
            //將上傳狀態返回給客戶端
			response.getWriter().println("<b>Upload Status:</b><br/>");
			if (fileUploadStats.getBytesRead() != fileUploadStats.getTotalSize()) {
				response.getWriter().println(
						"<div class=\"prog-border\"><div class=\"prog-bar\" style=\"width: "
								+ percentComplete + "%;\"></div></div>");
				response.getWriter().println(
						"Uploaded: " + bytesProcessed + " out of " + sizeTotal
								+ " bytes (" + percentComplete + "%) "
								+ (long) Math.round(uploadRate / 1024)
								+ " Kbs <br/>");
				response.getWriter().println(
						"Runtime: " + formatTime(timeInSeconds) + " out of "
								+ formatTime(estimatedRuntime) + " "
								+ formatTime(estimatedRuntime - timeInSeconds)
								+ " remaining <br/>");
			} else {
				response.getWriter().println(
						"Uploaded: " + bytesProcessed + " out of " + sizeTotal
								+ " bytes<br/>");
				response.getWriter().println("Complete.<br/>");
			}
		}
        //如果文件已經上傳完畢
		if (fileUploadStats != null&& fileUploadStats.getBytesRead() == fileUploadStats.getTotalSize()) {
			response.getWriter().println("<b>Upload complete.</b>");
		}
	}

	private void sendCompleteResponse(HttpServletResponse response,
			String message) throws IOException {
		if (message == null) {
			response.getOutputStream().print("<html><head><script type='text/javascript'>function killUpdate() { window.parent.killUpdate(''); }</script></head><body onload='killUpdate()'></body></html>");
		} else {
			response.getOutputStream().print("<html><head><script type='text/javascript'>function killUpdate() { window.parent.killUpdate('"
									+ message+ "'); }</script></head><body onload='killUpdate()'></body></html>");
		}
	}

	private String formatTime(double timeInSeconds) {
		long seconds = (long) Math.floor(timeInSeconds);
		long minutes = (long) Math.floor(timeInSeconds / 60.0);
		long hours = (long) Math.floor(minutes / 60.0);

		if (hours != 0) {
			return hours + "hours " + (minutes % 60) + "minutes "
					+ (seconds % 60) + "seconds";
		} else if (minutes % 60 != 0) {
			return (minutes % 60) + "minutes " + (seconds % 60) + "seconds";
		} else {
			return (seconds % 60) + " seconds";
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
337p亚洲精品色噜噜噜| 欧美午夜片在线观看| 一区二区三区在线免费| 欧美一区二区三区公司| 成人毛片在线观看| 亚洲成av人片在线| 国产精品剧情在线亚洲| 日韩免费视频线观看| 在线观看日产精品| aaa亚洲精品| 国产一区二区三区免费观看| 亚洲九九爱视频| 久久综合久久综合亚洲| 欧美美女一区二区在线观看| 成人美女视频在线观看| 韩国精品久久久| 日本欧美一区二区三区乱码| 亚洲视频狠狠干| 久久久久久黄色| 日韩欧美成人激情| 欧美高清激情brazzers| 日本韩国精品在线| 成人精品视频.| 国产精品一区二区三区网站| 麻豆国产精品视频| 日韩成人免费电影| 午夜精品一区二区三区免费视频 | 中文字幕av一区二区三区| 91精品在线观看入口| 欧美亚洲国产怡红院影院| 成人app网站| 99久久婷婷国产综合精品电影| 国模娜娜一区二区三区| 九九热在线视频观看这里只有精品| 亚洲成年人影院| 亚洲国产一区二区视频| 亚洲一区二区美女| 亚洲蜜臀av乱码久久精品蜜桃| 1区2区3区精品视频| 最新热久久免费视频| 国产精品美女久久久久aⅴ| 欧美激情在线一区二区三区| 国产三级欧美三级日产三级99| 精品国产91亚洲一区二区三区婷婷| 日韩欧美国产麻豆| 日韩一区二区三区电影在线观看| 51久久夜色精品国产麻豆| 欧美喷潮久久久xxxxx| 欧美日韩一级黄| 69堂国产成人免费视频| 日韩欧美另类在线| 精品99一区二区三区| 久久久综合九色合综国产精品| 久久免费看少妇高潮| 中文字幕免费在线观看视频一区| 欧美国产禁国产网站cc| 中文字幕一区二区三区在线播放| 中文字幕中文在线不卡住| 亚洲天堂精品在线观看| 亚洲综合视频网| 五月婷婷激情综合| 老司机午夜精品| 国产69精品久久久久777| www.欧美色图| 欧美日韩免费一区二区三区 | 成人av一区二区三区| 9i看片成人免费高清| 在线观看国产91| 欧美二区三区91| 精品99一区二区三区| 国产精品国产三级国产普通话99 | 久久久影视传媒| 中文字幕在线观看一区二区| 亚洲综合清纯丝袜自拍| 日本女人一区二区三区| 国产福利一区二区三区视频在线| 成人app软件下载大全免费| 欧美视频在线观看一区| 精品少妇一区二区三区| 国产精品无圣光一区二区| 亚洲丰满少妇videoshd| 国产激情一区二区三区桃花岛亚洲| 99国产精品99久久久久久| 6080午夜不卡| 中文子幕无线码一区tr | 久久成人羞羞网站| 成人av在线电影| 欧美一级淫片007| 国产精品萝li| 青青草国产成人av片免费| 成人午夜短视频| 91精品国产福利| 亚洲欧美综合网| 美女视频网站黄色亚洲| av电影一区二区| 26uuu欧美日本| 亚洲va欧美va人人爽| 成人激情图片网| 欧美一区二区三区四区五区| 成人免费一区二区三区视频 | 久久69国产一区二区蜜臀| 91性感美女视频| 久久久噜噜噜久噜久久综合| 视频一区二区不卡| 一本色道久久综合精品竹菊| 久久综合九色综合欧美亚洲| 亚洲成va人在线观看| gogo大胆日本视频一区| 久久综合视频网| 热久久国产精品| 欧美又粗又大又爽| 国产精品电影一区二区三区| 国产一区二区导航在线播放| 宅男噜噜噜66一区二区66| 樱花影视一区二区| 成人性生交大片免费看中文| 精品少妇一区二区| 日韩国产欧美在线视频| 欧美专区日韩专区| 亚洲日本一区二区| 成人黄色在线网站| 国产丝袜美腿一区二区三区| 免费看黄色91| 在线播放中文一区| 午夜精品久久久久影视| 日本韩国一区二区三区| 亚洲精品一二三| 一本到一区二区三区| 国产精品私人影院| 国产91在线看| 国产欧美日韩麻豆91| 国产精品资源在线看| wwww国产精品欧美| 韩日精品视频一区| 2022国产精品视频| 国产伦理精品不卡| 国产日产精品1区| 国产精品一区二区久久精品爱涩| 欧美本精品男人aⅴ天堂| 久久国产精品露脸对白| 制服丝袜日韩国产| 奇米在线7777在线精品 | 亚洲日本青草视频在线怡红院| 成人激情av网| 亚洲女与黑人做爰| 欧美中文字幕一区二区三区亚洲| 亚洲一区二三区| 欧美日韩精品一区二区三区四区| 午夜久久久久久| 日韩欧美久久久| 国产麻豆精品视频| 中文字幕乱码日本亚洲一区二区| 成人h动漫精品| 亚洲免费观看高清| 欧美色综合网站| 免费人成在线不卡| 久久久久久久久久久电影| 丁香桃色午夜亚洲一区二区三区| 国产精品女主播在线观看| 91丨porny丨在线| 亚洲午夜一区二区| 欧美成人vps| 成人的网站免费观看| 亚洲国产欧美一区二区三区丁香婷| 欧美精品丝袜中出| 狠狠色伊人亚洲综合成人| 国产精品伦理一区二区| 欧美亚洲禁片免费| 韩国三级中文字幕hd久久精品| 国产精品美女久久久久久久久久久| 色诱亚洲精品久久久久久| 天堂在线亚洲视频| 国产视频在线观看一区二区三区| 91蝌蚪porny九色| 免费高清视频精品| 国产精品久久久久久福利一牛影视 | 亚洲综合图片区| 精品蜜桃在线看| 91麻豆国产在线观看| 日本va欧美va精品发布| 国产精品久久久久天堂| 欧美精品久久久久久久久老牛影院| 九一九一国产精品| 亚洲欧美日韩一区| 久久综合视频网| 欧美图片一区二区三区| 国产精品综合二区| 午夜精品久久久久久久99樱桃| 久久久精品欧美丰满| 91国内精品野花午夜精品| 久久99热国产| 亚洲综合色丁香婷婷六月图片| 精品久久久久久久人人人人传媒| 91亚洲永久精品| 久久精品国产一区二区三区免费看| 中文字幕av一区二区三区| 欧美一卡二卡在线| 日本精品免费观看高清观看| 国模套图日韩精品一区二区 | 国产精品免费免费|