tomcat上传文件下载文件
首先介绍一下我们需要的环境:我用的是myeclipse8.5java开发环境,tomcat是用的apache-tomcat-6.0.26这个版本。首先先需要准备一下使用到的jar
这些jar包是struts2jar包。这些jar包是都是用于上传文件的。
注意:这里的jar包版本必须是对应的,如不是可能会tomcat下报错。所以大家最好注意一下啊。最好是用这套jar包。我将会在csdn上将项目jar包发上去。
Jar下载地址(0分):download.csdn/detail/woaixinxin123/4193113
源代码下载(10分):download.csdn/detail/woaixinxin123/4193134
开始搭建我们的项目。创建web项目名字为File
第一步:搭建struts2框架。
1、jar包。
2、编辑l
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
    xmlns="java.sun/xml/ns/javaee"
    xmlns:xsi="/2001/XMLSchema-instance"
    xsi:schemaLocation="java.sun/xml/ns/javaee
    java.sun/xml/ns/javaee/web-app_2_5.xsd">
 
  <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.filter.StrutsPrepareAndExecuteFilter</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、添加l
<?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 = ContextPath();
String basePath = Scheme()+"://"+ServerName()+":"+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 {
    /**
java创建文件
    *
    */
    //上传文件的路径地址(文件夹提前创建)
    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((ad(buffer))>0){
                    os.write(buffer,0,count);
                }
                //关闭流
                os.close();
                is.close();
            }
        }else{
            return INPUT;
        }
       
        return SUCCESS;
       
    }
   
}
第四部:配置l
<?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>
<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"%>

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。