新建类UploadServlet
- package org.action;
-
-
import java.io.File;
-
import java.io.IOException;
-
import java.util.Iterator;
-
import java.util.List;
-
-
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.disk.DiskFileItemFactory;
-
import org.apache.commons.fileupload.servlet.ServletFileUpload;
-
-
@SuppressWarnings("unchecked")
-
public class UploadServlet extends HttpServlet{
-
-
private static final long serialVersionUID = 1L ;
-
-
@Override
-
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
-
throws ServletException, IOException {
- doPost(req, resp) ;
- }
-
-
@Override
-
protected void doPost(HttpServletRequest request, HttpServletResponse response )
-
throws ServletException, IOException {
-
DiskFileItemFactory factory = new DiskFileItemFactory() ;
-
factory.setSizeThreshold( 8192 ) ;
-
String tempPath = request.getSession().getServletContext().getRealPath( "/")
-
+ "/upload" ;
-
File file = new File( tempPath ) ;
-
if(!file.isDirectory()){
- file.mkdirs();
- }
- factory.setRepository( file ) ;
-
ServletFileUpload upload = new ServletFileUpload( factory ) ;
-
- List<FileItem> items;
-
try {
- items = upload.parseRequest(request);
- Iterator<FileItem> itr = items.iterator();
-
while (itr.hasNext()) {
- FileItem item = (FileItem) itr.next();
-
if(!item.isFormField()){
-
File savedFile = new File( tempPath , item.getName() ) ;
- item.write(savedFile) ;
-
}else{
-
System.out.println( item.getFieldName() + "-->" + item.getString() ) ;
- }
- }
-
}catch (Exception e){
- e.printStackTrace() ;
- }
- }
-
- }
在web.xml 中配置:
- <servlet>
-
<servlet-name>upload</servlet-name>
-
<servlet-class>org.action.UploadServlet</servlet-class>
-
</servlet>
-
<servlet-mapping>
-
<servlet-name>upload</servlet-name>
-
<url-pattern>/upload</url-pattern>
-
</servlet-mapping>
-
页面代码:
- <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
- <%
- String path = request.getContextPath();
-
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
- %>
-
-
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
-
<base href="<%=basePath%>">
-
-
<title>My JSP 'index.jsp' starting page</title>
-
<meta http-equiv="pragma" content="no-cache">
-
<meta http-equiv="cache-control" content="no-cache">
-
<meta http-equiv="expires" content="0">
-
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
-
<meta http-equiv="description" content="This is my page">
- </head>
-
- <body>
-
<form action="<%=basePath %>upload" method="post" enctype="multipart/form-data">
-
<input type="file" name="file"/>
-
<input value="name" name="name" type="text" />
-
<input type="submit"/>
- </form>
- </body>
- </html>
依赖的jar包,commons-fileupload-1.1.jar 和commons-io-1.1.jar
分享到:
相关推荐
java上传处理-Servlet_批量上传大文件 依赖的jar包,commons-fileupload-1.1.jar 和commons-io-1.1.jar 列子
// 3:设置允许上传文件的大小 .这里是3m su.setMaxFileSize(3 * 1024 * 1024); // 4:初始化,接受页面传递过来的请求 su.initialize(getServletConfig(), request, response); // 5:上传 su....
研究了段时间java servlet做为后台处理的swfupload,其中解决了向后台传送数据、动态产生上传文件表格等功能,由于时间问题session问题未加入进去,可单独与我联系再详细解释。希望能给朋友们提供点帮助!
修改好的移动端android和服务端java上传文件程序,赋带有文档说明,支持批量上传文件和带参数,服务端用的servlet3.0
使用jsp+servlet,同时可以批量上传图片又可以防止Tomcat重启后图片消失
Ajax+Flash多文件上传是一个开源的上传组件,名称是FancyUpload,其官方网址是:http://digitarald.de/project/fancyupload/。这个组件仅仅是客户端的应用组件,即与任何服务器端的技术没有关系,服务器端可以采用...
Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...
NULL 博文链接:https://dreamoftch.iteye.com/blog/1860289
读取过程 硬盘文件项工厂 Servlet文件上传 文件项迭代器 文件项流 输入流 连接数据库 加载驱动类 获取connection对象 拼写预处理语句,生成预处理 对象preparedStatement 执行 package Servlet; import java....
Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...
MultipartRequest 批量上传文件,进行了一下修改 1、自定义文件上传路径 2、自定义文件名称 3、返回文件后缀 4、返回文件存储路径