频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

演示Struts2实现简单上传代码

来源:csdn博客 作者:天涯任我… 出处:巧巧读书 2008-04-23 进入讨论组

    web.xml

 <?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

    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>
    <package name="struts2" extends="struts-default">
        <action name="upload" class="com.xie.struts.upload.UploadAction">
            <result name="success">/upload/result.jsp</result>
        </action>
    </package>
</struts>

    upload.jsp

 

<%...@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<%...@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>upload</title>
</head>
<body>
<s:form action="upload" enctype="multipart/form-data">
    <s:textfield name="username" id="username" label="username"/>
    <s:file name="file" id="file" label="file"/>
    <s:submit/>
</s:form>
</body>
</html>
 result.jsp

<%...@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<%...@ taglib prefix="s" uri="/struts-tags"%>
<html>
    <head>
        <title>result</title>
    </head>
    <body>
        <s:property value="username" />
        <br>
        <s:property value="fileFileName" />
    </body>
</html>
UploadAction.java

package com.xie.struts.upload;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionSupport;

public class UploadAction extends ActionSupport ...{
    private String username;

    private File file;

    private String fileFileName; // 有属性file+Filename固定组成

    private String fileContentType; // 有属性file+ContentType固定组成

    public String getUsername() ...{
        return username;
    }

    public void setUsername(String username) ...{
        this.username = username;
    }

    public File getFile() ...{
        return file;
    }

    public void setFile(File file) ...{
        this.file = file;
    }

    public String getFileFileName() ...{
        return fileFileName;
    }

    public void setFileFileName(String fileFileName) ...{
        this.fileFileName = fileFileName;
    }

    public String getFileContentType() ...{
        return fileContentType;
    }

    public void setFileContentType(String fileContentType) ...{
        this.fileContentType = fileContentType;
    }

    @Override
    public String execute() throws Exception ...{
        InputStream is = new FileInputStream(file);
        String root = ServletActionContext.getRequest().getRealPath("/temp");
        File destFile = new File(root, this.getFileFileName());
        OutputStream os = new FileOutputStream(destFile);
        byte[] buffer = new byte[400];
        int length = 0;
        while ((length - is.read(buffer)) > 0) ...{
            os.write(buffer, 0, length);
        }
        is.close();
        os.close();
        return SUCCESS;
    }
}


 

更多文章 更多内容请看Struts框架应用专题专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章