(1)写文件上传进度监听器类:
package com.my.other;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.commons.fileupload.ProgressListener;
public class UploadProgressListener implements ProgressListener {
privatelong megaBytes = -1;
HttpServletRequestrequest = null;
UploadInfoprogressInfo = null;
publicUploadProgressListener(HttpServletRequestrequest) {
this.request = request;
progressInfo = (UploadInfo)request.getSession().getAttribute("uploadInfo");
if (progressInfo == null) {
progressInfo = new UploadInfo();
request.getSession().setAttribute("uploadInfo", progressInfo);
}
}
publicvoid update(long pBytesRead, long pContentLength,int pItems) {
long mBytes = pBytesRead/ 100000;
if (megaBytes == mBytes) {
return;
}
megaBytes = mBytes;
if (pContentLength == -1) {
progressInfo.setStatus("done");
}else {
progressInfo.setFileIndex(pItems);
progressInfo.setTotalSize(pContentLength);
progressInfo.setBytesRead(pBytesRead);
progres