`

common upload文件上传和cos文件上传

    博客分类:
  • JSP
阅读更多

<%@ page contentType="text/html;charset=GBK" import="java.io.*,java.util.*"%>
<%@ page import="org.apache.commons.fileupload.disk.*,org.apache.commons.fileupload.*,org.apache.commons.fileupload.servlet.*"%>
<%
DiskFileItemFactory factory = new DiskFileItemFactory();
//设置上传工厂的限制
factory.setSizeThreshold(1024 * 1024  * 20);
factory.setRepository(new File(request.getRealPath("/")));
//创建一个上传文件的ServletFileUpload对象
ServletFileUpload upload = new ServletFileUpload(factory);

//设置最大的上传限制
upload.setSizeMax(1024 * 1024 * 20);

//处理HTTP请求,items是所有的表单项

List items = upload.parseRequest(request);

//遍历所有的表单项
for (Iterator it = items.iterator(); it.hasNext() ; )
{
 FileItem item = (FileItem)it.next();
 if (item.isFormField())
 {
  String name = item.getFieldName();
  String value = item.getString("GBK");
  out.println("表单域的name=value对为:" + name + "=" + value);
 }
 else
 {
  System.out.println("----------------------");
  //取得文件域的表单域名
  String fieldName = item.getFieldName();
  //取得文件名
  String fileName = item.getName();
  //取得文件类型
  String contentType = item.getContentType();
  FileOutputStream fos = new FileOutputStream( request.getRealPath("/") +
   System.currentTimeMillis() +
   fileName.substring(fileName.lastIndexOf(".") , fileName.length()));

  if (item.isInMemory() )
  {
   fos.write(item.get());
  }
  else
  {
   InputStream is = item.getInputStream();
   byte[] buffer = new byte[1024];
   int len;
   while ((len = is.read(buffer)) > 0 )
   {
    fos.write(buffer , 0 , len);
   }
   is.close();
   fos.close();
  }  

 }
}

%>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

<%@ page contentType="text/html;charset=GBK" import="java.io.*,java.util.*"%>
<%@ page import="com.oreilly.servlet.multipart.*,com.oreilly.servlet.*"%>
<%
//设置POST请求的内容最大字节为10M,该类用于解析HTTP请求
MultipartParser mp = new MultipartParser(request, 10*1024*1024);
//所有表单域都是Part实例
Part part;
//遍历请求中的所有表单域
while ((part = mp.readNextPart()) != null)
{
 //取得表单域的name属性值
 String name = part.getName();
 //对于普通表单域
 if (part.isParam())
 {
  //取得普通表单域的值
  ParamPart paramPart = (ParamPart) part;
  String value = paramPart.getStringValue("GBK");
  out.print("普通表单域部分:<br> name=" + name + "; value=" + value + "<br>");
 }
 //对于文件域
 else if (part.isFile())
 {
  //取得文件上传域
  FilePart filePart = (FilePart) part;
  String fileName = filePart.getFileName();
  if (fileName != null)
  {
   //输出文件内容
   long size = filePart.writeTo(new File(request.getRealPath("/")));
   out.println("上传文件:<br> 文件域的名=" + name + "; 文件名=" + fileName + "<br>" +
   "上传文件的路径=" + filePart.getFilePath() + "<br>" +
   "文件内容类型=" + filePart.getContentType() + "<br>" +
   "文件大小=" + size + "<br>");
  }
  //文件名为空
  else
  {
   //该文件域没有输入文件名
   out.println("file: name=" + name + "; EMPTY");
  }
  out.flush();
 }
}
%>

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    WEB文件上传之apache common upload使用(一)

    这两个库提供了处理文件上传和文件I/O的基本功能。 2. **创建Servlet或Controller** 创建一个Servlet或Spring MVC的Controller来接收HTTP请求。在这个类中,我们需要解析请求并调用FileUpload的相关方法。 3. **...

    jsp里面用cos进行文件上传

    Cos(Common Object Services)组件是由O'Reilly公司开发的一个开源项目,专门用于处理文件上传操作。相比于其他商业组件或框架内置的功能,Cos的优势在于其开放源代码的特点,这使得开发者可以更自由地定制化上传...

    jsp文件上传所需common包

    综上所述,“jsp文件上传所需common包”主要涵盖了Apache Commons FileUpload和Apache Commons IO两个库,它们为Java Web开发者提供了处理文件上传的强大工具。使用这两个库,开发者可以高效、安全地实现文件上传...

    easyUi+jquery+common-file-upload +struts2带进度条的文件上传DEMO

    基于eclipse + easyUi1.2.6+common-fileupload + struts2实现带进度条的文件上传DEMO,具体效果跟思路可见我的博客:http://blog.csdn.net/jun55xiu/article/details/22042279

    common-fileupload文件上传及下载

    在`MyProject`这个压缩包中,可能包含了使用`common-fileupload`进行文件上传和下载的示例代码,你可以解压后查看具体实现。通过阅读和理解代码,可以更好地掌握文件上传下载的实践应用。在实际开发中,结合源码和...

    Common-FileUpload带进度条文件上传

    使用此类库可以简化开发者的工作,避免从零开始编写文件上传和进度显示的代码。 4. AJAX与XMLHttpRequest:在实现带进度条的文件上传时,通常会用到AJAX和XMLHttpRequest对象。它们允许前端与服务器进行异步通信,...

    Java操作FastDFS文件上传

    然后,为了进行文件上传,我们需要配置FastDFS的相关连接参数,如 Tracker Server 的IP地址和端口号,这些信息通常在项目的配置文件(如`application.properties`)中定义。例如: ``` fastdfs.tracker.server=192....

    commonfileupload.zip 文件上传功能

    `common-fileupload`标签可能指的是Apache Commons FileUpload库,这是一个Java库,专门用于处理基于Servlet的文件上传。它能处理多部分/表单数据,使开发人员能够轻松地处理文件上传请求。使用此库,我们可以通过...

    利用Common-fileupload封装的文件上传组件...附上源码.

    首先,我们来看一下标题:“利用Common-fileupload封装的文件上传组件...附上源码”。这表明我们将讨论如何使用这个库来创建一个文件上传系统,并且提供有源码可供参考。通过`Common-fileupload`,我们可以实现用户...

    使用Common-fileUpload 上传文件 读取文件内容

    在Java Web开发中,文件上传是一项常见的功能,`Commons-FileUpload` 是Apache Commons项目提供的一个用于处理HTTP请求中的多部分数据...在实际开发中,结合适当的错误处理和安全措施,可以构建健壮的文件上传功能。

    jsp版 上传文件并且显示上传进度条

    在IT行业中,尤其是在Web开发领域,用户界面的交互体验至关重要,而上传文件并显示上传进度条就是提升用户体验的一种常见方式。...通过前后端的协同工作,实现了文件上传和实时进度反馈的功能,提高了用户体验。

    common-fileupload实例:fileList = upload.parseRequest(request);上传file文件和form表单提交

    在IT行业中,文件上传是Web应用中常见的功能之一,它...结合form表单数据,可以实现完整的文件上传和表单提交功能。在实际开发中,需要注意文件大小限制、错误处理以及文件安全性等问题,以确保服务的稳定性和安全性。

    COS上传源代码

    在本文中,我们将深入探讨腾讯云对象存储服务(Cloud Object Storage,简称COS)的上传源代码,这对于理解和实现文件上传到云端具有重要的实践意义。COS是一种分布式存储服务,提供高可用、高稳定、低成本的数据存储...

    common fileupload上传组件包

    "Common Fileupload上传组件包"是一个专用于处理Web应用程序中文件上传功能的工具包。这个包包含两个核心组件:`commons-io-1.4.jar`和`commons-fileupload-1.2.1.jar`。这两个组件在实现文件上传过程中扮演着至关...

    上传架包commmon-fileupload common-io

    这两个库在Java开发中扮演着重要角色,特别是处理文件上传和I/O操作。 Apache Commons FileUpload是Apache软件基金会的一个项目,专门用于处理HTTP协议中的多部分/表单数据,也就是我们常说的文件上传功能。它为...

    j2EE文件上传集合

    上传后文件都保存在upload目录下面(与WEB-INF同级的upload) 新添加单个文件上传用的是apache的commonfileupload有上传进度条 本工程内所有上传复制过去直接可用. 上传后的文件都保存在根目录下面的upload目录文件夹...

    亚马逊S3文件上传

    在本文中,我们将深入探讨如何使用Java进行亚马逊S3文件上传,并涉及到图片的裁剪和压缩操作。 首先,我们需要在项目中引入AWS SDK for Java,这是与AWS服务交互的官方库。通过Maven或Gradle添加依赖,例如在Maven...

    JAVA文件上传Demo

    在这个过程中,我们将使用Apache的两个库:`common-io`和`common-fileupload`,这两个库为文件上传提供了方便且强大的工具。 首先,让我们了解一下`common-io`和`common-fileupload`。Apache Commons IO是Java的一...

    基于nestjs与vue3的大文件上传.zip

    本教程将探讨如何使用NestJS后端框架和Vue3前端框架实现高效、安全的大文件上传功能。 NestJS是基于TypeScript构建的、高度模块化的Node.js服务器端框架,它为开发高质量的、可扩展的应用提供了强大的工具。Vue3,...

Global site tag (gtag.js) - Google Analytics