servlet利用fileupload实现文件上传
来源:互联网 发布:车牌识别软件破解版 编辑:程序博客网 时间:2024/06/05 06:48
为了实现文件上传,实现我们表单必须设置一个属性:
enctype="multipart/form-data"。
先看上传的jsp页面:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> </head> <body> <form enctype="multipart/form-data" method="post" action="Fileupload"> 上传文件1<input type="file" name="file1"/><br/> 上传文件2<input type="file" name="file2"/><br/> 普通文本域1<input type="text" name="text1"/><br/> 普通文本域2<input type="text" name="text2"/><br/> <input type="submit" value="上传"><br/> </form> </body></html>
实现上传功能的servlet
package com.servlet;import java.io.File;import java.io.IOException;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;public class Fileupload extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { doPost(request,response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { DiskFileItemFactory factory = new DiskFileItemFactory();//设定目录String path = request.getRealPath("/upload");//当文件大于某个尺寸时,不能直接写到内存中了,必须写到磁盘中,这个函数用来设定存储到磁盘//中的路径factory.setRepository(new File(path));//用来设定当大于多少时,才必须直接写入硬盘factory.setSizeThreshold(1024 * 1024);ServletFileUpload sf = new ServletFileUpload(factory);try {List<FileItem> items = sf.parseRequest(request);for(FileItem item : items){//isFormField()判断是不是只是简单的文本域,如果是简单的文本域就不存储if(item.isFormField()){System.out.println("普通的文本域");}//否则就是文件else{//获取文件名String value = item.getName();//因为fileload针对 苹果浏览器 获得 的并不是 简单的 文件名 而已, 所以//我们需要手动 把 前面的路径信息给去掉,当没有\的时候,start=-1int start = value.lastIndexOf("\\");//截取出我们需要的文件名String fileName = value.substring(start +1 );//把文件写到磁盘上item.write(new File(path,fileName));System.out.println("文件");}}} catch (Exception e) {e.printStackTrace();}}}
- servlet利用fileupload实现文件上传
- Servlet利用Commons FileUpload实现文件上传
- 利用commons-fileupload在servlet中实现文件上传
- commons-fileupload+servlet实现简单文件上传
- servlet+uploadify+commons-fileupload实现文件上传
- Servlet使用commons-fileupload实现文件上传
- 使用FileUpload实现Servlet的文件上传
- 利用commons-fileupload实现文件上传
- 利用commons-fileupload实现文件上传
- 利用 Commons-Fileupload 实现文件上传
- struts2 利用fileupload实现文件上传
- 利用 Commons-Fileupload 实现文件上传
- 利用 Commons-Fileupload 实现文件上传
- 利用fileupload上传文件
- servlet文件上传(2)---》利用commons-fileupload组件
- java基于servlet利用common-fileupload上传文件
- Jsp上传文件(FileUpload+Servlet)
- Servlet上传文件,commons-fileupload
- solrj实现solr的group查询:
- 用栈模拟浏览器c++
- jdbc,oracle使用事务提交处理
- EJB 的理解
- mysql load 用法
- servlet利用fileupload实现文件上传
- IOS上的socket通信 CFsocket
- 关于JAVA EE项目在WEB-INF目录下的jsp页面如何访问WebRoot中的CSS和JS文件
- IOS socket GCDAsyncSocket
- String和StringBuffer
- Unix环境高级编程学习笔记(六) 信号机制
- zoj2886
- linux tcl环境安装
- SPFA