热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

jspsmartupload上传组件

最近找相应的上传文件的组件,找到了这个,比较好用。下载jspsmartupload。jar,找到相应的D:Tomcatsharedlib

最近找相应的上传文件的组件,找到了这个,比较好用。

下载jspsmartupload。jar,找到相应的D:/Tomcat/shared/lib目录,拷贝进去。

然后建立两个文件,调用其中的函数实现相应的功能。







 


上传文件选择


ENCTYPE="multipart/form-data">

 
   
     
   
   
     
   
   
     
   
   
     
   
   
     
   
 
1、
         
       
2、
         
       
3、
         
       
4、
         
       

         
       



------------------------------------------------------------------------------------------------


<%&#64; page contentType&#61;"text/html; charset&#61;gb2312" language&#61;"java"
import&#61;"java.util.*,com.jspsmart.upload.*" errorPage&#61;"" %>





<%
 // 新建一个SmartUpload对象
 SmartUpload su &#61; new SmartUpload();
 // 上传初始化

 su.initialize(pageContext);
 // 设定上传限制
 // 1.限制每个上传文件的最大长度。
 // su.setMaxFileSize(10000);
 // 2.限制总上传数据的长度。
 // su.setTotalMaxFileSize(20000);
 // 3.设定允许上传的文件&#xff08;通过扩展名限制&#xff09;,仅允许doc,txt文件。
 // su.setAllowedFilesList("doc,txt");
 // 4.设定禁止上传的文件&#xff08;通过扩展名限制&#xff09;,禁止上传带有exe,bat,
 //jsp,htm,html扩展名的文件和没有扩展名的文件。
 // su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
 // 上传文件
 su.upload();
 // 将上传文件全部保存到指定目录
 int count &#61; su.save("/upload");
 out.println(count&#43;"个文件上传成功&#xff01;
");
 
 // 利用Request对象获取参数之值
 out.println("TEST&#61;"&#43;su.getRequest().getParameter("TEST")
 &#43;"

");

 // 逐一提取上传文件信息&#xff0c;同时可保存文件。
 for (int i&#61;0;i {
  com.jspsmart.upload.File file &#61; su.getFiles().getFile(i);
  
  // 若文件不存在则继续
  if (file.isMissing()) continue;

  // 显示当前文件信息
  out.println("

");
  out.println("");
  out.println("");
  out.println("");
  out.println("");
  out.println("");
  out.println("
表单项名&#xff08;FieldName&#xff09;"
  &#43; file.getFieldName() &#43; "
文件长度&#xff08;Size&#xff09;" &#43;
  file.getSize() &#43; "
文件名&#xff08;FileName&#xff09;"
  &#43; file.getFileName() &#43; "
文件扩展名&#xff08;FileExt&#xff09;"
  &#43; file.getFileExt() &#43; "
文件全名&#xff08;FilePathName&#xff09;"
  &#43; file.getFilePathName() &#43; "

");

  // 将文件另存
  // file.saveAs("/upload/" &#43; myFile.getFileName());
  // 另存到以WEB应用程序的根目录为文件根目录的目录下
  //file.saveAs("/upload/" &#43; myFile.getFileName(),su.SAVE_VIRTUAL);
  // 另存到操作系统的根目录为文件根目录的目录下
  file.saveAs("c://temp//" &#43; file.getFileName(),su.SAVE_PHYSICAL);

 }

%>


推荐阅读
  • Java中处理NullPointerException:getStackTrace()方法详解与实例代码 ... [详细]
  • FastDFS Nginx 扩展模块的源代码解析与技术剖析
    FastDFS Nginx 扩展模块的源代码解析与技术剖析 ... [详细]
  • 通过在项目中引用 NuGet 包 `ExcelDataReader`,可以实现高效地读取和导入 Excel 文件中的数据。具体方法是在项目中执行 `Install-Package ExcelDataReader` 命令,然后通过定义一个 `LeadingIn` 方法并传入上传文件的路径来完成数据导入。该方法不仅简化了代码逻辑,还显著提升了数据处理的效率和可靠性。 ... [详细]
  • 深入解析 Android TextView 中 getImeActionLabel() 方法的使用与代码示例 ... [详细]
  • 本文深入探讨了CGLIB BeanCopier在Bean对象复制中的应用及其优化技巧。相较于Spring的BeanUtils和Apache的BeanUtils,CGLIB BeanCopier在性能上具有显著优势。通过详细分析其内部机制和使用场景,本文提供了多种优化方法,帮助开发者在实际项目中更高效地利用这一工具。此外,文章还讨论了CGLIB BeanCopier在复杂对象结构和大规模数据处理中的表现,为读者提供了实用的参考和建议。 ... [详细]
  • 本文详细探讨了Zebra路由软件中的线程机制及其实际应用。通过对Zebra线程模型的深入分析,揭示了其在高效处理网络路由任务中的关键作用。文章还介绍了线程同步与通信机制,以及如何通过优化线程管理提升系统性能。此外,结合具体应用场景,展示了Zebra线程机制在复杂网络环境下的优势和灵活性。 ... [详细]
  • 本文深入探讨了 hCalendar 微格式在事件与时间、地点相关活动标记中的应用。作为微格式系列文章的第四篇,前文已分别介绍了 rel 属性用于定义链接关系、XFN 微格式增强链接的人际关系描述以及 hCard 微格式对个人和组织信息的描述。本次将重点解析 hCalendar 如何通过结构化数据标记,提高事件信息的可读性和互操作性。 ... [详细]
  • 本文探讨了利用Java实现WebSocket实时消息推送技术的方法。与传统的轮询、长连接或短连接等方案相比,WebSocket提供了一种更为高效和低延迟的双向通信机制。通过建立持久连接,服务器能够主动向客户端推送数据,从而实现真正的实时消息传递。此外,本文还介绍了WebSocket在实际应用中的优势和应用场景,并提供了详细的实现步骤和技术细节。 ... [详细]
  • 深入解析 Vue 中的 Axios 请求库
    本文深入探讨了 Vue 中的 Axios 请求库,详细解析了其核心功能与使用方法。Axios 是一个基于 Promise 的 HTTP 客户端,支持浏览器和 Node.js 环境。文章首先介绍了 Axios 的基本概念,随后通过具体示例展示了如何在 Vue 项目中集成和使用 Axios 进行数据请求。无论你是初学者还是有经验的开发者,本文都能为你解决 Vue.js 相关问题提供有价值的参考。 ... [详细]
  • 在使用Keil C51创建51单片机项目时,启动代码中包含多个关键元素,这些元素确保了系统的正确初始化和运行。主要包括复位向量、中断向量表、系统时钟配置、寄存器初始化以及主函数入口等。这些组件共同协作,为后续的应用程序执行提供稳定的基础。 ... [详细]
  • 在 Windows 10 环境中,通过配置 Visual Studio Code (VSCode) 实现基于 Windows Subsystem for Linux (WSL) 的 C++ 开发,并启用智能代码提示功能。具体步骤包括安装 VSCode 及其相关插件,如 CCIntelliSense、TabNine 和 BracketPairColorizer,确保在 WSL 中顺利进行开发工作。此外,还详细介绍了如何在 Windows 10 中启用和配置 WSL,以实现无缝的跨平台开发体验。 ... [详细]
  • 开发笔记:深入解析Android自定义控件——Button的72种变形技巧
    开发笔记:深入解析Android自定义控件——Button的72种变形技巧 ... [详细]
  • 掌握PHP编程必备知识与技巧——全面教程在当今的PHP开发中,了解并运用最新的技术和最佳实践至关重要。本教程将详细介绍PHP编程的核心知识与实用技巧。首先,确保你正在使用PHP 5.3或更高版本,最好是最新版本,以充分利用其性能优化和新特性。此外,我们还将探讨代码结构、安全性和性能优化等方面的内容,帮助你成为一名更高效的PHP开发者。 ... [详细]
  • Python爬虫入门:深入解析HTTP协议与Requests库的应用
    Python爬虫入门:深入解析HTTP协议与Requests库的应用 ... [详细]
  • Java集合框架特性详解与开发实践笔记
    Java集合框架特性详解与开发实践笔记 ... [详细]
author-avatar
ghost
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有