- 浏览: 616756 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
xianzi_2008:
xianzi_2008 写道楼主请教下,我缓存了一个List& ...
Ehcache -
xianzi_2008:
楼主请教下,我缓存了一个List<Bean>对象, ...
Ehcache -
jsdsh:
收藏好.五个字
hibernate之one-to-many详细 -
Tlife:
好!!!!
hibernate------HQL总结 -
yanqingluo:
例子很恰当。
观察者模式
利用FileUpload组件上传文件,需要到apache上下载jar包
http://commons.apache.org/fileupload/
同时因为fileupload组件本身依赖apache common下的io包,所以也需要下载
http://commons.apache.org/io/
form.jsp
result.jsp
Servlet类
http://commons.apache.org/fileupload/
同时因为fileupload组件本身依赖apache common下的io包,所以也需要下载
http://commons.apache.org/io/
form.jsp
<form action="/fileupload/UploadServlet" method="post" enctype="multipart/form-data"> username:<input type="text" name="username" /><br/> password:<input type="password" name="password"/><br/> file1:<input type="file" name="file1"/><br/> file2:<input type="file" name="file2"/><br/> <input type="submit" name="submit" value="submit"/> </form>
result.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> username:<%= request.getAttribute("username") %><br/> password:<%= request.getAttribute("password") %><br/> file1:<%= request.getAttribute("file1") %><br/> file2:<%= request.getAttribute("file2") %><br/>
Servlet类
package com.test.UploadServlet; 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.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 UploadServlet extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); //创建一个工厂类 DiskFileItemFactory factory = new DiskFileItemFactory(); String path = request.getRealPath("/upload"); //设置上传文件放在磁盘上的临时目录,如果上传的文件大于设置的最大值,则用该临时目录,否则用内存做临时存储 factory.setRepository(new File(path)); //这个参数就是上传文件临时是放在内存还是放在磁盘的文件大小设置,如果上传文件超出这个大小,则放磁盘,否则放内存 factory.setSizeThreshold(1024*1024); //上传的关键对象 ServletFileUpload fileuplod = new ServletFileUpload(factory); try { //解析各个表单域 List<FileItem> list = fileuplod.parseRequest(request); for(FileItem fileItem : list){ //Field有2种,一种是简单域,一种是file域,如果fileItem.isFormField()==true ,则代表是简单域 if(fileItem.isFormField()){ //获得简单域的名字 String fieldName = fileItem.getFieldName(); //获得简单域的值 String fieldValue = fileItem.getString("UTF-8"); System.out.println(fileItem.getName()); request.setAttribute(fieldName, fieldValue); }else{ //获得file域的名字 String fieldName = fileItem.getFieldName(); //获得file域的值,带路径,即是路径+文件名 String value = fileItem.getName(); //取的file域的值的名字,不带路径 int pos = value.lastIndexOf("\\"); String fieldValue = value.substring(pos+1); //获得是file文件的内容,而不是路径+文件名 System.out.println( fileItem.getString("UTF-8") ); request.setAttribute(fieldName, fieldValue); /*第一种方法: //保持文件名不变,把上传文件传到服务器上的目录 OutputStream os = new FileOutputStream(new File(path,fieldValue)); InputStream is = fileItem.getInputStream(); byte buf[] = new byte[1024]; int length = 0; while( (length = is.read(buf)) > 0 ){ os.write(buf, 0, length); } //关闭流 os.close(); is.close(); */ //第二种方法 fileItem.write(new File(path,fieldValue)); } } } catch (Exception e) { e.printStackTrace(); } request.getRequestDispatcher("/result.jsp").forward(request, response); } }
发表评论
-
常用小代码段和开发经验收集
2011-04-21 14:47 947工作中用到的笔记,方便查找,不断补充。 1,截取过长的文字部分 ... -
java.lang.UnsupportedClassVersionError: Bad version number in .class file
2009-08-26 12:25 3869转载:http://www.blogjava.net/hwpo ... -
java调用dll(Eclipse+CDT+MinGW)
2009-03-06 15:25 6517第一步:配置环境 需要安装CDT和MinGW. CDT:因为 ... -
servlet2.5与el表达式
2008-11-23 15:23 2638Servlet2.4版本默认支持EL,如果在MyEclipse ... -
自定义ClassLoader遇到的问题
2008-09-16 16:47 14881.自定义的类加载器 package classloa ... -
自定义标签调用资源文件
2008-05-12 22:28 1926自定义标签处理类一般都继承TagSupport或BodyTag ... -
Failed to install Tomcat6 service(Tomcat6安装失败解决方法)
2008-05-06 16:24 11658转载 :http://www.handandaily.com/ ... -
tomcat5.5日志配置
2008-05-06 16:13 2490tomcat5.5日志配置: 从Tomcat5.5后,默认设置 ... -
java List<String>集合 传递值给js的数组
2008-04-21 18:12 5290<script> var intIndex= ... -
c3p0 com.mysql.jdbc.CommunicationsException异常
2008-02-18 17:32 6216使用c3p0,偶尔会报异常: 2008-02-18 10:52 ... -
Pattern Matcher
2008-02-18 10:30 1908package test; import java. ... -
hibernate大字段处理
2008-01-21 16:45 3177hibernate大字段处理:以mysql为例 比如传张图片, ... -
一个页面嵌套一个页面
2008-01-15 10:45 3514一个页面嵌套一个页面,比如a.jsp嵌套b.jsp那么可以用 ... -
java clone
2008-01-13 18:17 59091.java里的clone分为: A:浅复制(浅克隆): 浅复 ... -
修改Eclipse注释里的${Date}变量格式
2008-01-08 15:47 81751.eclipse3.3里${date}日期格 ... -
List移除元素
2008-01-05 16:16 24431. Iterator的remove()是移除从集合里取出来的 ... -
JDom处理xml
2008-01-05 13:51 20741.DOM的缺点主要是由于DOM是一个接口定义语言(IDL), ... -
观察者模式
2008-01-03 00:45 21315观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听 ... -
DelegatingRequestProcessor
2007-12-27 11:30 3663采用DelegatingRequestProcessor将处理 ... -
Dom and Sax
2007-12-26 20:20 1170jaxp: java apis for xml parsing ...
相关推荐
主要为大家详细介绍了使用fileupload实现文件上传功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
使用FileUpload组件实现上传功能,供大家一起共同分享学习。
运行结果: http://hi.baidu.com/g882/blog/item/14647686f102882c67096eb1.html 已经测试,可以使用
Common-fileupload组件实现文件上传.pdfCommon-fileupload组件实现文件上传.pdfCommon-fileupload组件实现文件上传.pdfCommon-fileupload组件实现文件上传.pdfCommon-fileupload组件实现文件上传.pdfCommon-...
FileUpload控件上传文件客户端验证格式 c#,.net,FileUpload,上传,验证,客户端
我自己写的一个fileUpload组件的上传例子
FileUpload 文件上传组件的ASP.NET实例,基于主副窗口的上传程序,利用线程提升上传速度。本插件可支持多文件上传,为了提升上传体验... 解决FileUpload控件上传文件大小限制 ASP.NET中实现FileUpload多文件上传
primefaces中用<p:fileUpload组件来上传文件
采用apache commons 项目中的fileupload组件,实现了文件上传功能,它能够便利而简单地使得web应用程序和servlet具备高性能的文件上传能力,减小了直接操作输入输出流的系统开销。
博文链接:https://mqzsweet.iteye.com/blog/141965
apache commons.fileupload上传组件在上传文件时,在调用parseRequest方法时,先将输入流上传到服务器临时目录,在之后的文件处理过程中,再将临时目录下保存的文件复制到指定的目录,多了一道转储步骤。本实现抽取...
Apache FileUpload文件上传组件API解析
jsp向服务器进行文件上传所需的fileupload组件所需的jar包
在许多Web站点应用中都需要为用户...为了简化和帮助Web开发人员接收浏览器上传的文件,一些公司和组织专门开发了文件上传组件。本章将详细介绍如何使用Apache文件上传组件,以及分析该组件源程序的设计思路和实现方法。
FileUpload_php是一个仿163编辑上传组件!
Apache组织提供的一个开源组件Commons-FileUpload,该组件可以方便的将“multipart/form-data”类型请求中的各种表单域解析出来,并实现一个或多个文件的上传,同时也可以限制上传文件的大小等内容。其性能十分优异,...
文件上传功能开发中很常用,Apache组织也提供了文件上传组件,FileUpload组件。
文章为本人所写,向初学者展示了如何进行基于commons-fileupload组件的上传下载的详细开发过程。细致的说明相信能给您带来帮助。
android上传文件服务器端和相关jar包(fileupload组件实现),对应前面的android客户端上传文件源码(上次忘记传了),可以一次上传多个文件http://download.csdn.net/source/3062714