`
eddiegift
  • 浏览: 27714 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

struts的文件上传and下载

阅读更多
public ActionForward upload (ActionMapping mapping, 
                               ActionForm actionForm, 
                               HttpServletRequest request, 
                               HttpServletResponse response) { 
    FileForm fileForm = (FileForm) actionForm; 
    int count = UploadAndDown.uploadFile(fileForm); 
    if (count > 0) { 
      this.save(request); 
      return mapping.findForward("sucess"); 
    } else { 
      return mapping.getInputForward(); 
    } 
  } 

  //将可供下载的文件名列表储存在请求中,在页面中显示出来
  private void save(HttpServletRequest request) {
    try {
      Vector v = DataBaseDAO.query();
      request.getSession().setAttribute("filename",v);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }

  public ActionForward down(ActionMapping mapping, 
                               ActionForm actionForm, 
                               HttpServletRequest request, 
                               HttpServletResponse response) { 
       try { 
         FileForm fileForm = (FileForm) actionForm; 
         InputStream file = UploadAndDown.down(fileForm.getName()); 
         byte[] bit = new byte[1024]; 
         int len = file.read(bit); 
         ServletOutputStream out = response.getOutputStream(); 

// 添加此句为下载文件,否则将文件流发送到页面<img src="actionPatch"/>中,在页面将图片显示出来 
//         response.addHeader("Content-Disposition","attachment;filename=" + "tt.jpg"); 
         while (len != -1) { 
           out.write(bit,0,len); 
           len = file.read(bit); 
         } 
         out.close(); 
         file.close(); 
       return mapping.findForward("show"); 
//         return null; 
       } catch (Exception e) { 
         e.printStackTrace(); 
         return null; 
       } 
   } 

   public static int uploadFile(FileForm fileForm) { 
    try { 
      int count = DataBaseDAO.insert(fileForm); 
      return count; 
    } catch (Exception e) { 
      e.printStackTrace(); 
      return 0; 
    } 
  } 

  public static InputStream down(String name) { 
    try { 
      // Vector v = DataBaseDAO.getFile(name); 
      //FileInputStream input = (FileInputStream)v.get(0); 
      InputStream input = new FileInputStream("F:\\picture\\13-02-07_1455.jpg"); 
      return input; 
    } catch (Exception e) { 
      e.printStackTrace(); 
      return null; 
    } 
  }
1
6
分享到:
评论

相关推荐

    struts2实现文件上传下载

    Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java ...以上就是使用Struts2框架实现文件上传下载的基本步骤和关键知识点。在实际开发中,可以根据项目需求进行调整和优化,确保功能的稳定性和安全性。

    JavaEE Struts文件上传

    JavaEE Struts 文件上传是Web开发中的一个常见需求,它允许用户从客户端向服务器传输文件。Struts作为JavaEE框架的一部分,提供了强大的功能来处理这种交互。以下是对这个主题的详细解析。 首先,理解文件上传的...

    Struts2文件上传与下载

    Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括处理用户表单提交、进行文件上传和下载。在Web应用中,文件上传和下载是常见的需求,例如用户上传头像、下载文档等。Struts2通过其Action类和...

    [原]Struts2-文件上传与下载

    在Struts2中,文件上传和下载是常见的功能需求,它们对于用户交互性至关重要,例如用户提交表单时上传图片或文档,或者系统提供文件资源下载服务。本篇文章将深入探讨Struts2中的文件上传和下载机制。 首先,我们来...

    Struts文件的上传和下载

    下面将详细探讨Struts中文件上传和下载的实现机制。 一、文件上传 1. 配置文件:在Struts2中,我们需要在struts.xml配置文件中定义一个Action类,用于处理文件上传请求。例如: ```xml ...

    Struts框架文件上传下载案例

    在这个“Struts框架文件上传下载案例”中,我们将探讨如何在Struts2框架下实现文件的上传和下载功能,这对于Web应用来说是非常常见的需求。 文件上传功能是Web应用中允许用户从本地计算机选择文件并将其传输到...

    struts2+jquery+ajax文件异步上传

    在文件上传场景中,Struts2主要负责接收前端发送的文件数据,并将这些数据存储到服务器的指定位置。配置Struts2的Action类和相应的XML配置文件,可以定义文件上传的处理逻辑。 接着,jQuery是一个高效、简洁的...

    Struts2.0 文件上传与下载全解析

    在Struts2中,文件上传和下载是常见的需求,尤其对于处理用户交互和数据交换的Web应用来说。本篇文章将全面解析Struts2.0中的文件上传和下载流程。 ### 文件上传 文件上传的核心在于`multipart/form-data`编码类型...

    Struts文件上传/下载,支持多文件上传

    在Struts框架中,文件上传和下载是常见的功能需求,尤其是在处理用户提交的表单数据时。本案例将重点讲解如何在Struts中实现文件的上传与下载,并支持多文件上传。 一、文件上传 1. 配置Struts.xml 首先,我们需要...

    Struts2实现文件的上传下载

    总的来说,Struts2通过内置的拦截器和便捷的API,使得文件上传下载变得简单而高效。尽管本项目没有使用异步(AJAX)方式,但在实际应用中,结合AJAX进行无刷新的文件上传和下载也是常见的优化手段,可以提升用户体验...

    Struts实现文件的上传下载

    实现文件上传和下载时,需要注意安全性问题,比如防止恶意文件上传、检查文件类型、限制文件大小等。此外,优化方面可以考虑使用临时文件、异步处理大文件上传,以及使用缓存来提高文件下载速度。 通过以上步骤,...

    struts2 文件上传

    Struts2 文件上传是Web开发中的一个重要功能,它允许用户通过网页上传文件到服务器。Struts2 是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,提供了丰富的特性和强大的控制层功能,使得文件上传...

    Struts2多个文件上传

    在Struts2中,文件上传功能是一个常用特性,尤其在处理用户提交的多个文件时。本文将详细讲解如何使用Struts2进行多个文件的上传,重点是使用List集合进行上传。 首先,要实现Struts2的文件上传,必须引入必要的...

    struts2框架下的文件上传

    Struts2框架是Java Web开发中的一个流行MVC(Model-View-Controller)框架,它提供了丰富的功能,包括处理表单提交、文件上传等。在Struts2中,文件上传是一个常见的需求,可以帮助用户从客户端上传文件到服务器。...

    Struts2之struts2文件上传详解案例struts011

    在这个"Struts2之struts2文件上传详解案例struts011"中,我们将深入探讨如何实现这一功能。 首先,我们需要了解Struts2中的Action类,它是处理用户请求的核心组件。为了支持文件上传,我们需要创建一个继承自`org....

    struts2.1.3上传文件

    首先,你需要在Struts2配置文件(通常为struts.xml)中启用文件上传支持,这通常意味着添加`&lt;constant name="struts.multipart.parser" value="jakarta"/&gt;`配置,以确保框架能够解析multipart/form-data类型的请求,...

    struts2的上传,下载,删除文件

    在本篇中,我们将聚焦于Struts2中的文件上传、下载和删除功能,这些是Web应用中常见的需求。 1. 文件上传: 在Struts2中,文件上传主要依赖于`Commons FileUpload`库,它处理了多部分表单数据。首先,你需要在`...

    Struts AJAX文件上传

    Struts AJAX 文件上传是一种在Java Web开发中实现异步数据传输的技术,它结合了Struts框架和AJAX(Asynchronous JavaScript and XML)的优势,提供了一种用户友好的、无刷新的文件上传方式。这种方式可以显著提升...

    struts 单文件上传和多文件上传带进度条

    在Struts中,可以实现单文件和多文件的上传,并且为了提升用户体验,我们还可以添加进度条来显示文件上传的状态。本文将详细介绍如何在Struts中实现这两个功能,并带上传进度条。 首先,我们需要了解Struts中处理...

    Struts2文件的上传和下载

    Struts2 文件上传和下载是Web开发中常见的情景,主要涉及到HTML表单、HTTP请求、文件处理以及服务器端的响应。以下将详细介绍Struts2框架下如何进行文件的上传和下载。 首先,理解文件上传的基本原理至关重要。当在...

Global site tag (gtag.js) - Google Analytics