Struts---多文件上传、单文件下载
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd"> <struts>
<constant name="struts.multipart.maxSize" value="3000000001000"></constant>
<package name="a" extends="struts-default"> <!-- 上传 多文件上传 -->
<action name="upload" class="com.zr.fileupload" method="upload">
<param name="allowedTypes">image/bmp,image.jpg</param>
<param name="allowedExtensions">.jpg</param>
<interceptor-ref name="fileUpload">
<param name="maximumSize">81111110111</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"/>
<result name="OK">/upload.jsp</result>
</action> <!-- 下载 单文件下载 -->
<action name="DownLoad" class="com.zr.DownLoad">
<result type="stream">
<param name="contentDisposition">attachment;filename=${fileName}</param>
</result> </action>
</package>
</struts>
下载方法
package com.zr; import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.UnsupportedEncodingException; import com.opensymphony.xwork2.ActionSupport; public class DownLoad extends ActionSupport{ private String fileName; public String getFileName() throws Exception{
fileName=new String(fileName.getBytes(), "ISO8859-1");
return fileName;
} public void setFileName(String fileName) {
this.fileName = fileName;
} public InputStream getInputStream()throws Exception{
File file=new File("C:/jdk-6u39-windows-i586.exe");
this.fileName="jdk-6u39-windows-i586.exe";
return new FileInputStream(file);
} }
实体类
package com.zr; import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
import com.opensymphony.xwork2.ActionSupport;
public class fileupload extends ActionSupport{ private File [] upload;
private String [] uploadFileName;
private String [] uploadContentType; public String upload() throws IOException{
for (int i = 0; i <upload.length; i++) {
String filepath="c:/"+uploadFileName[i];
File fp=new File(filepath);
FileUtils.copyFile(upload[i], fp);
}
return "OK";
} public File[] getUpload() {
return upload;
}
public void setUpload(File[] upload) {
this.upload = upload;
}
public String[] getUploadFileName() {
return uploadFileName;
}
public void setUploadFileName(String[] uploadFileName) {
this.uploadFileName = uploadFileName;
}
public String[] getUploadContentType() {
return uploadContentType;
}
public void setUploadContentType(String[] uploadContentType) {
this.uploadContentType = uploadContentType;
}
}
index.jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<SCRIPT type="text/javascript" src="jquery-1.8.2.min.js"></SCRIPT>
</head>
<body>
<embed
name="honehoneclock"
width="320"
align="middle"
pluginspage="http://www.macromedia.com/go/getflashplayer"
src="http://chabudai.sakura.ne.jp/blogparts/honehoneclock/honehone_clock_wh.swf"
type="application/x-shockwave-flash"
allowscriptaccess="always"
bgcolor="#ffffff"
quality="high"
wmode="transparent"
> <form action="upload" method="post" enctype="multipart/form-data">
<input type="file" name="upload"><br/>
<input type="file" name="upload"><br/>
<input type="file" name="upload"><br/>
<input type="submit" value="上传"> <br/>
</form> <a href="DownLoad.action">下载</a> </body>
</html>
struts配置注意事件
以上内容为个人笔记记录
可供他人参考
2017-08-1112:51:01
Struts---多文件上传、单文件下载的更多相关文章
- 分享知识-快乐自己:SpringMvc中的单多文件上传及文件下载
摘要:SpringMvc中的单多文件上传及文件下载:(以下是核心代码(拿过去直接能用)不谢) <!--设置文件上传需要的jar--> <dependency> <grou ...
- Struts的文件上传下载
Struts的文件上传下载 1.文件上传 Struts2的文件上传也是使用fileUpload的组件,这个组默认是集合在框架里面的.且是使用拦截器:<interceptor name=" ...
- struts2中的文件上传,文件下载
文件上传: Servlet中的文件上传回顾 前台页面 1.提交方式post 2.表单类型 multipart/form-data 3.input type=file 表单输入项 后台 apache提交 ...
- struts2的文件上传和文件下载
实现使用Struts2文件上传和文件下载: 注意点: (1)对应表单的file1和私有成员变量的名称必须一致 <input type="file" name="fi ...
- struts 多文件上传 annotation注解(零配置)+ ajaxfileupload + 异步 版本
[本文简介] struts 多文件上传.基于”零配置“+"ajaxfileupload" 的一个简单例子. [导入依赖jar包] jquery-1.7.2.js : http:// ...
- struts 多文件上传 xml 版本
[本文简介] 本文将介绍 以配置 struts.xml 的方式 实现 多文件上传的功能. [文件夹结构] [struts.xml] <?xml version="1.0" ...
- struts文件上传、文件下载
文件上传 如果在表单中上传文件,表单的enctype属性为multipart/form-data struts默认上传文件大小为2M,如果需要修改,在配置文件中设置 <constant name ...
- struts2实现文件上传、多文件上传和文件下载
总结的两个问题,就是struts2上传下载的时候对属性名配置要求非常严格: 第一:上传的时候 private File file; private String fileContentType; pr ...
- java框架篇---struts之文件上传和下载
Struts2文件上传 Struts 2框架提供了内置支持处理文件上传使用基于HTML表单的文件上传.上传一个文件时,它通常会被存储在一个临时目录中,他们应该由Action类进行处理或移动到一个永久的 ...
- struts2中的文件上传和文件下载
单文件文件上传 1.
随机推荐
- 【bzoj 4046 加强版】Pork barrel
刚考完以为是神仙题--后来发现好像挺蠢的-- QwQ 题意 给你一张 \(n\) 个点 \(m\) 条边的无向图(不一定连通),有 \(q\) 组询问,每组询问给你 \(2\) 个正整数 \(l,h\ ...
- usb server
usb server 是通道型的,驱动在客户端安装 服务端不需要驱动
- 第二章 Vue快速入门-- 15 vue中通过属性绑定为元素设置class类样式
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- 【洛谷P3128】Max Flow
题目大意:给定一棵 N 个节点的无根树,有 M 个操作,每次选定一条树链,将这条链上所有点的点权 +1,最后求树上点的最大点权是多少. 题解:树上差分算法的应用. 发现操作有 M 次,但是询问只有一次 ...
- Ubuntu安装opencv 为调用gpu模块
也真够折腾的. 事件背景:为了一个光流的提取处理,本来是3.1的opencv在include一些模块上出错,原因是opencv3.0以上的版本对模块进行了再分离,要contribute,但是contr ...
- Windows系统下如何卸载干净mysql
一.在控制面板中卸载mysql软件 二.卸载过后删除C:\Program Files (x86)\MySQL该目录下剩余了所有文件,把mysql文件夹也删了 三.windows+R运行“regedit ...
- 常见的 DOCTYPE 声明
HTML 5 <!DOCTYPE html> HTML 4.01 Strict 这个 DTD 包含所有 HTML 元素和属性,但不包括表象或过时的元素(如 font ).框架集是不允许的. ...
- 服务端获取参数(koa)
1.获取query(问号后面的内容) ctx.query 2.获取路由参数(如'/user/:id'的id) ctx.param 3.获取body请求体 koa不能直接获取请求体里的body,需要安装 ...
- Linux系统下使用 mail 发送邮件
邮件常常是Linux下监控报警手段之一.Linux下的mail命令可以方便,快速的完成发送邮件.下面以CentOS为例 1.安装: [app@127-0-0-1 ~]# mail -bash: mai ...
- CSS定位——文档流定位
关于CSS的定位机制Ⅰ ㈠概念 对于盒子模型来说,也就是页面元素,这些盒子究竟在页面的什么位置,怎样排列它,那么找到它的位置,确定它的位置,这个就是定位机制所决定的. ㈡分类 文档流, 浮动定位,层定 ...