Javaweb中最简单的文件上传
来源:互联网 发布:手机贴纸淘宝 编辑:程序博客网 时间:2024/04/30 19:43
最简单的文件上传
1、在做之前需要导入的jar包组件:
commons-fileupload-1.2.1.jar、commons-io-2.0.jar(依赖包)
2、页面代码
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title></head><body><form action="simpleFileupload" method="post" enctype="multipart/form-data">最简单的文件上传:<input type="file" name="fileupload"/>描述:<input type="text" name="desc"/><input type="submit" value="submit"/></form></body></html>注意:这里的enctype(编码类型)是“multipart/form-data”
3、servlet代码
package com.xiaojie.simpleFileupload;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.util.List;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;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;/** * Servlet implementation class SimpleFileupload */@WebServlet("/simpleFileupload")public class SimpleFileupload extends HttpServlet {private static final long serialVersionUID = 1L;/** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8");//1、创建一个DiskFileItemFactory工厂 DiskFileItemFactory factory = new DiskFileItemFactory(); //2、创建一个文件上传解析器 ServletFileUpload upload = new ServletFileUpload(factory); //解决上传文件名的中文乱码 upload.setHeaderEncoding("UTF-8"); factory.setSizeThreshold(1024 * 500);//设置内存的临界值为500KFile linshi = new File("E:\\linshi");//当超过500K的时候,存到一个临时文件夹中factory.setRepository(linshi);upload.setSizeMax(1024 * 1024 * 5);//设置上传的文件总的大小不能超过5Mtry {// 1. 得到 FileItem 的集合 itemsList<FileItem> /* FileItem */items = upload.parseRequest(request);// 2. 遍历 items:for (FileItem item : items) {// 若是一个一般的表单域, 打印信息if (item.isFormField()) {String name = item.getFieldName();String value = item.getString("utf-8");System.out.println(name + ": " + value);}// 若是文件域则把文件保存到 e:\\files 目录下.else {String fileName = item.getName();long sizeInBytes = item.getSize();System.out.println(fileName);System.out.println(sizeInBytes);InputStream in = item.getInputStream();byte[] buffer = new byte[1024];int len = 0;fileName = "e:\\files\\" + fileName;//文件最终上传的位置System.out.println(fileName);OutputStream out = new FileOutputStream(fileName);while ((len = in.read(buffer)) != -1) {out.write(buffer, 0, len);}out.close();in.close();}}} catch (FileUploadException e) {e.printStackTrace();}}}运行simpleFileupload.jsp文件(如下图)
选择好自己想要上传的文件后,在服务器的e盘下的files文件夹中就可以看到自己上传成功的文件了!!!
6 0
- Javaweb中最简单的文件上传
- Javaweb中最简单的文件上传
- 简单的文件上传(javaweb实现)
- JavaWeb中最简单的MVC设计
- javaweb文件上传简单入门
- javaweb文件的上传
- 最简单的文件上传方法
- 最简单的文件上传代码
- 最简单的文件上传代码
- 最简单的文件上传方法
- 最简单的html文件上传示例
- 最简单的php文件上传
- Javaweb中简单的文件下载
- Javaweb文件上传的一个简单工具类
- JAVAWEB最简单的登录
- php文件上传最简单的上传代码示例
- javaweb 简单的文件上传动态添加上传文件数量[从学习到工作(六)]
- javaWeb得到上传的文件
- 三维计算几何模版
- Prototype使用Form.Element操作表单控件
- Android官方文档之App Components(Tasks and Back Stack)
- 手把手教你反编译别人的app
- BL0,BL1,BL2是什么?
- Javaweb中最简单的文件上传
- hdu 2084 数塔
- Java中怎样判断一个字符串是否是数字
- Android *** Drawable、Bitmap、Canvas、Paint之间区别
- MWC-电机、电池螺旋桨搭配
- iOS网络缓存扫盲篇--使用两行代码就能完成80%的缓存需求
- DOO-SABIN 细分正方体(1)利用邻接矩阵表示
- Linux — 操作系统课程设计笔记
- Dubbo源码分析(九):与spring融合