`
huangshenji
  • 浏览: 10021 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

smartupload在struts中的实现

    博客分类:
  • Java
阅读更多
jsp:
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>文件上传</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<p>&nbsp;</p>
<p align="center">上传文件选择</p>
<FORM METHOD="POST" ACTION="./test.do"
ENCTYPE="multipart/form-data">
<input type="hidden" name="TEST" value="good">
  <table width="75%" border="1" align="center">
    <tr>
      <td><div align="center">1、
          <input type="FILE" name="FILE1" size="30">
        </div></td>
    </tr>
    <tr>
      <td><div align="center">2、
          <input type="FILE" name="FILE2" size="30">
        </div></td>
    </tr>
    <tr>
      <td><div align="center">3、
          <input type="FILE" name="FILE3" size="30">
        </div></td>
    </tr>
    <tr>
      <td><div align="center">4、
          <input type="FILE" name="FILE4" size="30">
        </div></td>
    </tr>
    <tr>
      <td><div align="center">
          <input type="submit" name="Submit" value="上传它!">
        </div></td>
    </tr>
  </table>
</FORM>
<a href="./down.do">点击下载</a>
</body>
</html>


upload:
public class TestAction extends Action {
/*
* Generated Methods
*/

/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
System.out.println("*******************************************");
SmartUpload mySmartUpload = new SmartUpload();
    try {
mySmartUpload.initialize(getServlet().getServletConfig(),request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();

    try {
mySmartUpload.upload();
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SmartUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
  

    Files files=mySmartUpload.getFiles();
    Collection col=files.getCollection();
    Iterator it=col.iterator();
    while(it.hasNext()){
      File file=(File)it.next();   
      if(file==null)
      continue;
      String oldFileName=file.getFileName();    
//       String extname=file.getFileExt();
      if(oldFileName==null||oldFileName.equals(""))
      continue;
      String fileName= oldFileName;//产生一个唯一的文件名
      try {
file.saveAs("d:\\"+fileName);
  } catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
  } catch (SmartUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
  }
    }
    return null;
}
}

download:
public class DownAction extends Action {
/*
* Generated Methods
*/

/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
SmartUpload su = new SmartUpload();
// 初始化
try {
su.initialize(getServlet().getServletConfig(),request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 设定contentDisposition为null以禁止浏览器自动打开文件,
//保证点击链接后是下载文件。若不设定,则下载的文件扩展名为
//doc时,浏览器将自动用word打开它。扩展名为pdf时,
//浏览器将用acrobat打开。
su.setContentDisposition(null);
// 下载文件
try {
su.downloadFile("D:\\ExportCourseAttendanceBarcode.log");
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SmartUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

return null;
}
}
分享到:
评论

相关推荐

    struts+SmartUpload实现的一个简易上传下载系统

    struts+SmartUpload实现的一个简易上传下载系统,此系统的主要代码已经放到俺博客上了,欢迎访问 “http://blog.csdn.net/zxingchao2009/archive/2010/09/08/5872106.aspx”

    struts 上传 和 smartupload上传

    Struts和SmartUpload都是在Java Web开发中处理文件上传功能的常见工具,它们各自有其特点和适用场景。下面将详细介绍这两个技术,并对比它们的使用方法。 **Struts上传** Struts是Apache软件基金会下的一个开源...

    jspsmartupload中文乱码解决版

    此外,`action smart 例子.txt`可能是一个文本文件,其中包含了关于如何在`struts1.2`中集成`jspsmartupload`的示例代码或者步骤,可以帮助我们更好地理解如何在实际项目中应用这些解决方案。 通过以上步骤,我们...

    Struts上传,已经处理好乱码问题

    在Struts中,文件上传是通过`Commons FileUpload`库来实现的,它是Apache Commons项目的一部分,专门处理HTTP请求中的多部分数据,包括文件上传。在Struts的ActionForm或Action类中,我们需要使用`File`、`String`和...

    SmartUpload源代码

    SmartUpload可以轻松地与Spring、Struts、JSF等主流的Java Web框架集成,使得文件上传功能的实现更加简单。 理解这些知识点对于使用SmartUpload源代码进行二次开发或定制是非常重要的。通过深入研究源代码,开发者...

    smartupload上传下载组件

    9. **易于集成**:SmartUpload可以轻松地集成到任何基于Servlet的Web应用程序中,无论使用的是JSP、Struts还是Spring MVC等框架。 10. **灵活性**:提供了丰富的API,开发者可以根据需求实现自定义的上传逻辑,如...

    jspSmartUpload,上传下载,解决中文乱码jspSmartUpload,SmartUpload

    在项目中引入这些jar包后,我们就可以使用`jspSmartUpload`提供的API来实现文件上传和下载的功能。 3. **API使用**:`jspSmartUpload`提供了一系列的API接口,如`SmartUpload`类,用于初始化、设置上传目录、设置...

    smartupload.jar jspsmartupload.jar

    标题中的"smartupload.jar"和"jspsmartupload.jar"是两个重要的Java库文件,主要...在实际项目中,根据需求选择合适的实现方式,并结合其他技术,如Spring MVC、Struts等,可以构建出健壮且用户友好的文件上传系统。

    java 文件上传 SmartUpload.pdf SmartUpload.jar包

    通过上述步骤,你可以在Struts项目中集成SmartUpload,实现高效、稳定的文件上传功能。需要注意的是,处理文件上传时,一定要考虑到安全性问题,例如防止上传恶意文件、控制文件大小和类型等。此外,确保服务器有...

    spring+struts+hibernate实现文件的上传和下载

    SSH(Struts、Spring、Hibernate)框架提供了便捷的方式来处理这一问题,无需依赖像 SmartUpload 或 Apache FileUpload 这样的第三方库。SSH 框架的最新版本(Struts 1.2、Spring 1.2.5、Hibernate 3.0)可以很好地...

    smartupload文件上传与下载

    通过理解SmartUpload的工作机制和使用方法,开发者可以轻松地在Java Web项目中实现文件上传和下载功能,提高用户体验并简化开发流程。同时,利用smartupload.jar和jspsmart.jar这两个库文件,可以在项目中快速集成...

    jspSmartUpload完整的上传下载代码及一些实用的方法

    在Struts框架中,通常通过`Action`类的`PageContext`属性来访问页面上下文,但如果你无法直接获取,可以使用`HttpServletRequest`对象的`getSession()`方法来间接获取。`HttpServletRequest`是请求处理的核心对象,...

    struts2图片上传并预览

    2. 配置struts.xml:在`struts.xml`配置文件中,启用文件上传,设置`struts.multipart.saveDir`属性指定临时文件保存位置,并配置相应的action接收文件。 ```xml &lt;constant name="struts.multipart.saveDir" value=...

    smartupload使用

    在Java开发中,文件上传是一个常见的功能需求,SmartUpload就是一款专为Java设计的文件上传组件。它简化了文件上传的处理流程,提供了强大的功能和友好的API,使得开发者能够方便地实现文件上传、管理等功能。本文将...

    web笔记 —— smartupload

    2. **集成步骤**:详细解释如何在Java Web应用(如Servlet或Struts)中引入SmartUpload,包括添加依赖、初始化配置等。 3. **API使用**:列举并解释关键的API方法,如上传、删除、获取文件信息等。 4. **示例代码**...

    struts笔记

    1. **JSP SmartUpload (Model 1)**:这是一种较老的上传方式,在Struts早期版本中较为流行,但现在已较少使用。 2. **Apache Commons FileUpload**:这是Struts 2默认采用的文件上传组件。Commons FileUpload组件...

    struts2上传

    在Struts2中实现文件上传,你需要在Action类中添加一个`List&lt;ultipartFile&gt;`类型的属性,这将用于接收上传的文件。例如: ```java public class UploadAction extends ActionSupport { private List&lt;ultipartFile&gt;...

    jspSmartUpload上传下载全攻略

    在实际开发中,开发者还可以结合其他技术,如Spring MVC、Struts等,将jspSmartUpload整合进更复杂的MVC框架中,实现更加灵活的文件管理功能。 总结起来,jspSmartUpload组件通过提供全面的文件上传和下载功能,...

    java基于servlet使用组件smartUpload实现文件上传

    本教程将介绍如何利用SmartUpload组件在Servlet中实现文件上传功能。 首先,我们需要理解文件上传的基本原理。在HTML表单中,如果需要上传文件,`&lt;form&gt;`标签的`enctype`属性必须设置为`multipart/form-data`,这...

Global site tag (gtag.js) - Google Analytics