package lc.progress;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Iterator;
import java.util.List;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
public class uploadServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
this.doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setSizeThreshold(2048*1024);
myProgressListener getBarListener = new myProgressListener(req);
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setProgressListener(getBarListener);
try {
List formList = upload.parseRequest(req);
Iterator<Object> formItem = formList.iterator();
// 将进度监听器加载进去
while (formItem.hasNext()) {
FileItem item = (FileItem) formItem.next();
if (item.isFormField()) {
System.out.println("Field Name:" + item.getFieldName());
} else {
String fileName = item.getName().substring(item.getName().lastIndexOf("\\")+1);
File file = new File("e:\\temp"
+ "\\" + fileName);
System.out.println("e:\\temp"
+ "\\" + fileName);
OutputStream out = item.getOutputStream();
InputStream in = item.getInputStream();
req.getSession().setAttribute("outPutStream", out);
req.getSession().setAttribute("inPutStream", in);
item.write(file);
}
}
} catch (FileUploadException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
super.init(config);
}
}
最近下载更多
tianqisonw LV1
2024年2月1日
wanglun_wl LV10
2024年1月5日
gvin001 LV14
2023年5月16日
hgwnet LV1
2021年12月8日
张骞的账号 LV1
2021年12月7日
vander LV1
2021年7月11日
©~~© LV1
2021年4月22日
oldfox LV19
2020年12月24日
1530688385 LV5
2020年12月18日
sevenLeeWei LV1
2020年11月13日
最近浏览更多
tianqisonw LV1
2024年2月1日
wanglun_wl LV10
2024年1月5日
1024173314 LV1
2023年12月31日
Ji123455 LV8
2023年9月21日
changhui LV1
2023年9月7日
wwswdgyqd LV6
2023年5月25日
gvin001 LV14
2023年5月16日
月光skr LV4
2023年4月16日
微信网友_6166561027215360 LV2
2022年10月8日
我们都是小怪兽 LV3
2022年9月6日

