• Struts---多文件上传、单文件下载


    struts.xml

     1 <?xml version="1.0" encoding="UTF-8" ?>
     2 <!DOCTYPE struts PUBLIC
     3     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
     4     "http://struts.apache.org/dtds/struts-2.0.dtd">
     5 
     6 <struts>
     7     <constant name="struts.multipart.maxSize" value="3000000001000"></constant>
     8     <package name="a" extends="struts-default">
     9     
    10     <!-- 上传   多文件上传 -->
    11         <action name="upload" class="com.zr.fileupload" method="upload">
    12             <param name="allowedTypes">image/bmp,image.jpg</param>
    13             <param name="allowedExtensions">.jpg</param>
    14             <interceptor-ref name="fileUpload">
    15             <param name="maximumSize">81111110111</param>
    16             </interceptor-ref>
    17              <interceptor-ref name="defaultStack"/>
    18             <result name="OK">/upload.jsp</result>
    19         </action>
    20         
    21         
    22     <!-- 下载   单文件下载 -->
    23         <action name="DownLoad" class="com.zr.DownLoad">
    24         <result type="stream">
    25             <param name="contentDisposition">attachment;filename=${fileName}</param>
    26         </result>
    27         
    28         </action>
    29     </package>
    30 </struts>

    下载方法

     1 package com.zr;
     2 
     3 import java.io.File;
     4 import java.io.FileInputStream;
     5 import java.io.InputStream;
     6 import java.io.UnsupportedEncodingException;
     7 
     8 import com.opensymphony.xwork2.ActionSupport;
     9 
    10 public class DownLoad extends ActionSupport{
    11     
    12     private String fileName;
    13 
    14     public String getFileName() throws Exception{
    15         fileName=new String(fileName.getBytes(), "ISO8859-1");
    16         return fileName;
    17     }
    18 
    19     public void setFileName(String fileName) {
    20         this.fileName = fileName;
    21     }
    22     
    23     public InputStream getInputStream()throws Exception{
    24         File file=new File("C:/jdk-6u39-windows-i586.exe");
    25         this.fileName="jdk-6u39-windows-i586.exe";
    26         return new FileInputStream(file);
    27     }
    28     
    29 }

    实体类

     1 package com.zr;
     2 
     3 import java.io.File;
     4 import java.io.IOException;
     5 import org.apache.commons.io.FileUtils;
     6 import com.opensymphony.xwork2.ActionSupport;
     7 public class fileupload extends ActionSupport{
     8 
     9     private File   [] upload;
    10     private String [] uploadFileName;
    11     private String [] uploadContentType;
    12     
    13 
    14     public String upload() throws IOException{
    15         for (int i = 0; i <upload.length; i++) {
    16             String filepath="c:/"+uploadFileName[i];
    17             File fp=new File(filepath);
    18             FileUtils.copyFile(upload[i], fp);
    19         }
    20         return "OK";
    21     }
    22     
    23     
    24     
    25     public File[] getUpload() {
    26         return upload;
    27     }
    28     public void setUpload(File[] upload) {
    29         this.upload = upload;
    30     }
    31     public String[] getUploadFileName() {
    32         return uploadFileName;
    33     }
    34     public void setUploadFileName(String[] uploadFileName) {
    35         this.uploadFileName = uploadFileName;
    36     }
    37     public String[] getUploadContentType() {
    38         return uploadContentType;
    39     }
    40     public void setUploadContentType(String[] uploadContentType) {
    41         this.uploadContentType = uploadContentType;
    42     }
    43 }

    index.jsp页面

     1 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
     2 <%@ taglib uri="/struts-tags" prefix="s" %>
     3 <%
     4 String path = request.getContextPath();
     5 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
     6 %>
     7 
     8 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     9 <html>
    10   <head>
    11     <base href="<%=basePath%>">
    12     <title>My JSP 'index.jsp' starting page</title>
    13     <meta http-equiv="pragma" content="no-cache">
    14     <meta http-equiv="cache-control" content="no-cache">
    15     <meta http-equiv="expires" content="0">    
    16     <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    17     <meta http-equiv="description" content="This is my page">
    18     <!--
    19     <link rel="stylesheet" type="text/css" href="styles.css">
    20     -->
    21     <SCRIPT type="text/javascript" src="jquery-1.8.2.min.js"></SCRIPT>
    22   </head>
    23   <body>
    24         <embed 
    25             name="honehoneclock" 
    26             width="320" 
    27             align="middle" 
    28             pluginspage="http://www.macromedia.com/go/getflashplayer"
    29             src="http://chabudai.sakura.ne.jp/blogparts/honehoneclock/honehone_clock_wh.swf"
    30             type="application/x-shockwave-flash"
    31             allowscriptaccess="always"
    32             bgcolor="#ffffff" 
    33             quality="high" 
    34             wmode="transparent"
    35         >
    36                 
    37         <form action="upload"  method="post" enctype="multipart/form-data">
    38              <input type="file" name="upload"><br/>
    39              <input type="file" name="upload"><br/>
    40              <input type="file" name="upload"><br/>
    41              <input type="submit"  value="上传"> <br/>
    42          </form>
    43          
    44          <a href="DownLoad.action">下载</a>
    45          
    46   </body>
    47 
    48 </html>

    struts配置注意事件

     以上内容为个人笔记记录

    可供他人参考

    2017-08-1112:51:01

    请留下你的足迹...
  • 相关阅读:
    Java NIO与IO
    linux命令
    windows的定时任务设置
    《软硬件接口》课程大纲
    使用SSIS对Dynamics CRM 系统进行数据迁移
    数据库设计中的14个技巧
    背景建模或前景检測之PBAS
    Leetcode 树 Populating Next Right Pointers in Each Node II
    QCon大会上推荐阅读的10本书
    cocos2d-x3.0 Slider
  • 原文地址:https://www.cnblogs.com/angelye/p/7345386.html
Copyright © 2020-2023  润新知