`
fireflylover
  • 浏览: 110437 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
社区版块
存档分类
最新评论

利用jspsmart上传文件

阅读更多
1.upFile.jsp在页面提交form代码参照一下内容
<script language="javascript">
function SaveItem(type){
      var str = document.all.ON_SEQ.value;
      var dd=str.indexOf(".")
      var type = document.all.ON_SEQ.value.substring(dd+1, str.length);
      if(type == "xls"){
         document.forms('clientForm').action="upFileSave.jsp?type=" + type;
         document.forms('clientForm').submit();
          return;
      } else{
          return alert("请选择上传excel文件!");
      }
    }
</script>

<form name="clientForm" method="POST" action="upFileSave.jsp" id="clientForm" enctype="multipart/form-data">
  <input type="file" name="file">
  <a href="javascript:SaveItem(0)>上传 </a>
</form>

2.upFileSave.jsp,直接读取文件流,不在服务器保留上传文件

   try {
     //实例化上载bean
    com.jspsmart.upload.SmartUpload mySmartUpload = new   com.jspsmart.upload.SmartUpload();
    //初始化
     mySmartUpload.initialize(pageContext);
    //设置上载的最大值
     mySmartUpload.setMaxFileSize(5 * 1024 * 1024);
    //设置上传文件类型
    //mySmartUpload.setAllowedFilesList("xls");
    //上载文件
     mySmartUpload.upload();

    String ordernoid = StringAssistant.getStringClear(mySmartUpload.getRequest().getParameter("type"));

    com.jspsmart.upload.File lo_File = mySmartUpload.getFiles().getFile(0);

    byte[] fileContent = new byte[(int) lo_File.getSize()];
    for (int k = 0; k < (int) lo_File.getSize(); k++) {
      fileContent[k] = lo_File.getBinaryData(k);
    }
    InputStream fs = null;
    if (!lo_File.isMissing()) {
      fs = new ByteArrayInputStream(fileContent);

      //数据库相关操作.... 
      //手动提交
        conn.setAutoCommit(false);
        sql = "insert into contsub_upload_file(id,FILE_NAME,FILE_CONTENT) values (?,?,?,)";
        pre = null;
        pre = conn.prepareStatement(sql);
        long id =SequenceMaker.getSequence("id", "contsub_upload_file_seq");
        pre.setLong(1, id);
        pre.setString(2,lo_File.getFileName());
        pre.setBlob(3, oracle.sql.BLOB.empty_lob());
        pre.executeUpdate();
        pre = null;
        rs = null;
        pre  =  conn.prepareStatement("SELECT FILE_CONTENT FROM contsub_upload_file WHERE id = " + id + " for update");
        rs   =   pre.executeQuery();
        if (rs.next())
        {
          oracle.sql.BLOB   fc   =   (oracle.sql.BLOB) rs.getBlob("FILE_CONTENT");
          java.io.OutputStream   binOut   =   fc.getBinaryOutputStream();
          java.io.BufferedOutputStream   out1   =   new   java.io.BufferedOutputStream(binOut);
          java.io.BufferedInputStream   in   =   new java.io.BufferedInputStream(fs);
          int   c;
          while   ((c   =   in.read())   !=   -1)
          {
            out1.write(c);
          }
          in.close();
          out1.close();
        }
        rs.close();
        pre.close();
    }

   } catch (Exception er) {
    System.out.println(er);
}
分享到:
评论

相关推荐

    jspsmart 文件上传

    4. **API使用**:在JSP或Servlet中,可以通过jspsmart提供的API来获取上传文件的信息,如文件名、文件大小、文件类型等,并将文件保存到服务器指定的目录。 5. **错误处理**:在文件上传过程中可能出现各种异常,如...

    利用jspsmart上传

    ### 使用JSPsmart进行文件上传的知识点解析 #### 一、引言 在Web开发中,文件上传是一项常见的功能需求。对于使用Java Server Pages (JSP) 的开发者来说,选择一个稳定且易于使用的文件上传组件至关重要。JSPsmart ...

    jspsmart组件(JSP文件上传专用组件)

    利用jspSmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。 3、能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求...

    jspsmart实现上传下载

    **JSpsmart** 是一个基于Java的开源上传和下载组件,它为Web应用程序提供了一种高效、稳定且易于使用的文件上传和下载功能。这个组件在Web开发中特别有用,因为它处理了与大文件上传和断点续传相关的复杂性。 **...

    上传下载文件组件JSPSmart

    1. **多文件上传支持**:JSPSmart支持单个文件和多个文件的上传,通过设置参数,可以限制同时上传的文件数量,以及每个文件的大小,防止服务器资源被过度消耗。 2. **进度条显示**:组件提供了文件上传进度的实时...

    用jspSmart实现文件上传到数据库的实例

    本实例将探讨如何利用jspSmart库来实现在数据库中存储上传的文件。jspSmart是一个方便的Java库,它简化了文件上传的过程,使得开发者可以更轻松地处理HTTP请求中的多部分数据。 首先,我们需要理解文件上传的基本...

    servlet中使用jspsmart上传

    ### 关于在Servlet中使用JspSmart进行文件上传的知识点 #### 1. Servlet与JspSmart概述 - **Servlet**:Servlet是一种...通过这些知识点的学习,可以更好地理解如何利用JspSmart简化文件上传流程,并提高开发效率。

    利用jspsmart下载

    在探讨“利用jspsmart下载”这一主题时,我们首先需要理解JSPSmart(简称SmartUpload)是一个用于处理文件上传的Java库,它简化了在Web应用中上传文件的过程。SmartUpload不仅支持多种文件上传机制,如HTML表单上传...

    jspsmart实现文件上传下载及jspSmartUploadjar下载文库.rar

    本文将详细讨论JSpsmart组件及其核心功能——文件上传和下载,以及如何利用jspSmartUpload.jar库来实现这些操作。 1. **JSpsmart介绍** JSpsmart是一个基于Java的开源文件上传组件,它提供了高效的文件上传处理...

    jspsmart+说明+源码

    总的来说,JSpsmart是一个强大的文件上传解决方案,它通过提供源码和详细的说明文档,使得开发者能够更好地理解和利用这个工具。其异步处理和多线程技术提高了上传性能,而丰富的API和详尽的文档则降低了学习曲线,...

    利用jspSmartUpload组件进行文件上传

    开发者通常会在JSP页面中创建一个Uploader对象,并设置相关的属性,如最大上传文件大小、允许的文件类型等。 2. **Session对象**:每个上传的文件都对应一个Session对象,用于存储文件的元信息,如文件名、类型、...

    jspsmartupload组件源码.zip_ jspSmartUpload_jsp_jsp 上传文件_jspSmartUplo

    **JSpsmartupload组件**是...通过利用这些源代码,开发者不仅可以理解上传文件的底层工作原理,还可以根据实际需求进行定制化开发。在实际项目中,这样的组件可以极大地提高开发效率,减少因处理文件上传带来的复杂性。

    jspsmart实现文件上传下载及jspSmartUploadjar下载文库.pdf

    【知识点详解】 ...以上是关于“jspsmart实现文件上传下载”的核心知识点,包括使用 `SmartUpload` 组件进行文件操作的基本步骤和注意事项。在实际应用中,应结合具体需求和安全策略进行调整和优化。

    jsp+jspsmart上传+poi3.8读取excel2007+jxl读取excel2003

    在给定的标题和描述中,"jsp+jspsmart上传+poi3.8读取excel2007+jxl读取excel2003" 提到了一种结合Java Web技术实现文件上传,并通过不同库解析Excel文件的解决方案。这里我们将详细探讨涉及的各个知识点。 首先,`...

    jsp上传下载好工具jspsmart

    2. **大文件分块上传**:对于大文件,JSPSmart支持分块上传,避免了因文件过大导致的上传失败问题。 3. **文件类型检查**:可以设定允许上传的文件类型,防止恶意用户上传不安全或不合法的文件。 4. **文件大小...

    mysql数据库实现jspsmart的2个实例

    通过以上步骤,你可以在MyEclipse环境中,利用JSPSmart组件和MySQL数据库实现文件上传和管理功能。这不仅可以提升用户体验,还能有效管理用户上传的文件,确保数据的安全性和一致性。记得在实际应用中,还需要考虑...

    jspsmart.jar包及帮助文档

    作用:取全部上传文件,以Files对象形式返回,可以利用Files类的操作方法来获得上传文件的数目等信息。 原型:public Files getFiles() 5、getRequest 作用:取得Request对象,以便由此对象获得上传表单参数之值...

    jspsmart

    从描述中的“上传的JAR包及例子”可以推断,这是一个包含可执行代码(JAR文件)和示例项目的压缩包,旨在帮助开发者理解和使用"jspsmart"。 JSP(JavaServer Pages)是Java平台上用于构建动态网站的一种技术,它...

    jsp实现文件上传文档jsp实现文件上传文档

    利用jspSmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。 * 能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求的...

    jsp实现上传完整代码

    下面将详细阐述JSP文件上传的实现步骤、原理以及如何利用`jspsmart.jar`进行优化。 首先,了解HTTP协议的基础知识是必要的。在HTTP中,标准的GET请求无法处理大文件或多个文件的上传,因为它们的参数长度有限制。...

Global site tag (gtag.js) - Google Analytics