JavaWeb 文件上传
来源:互联网 发布:局域网ip mac扫描软件 编辑:程序博客网 时间:2024/05/17 22:05
1、建 upload.jsp
<body><h1>文件上传</h1><hr><form action="${pageContext.request.contextPath }/servlet/UploadServlet" method="POST" enctype="multipart/form-data">描述信息1:<input type="text" name="description1"/>描述信息2:<input type="text" name="description2"/><input type="file" name="file1" /><input type="submit" value="上传"/></form> </body>
2、导包
commons-fileupload.jar
commons-io.jar
3、创建 UploadServlet
public class UploadServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {try{//1.创建工厂类DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setSizeThreshold(100*1024); //手动设置内存缓冲区 100K factory.setRepository(new File(this.getServletContext().getRealPath("WEB-INF/temp"))); //手动设置临时文件夹//2.生产文件上传核心类ServletFileUpload fileUpload = new ServletFileUpload(factory); // 检查是否是正确的文件上传表单 if(!fileUpload.isMultipartContent(request)){ throw new RuntimeException("请用正确的表单进行上传!"); }//3.利用文件上传核心类解析requestList<FileItem> list = fileUpload.parseRequest(request);//4.遍历所有的FileItemfor(FileItem item : list){if(item.isFormField()){//当前是一个普通的字段项String name = item.getFieldName();String value = item.getString();System.out.println(name+":"+value);}else{ //当前是一个文件上传项 String filename = item.getName(); String uuidName = UUID.randomUUID().toString()+"_"+filename; int hash = uuidName.hashCode(); String hashStr = Integer.toHexString(hash); //得到String型 hash值 char [] hss = hashStr.toCharArray(); String path = this.getServletContext().getRealPath("WEB-INF/upload"); for(char c : hss){ path+="/"+c; } new File(path).mkdirs(); InputStream in = item.getInputStream(); //正文的流 OutputStream out = new FileOutputStream(new File(path,uuidName)); IOUtils.In2Out(in, out); IOUtils.close(in, out);}}catch(Exception e){e.printStackTrace();throw new RuntimeException(e);}}}
0 0
- JavaWeb之文件上传
- javaweb文件上传
- JavaWeb之文件上传
- javaweb文件上传原理
- javaweb文件上传
- javaweb文件上传
- javaweb文件的上传
- JavaWeb之文件上传
- JavaWeb 文件上传
- JavaWeb文件上传
- JavaWeb文件上传
- javaWeb 文件上传功能
- JavaWeb常用文件上传
- 上传文件(javaWeb)
- JavaWeb 文件 上传 下载
- javaweb---上传文件
- JavaWeb文件上传、下载
- JavaWeb 文件 上传 下载
- C++标准模板库集合类与映射类总结
- 广搜和深搜总结
- c++ 中__declspec 的用法
- java并发编程中CountDownLatch和CyclicBarrier的使用
- javascript 面向对象角度中对prototype的理解
- JavaWeb 文件上传
- Objective-C_分数类实现
- C#高级编程六十天----LINQ的概述
- H264学习方法-心历路程-资料搜集
- UVA 11997 K Smallest Sums(优先队列)
- 杭电ACM5327
- android api实现高斯模糊,且兼容低版本
- CF 439D Devu and his Brother
- codeforces244C. Checkposts