Struts2.5文件上传和下载详解(一)

本文详细介绍了Struts2.5中实现文件上传和下载的步骤,包括所需jar包、表单设置、Action配置、拦截器过滤、错误处理及国际化信息。特别指出,IE和火狐浏览器对文件类型的翻译差异可能导致上传问题,以及如何定位上传文件在服务器的保存位置。
摘要由CSDN通过智能技术生成

今天了解了文件的上传与下载,遇到了很多的问题,解决了一天终于也算是懂了一些。现在来分享一下。

文件的上传


1、要实现Struts2.5的文件上传功能,必须包含两个jar文件:commons-io-2.4.jarcommons-fileupload-1.3.3.jar


2、在jsp文件的表单中,表单的method设置为:POSTenctype设置为multipart/form-data(此时浏览器采用二进制流的方式来处理表单数据)

例:uploadForm.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<s:form action="upload" method="post" 
 enctype="multipart/form-data">
 <s:file name="upload" label="选择文件"></s:file>
 <s:submit value="上传"></s:submit>
</s:form>
</body>
</html>

3、若表单中file文件的name属性为“xxx”,则Action中必须使用三个成员变量去封装该文件域的信息
(1)类型为File的xxx成员变量封装对应文件内容
(2)类型为String的xxxFileName成员变量封装了对应的文件名
(3)类型为String的xxxContentType成员变量封装了文件域对应的文件类型(通常使用在配置Action中去限制上传文件的类型)

例:UploadAction.java

package gzy;

import java.io.File;
import java.io.FileInputStream;
import java.io.Fil
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值