用cos进行文件上传【转】

原创 2004年09月30日 14:47:00

用cos进行文件上传

作者:陈万飞

在jsp中实现文件上传,可用的类库很多,比如有著名的jspsmart公司SmartUpload,struts里面也有。我这里说说cos,它是O'Reilly公司的,O'Reilly的图书是很8错的,这个上传的组件也做得很棒,最重要的是,它是open source的。

  1. 下载最新的cos包(http://www.servlets.com/cos/index.html),加入到你的classpath中。

  2. 编写一个需要上传文件的jsp,为了方便,我就用一个简单的htm文件了,在这个页面中,我们让用户一次可以上传3个文件。
    /////////////////////upload.htm////////////////////////////////////
    <!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=gb2312">
    <title>无标题文档</title>
    </head>
    
    <body>
    <!-- enctype的值很重要,upload.jsp为处理上传的jsp-->
    <form name="form1"  method="post" enctype="multipart/form-data" 
    action="upload.jsp">
    <p>
      <input name="file1" type="file">
    </p>
    <p>
      <input name="file2" type="file">
    </p>
    <p>  <input name="file3" type="file">
    </p>
    <p>
      <input type="submit" name="Submit" value="上传">
    </p>
    </form >
    
    </body>
    </html>
    
  3. 在c:/下建一个目录c:/upload,用来存放上传的文件。

  4. 写一个jsp或者servlet来实现上传,我这里用一个叫upload.jsp,这样就不用配置web.xml,呵呵,比较懒的说。
    ////////////////////////////upload.jsp////////////////////////
    
    <%@page import="java.io.*"%>
    <%@page import="com.oreilly.servlet.MultipartRequest"%>
    <%@page import="com.oreilly.servlet.multipart.CoverFileRenamePolicy"%>
    <%@page contentType="text/html; charset=gb2312" %>
    <%
    //文件上传后,保存在c://upload
    String saveDirectory ="c://upload";
    //每个文件最大5m,最多3个文件,所以...
    int maxPostSize =3 * 5 * 1024 * 1024 ;
    //response的编码为"gb2312",同时采用缺省的文件名冲突解决策略,实现上传
    MultipartRequest multi =
           new MultipartRequest(request, saveDirectory, maxPostSize,
                                "gb2312");
    
    //输出反馈信息
     Enumeration files = multi.getFileNames();
         while (files.hasMoreElements()) {
            System.err.println("ccc");
           String name = (String)files.nextElement();
           File f = multi.getFile(name);
           if(f!=null){
             String fileName = multi.getFilesystemName(name);
             String lastFileName= saveDirectory+"//" + fileName;
             out.println("上传的文件:"+lastFileName);
             out.println("<hr>");
    
           }
         }
    
    %>
    <meta http-equiv="Content-Type" content="text/html;charset=gb2312">
    
  5. 最后把这2个文件发布到你的服务器就行了。上传文件就搞定啦,以后你想在你邮件系统里面嵌入发送附件的功能,用这个来做上传也不错啊。

最后,希望这篇文章对你有所启发,如有错误,敬请批评指正!

用cos进行文件上传

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";...
  • java169
  • java169
  • 2008年05月24日 03:39
  • 168

用cos进行文件上传

用cos进行文件上传在jsp中实现文件上传,可用的类库很多,比如有著名的jspsmart公司SmartUpload,struts里面也有。我这里说说cos,它是OReilly公司的,OReilly的图...
  • xuehouniao
  • xuehouniao
  • 2005年04月23日 13:32
  • 818

用cos进行文件上传

在jsp中实现文件上传,可用的类库很多,比如有著名的jspsmart公司SmartUpload,struts里面也有。我这里说说cos,它是OReilly公司的,OReilly的图书是很8错的,这个上...
  • zlsunnan
  • zlsunnan
  • 2004年09月13日 16:54
  • 995

使用COS组件实现文件上传 .

这是一个Servlet应用。。 首先是web.xml [xhtml] view plaincopyprint? xml version="1.0" encoding=...
  • t1137471535
  • t1137471535
  • 2012年04月23日 10:33
  • 808

fileupload和cos文件上传技术区别

jsp文件上传大多采用采用开源项目来简化处理,这里列出常用的两个jar包的实现,并进行比较,说明他们的优缺点和应该注意的问题。  Commons FileUpload,可以在 http://ja...
  • u010059610
  • u010059610
  • 2016年10月10日 11:45
  • 758

用cos文件上传

========================jsp页面============================= String path = request.getContextPath...
  • mexican_jacky
  • mexican_jacky
  • 2011年08月01日 23:19
  • 1959

使用COS上传文件(转载)

使用COS上传文件很早就想写一个关于JSP文件上传的文章了,一直没时间。正好今天刚开学,就简单的写一下。对于初学者来说用JSP上传文件好像很难,网上关于这方面的资料也不全。不过你看了下面的文章之后会觉...
  • frankchenyj
  • frankchenyj
  • 2007年10月06日 10:42
  • 927

使用cos实现多个文件上传详解

在开发中常常需要上传文件,上传文件的方式有很多种,这里有一个cos实现的例子。 首先是要拷贝cos.jar包拷贝到WEB-INF/lib目录下,然后才进行编码。 创建一个可以进行自动重命名的Jav...
  • cselmu9
  • cselmu9
  • 2012年08月15日 18:57
  • 8010

使用Cos组件实现文件的上传和下载

1、下载cos.jar组件并把cos.jar导入到为web项目中的lib文件夹 2、实现文件上传页面     pageEncoding="UTF-8"%> Insert ti...
  • qq208617107
  • qq208617107
  • 2016年04月07日 19:10
  • 301

struts2文件上传修改为cos框架处理一系列事情

前段时间Struts2出来一个编号CVE-2017-5638的漏洞,影响系统及版本:Struts 2.3.5 - Struts 2.3.31、Struts 2.5 - Struts 2.5.10! 项...
  • QWERTY1994
  • QWERTY1994
  • 2017年03月16日 14:31
  • 1021
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用cos进行文件上传【转】
举报原因:
原因补充:

(最多只允许输入30个字)