tomcat上传文件下载文件首先介绍一下我们需要的环境:我用的是myeclipse8.5的java开发环境,tomcat是用的apache-tomcat-6.0.26这个版本。
首先先需要准备一下使用到的jar包这些jar包是struts2的jar包。
这些jar包是都是用于上传文件的。
注意:这里的jar包版本必须是对应的,如不是可能会tomcat下报错。
所以大家最好注意一下啊。
最好是用这套jar包。
我将会在csdn上将项目jar包发上去。
Jar下载地址(0分):/detail/woaixinxin123/4193113 源代码下载(10分):/detail/woaixinxin123/4193134开始搭建我们的项目。
创建web项目名字为File。
第一步:搭建struts2框架。
1、到jar包。
2、编辑web.xml<?xml version="1.0"encoding="UTF-8"?><web-app version="2.5"xmlns="/xml/ns/javaee"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/xml/ns/javaee/xml/ns/javaee/web-app_2_5.xsd"><!-- 增加struts2的支持 --><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepa reAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list></web-app>3、添加struts.xml<?xml version="1.0"encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN""/dtds/struts-2.0.dtd"><struts></struts>4、启动tomcat测试。
配置完成的tomcat提示。
第二步:编写首页代码:<%@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.get ServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><base href="<%=basePath%>"><title>多文件上传</title></head><body><s:form action="upload.action"method="post" enctype="multipart/form-data"><s:file name="upload"label="上传的文件一"></s:file><s:file name="upload"label="上传的文件二"></s:file><s:file name="upload"label="上传的文件三"></s:file><s:submit value="上传"></s:submit></s:form></body></html>第三部:编写action代码:package file.action;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import java.util.List;import com.opensymphony.xwork2.ActionSupport;public class UploadAction extends ActionSupport {/****///上传文件的路径地址(文件夹提前创建)private static final String PATH= "D:\\apache-tomcat-6.0.26\\webapps\\uploadFiles\\";private static final long serialVersionUID = 1L;private List<File> upload;public List<File> getUpload() {return upload;public void setUpload(List<File> upload) {this.upload = upload;}public List<String> getUploadFileName() {return uploadFileName;}public void setUploadFileName(List<String> uploadFileName) { this.uploadFileName = uploadFileName;}private List<String> uploadFileName;public String execute() throws Exception{//判断文件是否为空if(upload!=null){//循环遍历文件for(int i=0;i<upload.size();i++){//取到文件流InputStream is=new FileInputStream(upload.get(i));//创建文件输出流OutputStream os=new FileOutputStream(PATH+uploadFileName.get(i));//缓存字节byte buffer[]=new byte[1024];//缓存字节大小int count=0;//写文件while((count=is.read(buffer))>0){os.write(buffer,0,count);}//关闭流os.close();is.close();}}else{return INPUT;}return SUCCESS;}第四部:配置struts.xml<?xml version="1.0"encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN""/dtds/struts-2.0.dtd"><struts><constant name="struts.devMode"value="true"/><!--规定上传文件的大小 --><constant name="struts.multipart.maxSize" value="102400000"></constant><!--配置action --><package name="default"extends="struts-default"><action name="upload"class="file.action.UploadAction"> <result name="success">/success.jsp</result><result name="input">/input.jsp</result></action></package></struts>第五步:创建缺省页面Success.jsp<%@ page language="java"import="java.util.*" pageEncoding="utf-8"%><html><head><title>文件上传</title></head><body><h2>上传成功</h2></body></html>Input.jsp<%@page language="java"import="java.util.*" pageEncoding="utf-8"%><html><head><title>文件上传</title></head><body><h2>文件为空,不能上传</h2></body></html>上传文件测试:启动tomcat添加File 打开浏览器输入网址查看文件是否在:确认,而且数据都对。