`

Java struts Action +ActionForm上传文件

 
阅读更多
1、 创建表单―index.jsp

<li>测试struts上传文件</li><br>

      <form action="upload.do" method="post" enctype="multipart/form-data">

          标题:<input type="text" name="title"><br>

          文件:<input type="file" name="myfile"><br>

          <input type="submit" value="提交">

      </form>



2、 上传成功文件―upload_success.jsp
<%@ page language="java" contentType="text/html; charset=GB18030"

    pageEncoding="GB18030"%>

<!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=GB18030">

<title>Insert title here</title>

</head>

<body>

<!-- 

    uploadForm.title中的uploadForm是根据

    <form-bean name="uploadForm" type="com.bjsxt.struts.UploadActionForm"/>

    中的name="uploadForm"而来的

-->

    标题:${uploadForm.title}<br>

    文件名:${uploadForm.myfile.fileName  }<br>

</body>

</html>



3、 UploadActionForm.java文件

package com.bjsxt.struts;

import org.apache.struts.action.ActionForm;

import org.apache.struts.upload.FormFile;

/**

 * 上传ActionForm

 * @author Administrator

 */

public class UploadActionForm extends ActionForm {

    private String title;

    //必须采用FormFile声明

    private FormFile myfile;

    public String getTitle() {

        return title;

    public void setTitle(String title) {

        this.title = title;

    public FormFile getMyfile() {

        return myfile;

    public void setMyfile(FormFile myfile) {

        this.myfile = myfile;


4、  UploadTestAction.java文件

package com.bjsxt.struts;

import java.io.FileOutputStream;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;

import org.apache.struts.action.ActionForm;

import org.apache.struts.action.ActionForward;

import org.apache.struts.action.ActionMapping;

import org.apache.struts.upload.FormFile;

/**

 * 上传Action

 * @author Administrator

 */

public class UploadTestAction extends Action {

    @Override

    public ActionForward execute(ActionMapping mapping, ActionForm form,

            HttpServletRequest request, HttpServletResponse response)

            throws Exception {

        UploadActionForm uaf = (UploadActionForm)form;

        System.out.println("title" + uaf.getTitle());

        //FormFile是一个接口

        FormFile myFile = uaf.getMyfile();

        if (myFile != null) {

            System.out.println("fileName=" + myFile.getFileName());

            //存在C盘

            FileOutputStream fos = new FileOutputStream("c:\\" + myFile.getFileName());

            fos.write(myFile.getFileData());

            fos.flush();

            fos.close();

        return mapping.findForward("success");

5、 配置struts-config.xml文件

<?xml version="1.0" encoding="ISO-8859-1" ?>

<!DOCTYPE struts-config PUBLIC

          "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"

          "http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">

<struts-config>

        <form-bean name="uploadForm" type="com.bjsxt.struts.UploadActionForm"/>        

<action path="/upload"

                type="com.bjsxt.struts.UploadTestAction"

                name="uploadForm"

                scope="request"

            <forward name="success" path="/upload_success.jsp"/>

        </action>

</struts-config>


在struts-config.xml文件---配置上传文件的参数(采用<controller>标签)

・ 如上传文件的最大为10M,其他配置参数见struts.jar文件中的org.apache.struts.resources中的struts-config_1_2.dtd查看其他的参数

<controller maxFileSize="10M"/>

・struts-config_1_2.dtd中的可配置的信息

bufferSize     className   contentType forwardPattern   nputForward       locale   maxFileSize   memFileSize multipartClass   nocache pagePattern   processorClass       tempDir  

自:http://www.huomo.cn/developer/article-e2de.html
分享到:
评论

相关推荐

    java+struts+swfupload文件上传下载

    在文件上传场景下,Struts通过ActionForm接收前端提交的数据,包括文件信息,然后调用相应的业务逻辑来处理文件。Struts2提供了更先进的拦截器机制,使得文件上传的处理更加灵活和可控。 SwfUpload是一款基于Flash...

    struts1.2 + spring2.5 + hibernate3.2框架demo

    Struts1.2、Spring2.5和Hibernate3.2是经典的Java企业级开发框架组合,它们各自在应用程序的不同层次上发挥着重要作用。Struts1.2是一个MVC(Model-View-Controller)框架,主要负责处理用户界面与业务逻辑之间的...

    struts1 + hibernate + spring 实现文件上传

    2. **Struts1配置**:在Struts1的配置文件(struts-config.xml)中定义一个Action,指定处理文件上传的Form Bean和Action Class。 3. **ActionForm**:创建一个继承自Struts1的`ActionForm`类,添加`File`和`String...

    struts1+spring2.5.6+jdbc配置

    Struts1的核心组件包括ActionServlet、Action、ActionForm、ActionMapping和Tiles等,它们共同协作以实现强大的视图控制和业务逻辑分离。 Spring 2.5.6 是Spring框架的一个旧版本,尽管如此,它依然具有很高的稳定...

    struts1+jdbc+jsp+sqlserver,增删查改

    1. **Struts1框架**:理解Struts1的配置文件(struts-config.xml),包括ActionMapping、FormBean和Action的配置。掌握如何创建Action类,处理HTTP请求并调用服务层的方法。同时,学习使用Struts的拦截器...

    Struts1+Spring2+Hibernate2整合详细例子

    2. **配置Struts1**:创建struts-config.xml文件,定义Action类和对应的ActionForm,以及视图页面的跳转规则。 3. **配置Spring2**:创建applicationContext.xml文件,定义Bean的配置,包括Service层的接口和实现,...

    jsp+struts文件上传

    在本文中,我们将深入探讨如何使用JSP(JavaServer Pages)和Struts框架实现文件上传功能。这是一个在Web开发中常见的需求,特别是在处理用户提交的数据时。Struts是一个基于MVC(Model-View-Controller)设计模式的...

    spring+struts+hibernate实现文件的上传和下载

    - `struts-config.xml`:Struts 配置文件,定义了 Action 和 ActionForm 的映射。 **开发步骤** 1. 创建领域对象 `Tfile` 及其 Hibernate 映射文件,定义 `byte[] fileContent` 字段。 2. 配置 Spring 的 `...

    struts2+ibatis例子

    4. **Action类与ActionForm**:在Struts2中,Action类是业务逻辑的核心,它接收请求、处理业务并返回Result。ActionForm是Struts1中的概念,在Struts2中,Action类直接接收请求参数,简化了开发过程。 5. **Result...

    王者归来之JAVA程序开发大全:基于MYECLIPSE平台+STRUTS+HIBERNATE+SPRING主体流框架开发.pdf

    开发者需要理解Struts的配置文件、Action类、FormBean以及JSP标签,以便构建可维护、结构清晰的Web应用。 Hibernate则是一个对象关系映射(ORM)框架,它简化了数据库操作,将数据库操作与业务逻辑解耦。开发者可以...

    ssh(struts+spring+hibernate)教务管理信息系统(全部代码) 可以直接运行

    在Struts中,配置文件(struts-config.xml)定义了Action和ActionForm之间的映射,以及Action转发到的JSP页面。此外,Struts还提供了国际化、异常处理、验证等功能。 **Spring框架**: Spring是全面的后端应用程序...

    struts1+hibernate分页

    Struts1和Hibernate是两种非常重要的Java Web开发框架,它们在构建高效、可维护的Web应用程序中发挥着关键作用。Struts1是一个MVC(Model-View-Controller)框架,用于处理用户请求并管理应用程序逻辑,而Hibernate...

    struts1使用actionform实现表单验证

    Struts1是一个经典的Java Web框架,它在早期的Web应用开发中被广泛应用。ActionForm是Struts1中处理用户输入的核心组件,它负责接收、验证和封装来自表单的数据。在本文中,我们将深入探讨如何利用ActionForm实现...

    struts+spring文件上传大小限制.rar

    当Struts和Spring一起使用时,文件上传的处理通常在Action类中完成,这里需要集成Spring的`@Autowired`注解和Struts的`ActionForm`。Spring的`@RequestParam`注解可以用来获取`CommonsMultipartFile`对象。同时,...

    Struts1+mysql数据库登陆注册

    Struts1是一个经典的Java Web开发框架,由Apache软件基金会维护,它主要负责处理MVC(Model-View-Controller)架构中的Controller部分。在本项目"Struts1+mysql数据库登陆注册"中,开发者使用Struts1框架来构建一个...

    struts1+ibatis框架整合

    Struts1通过配置struts-config.xml文件来定义Action、ActionForm以及它们之间的映射关系,以此实现对请求的路由和处理。 iBatis,全称是Simple Object Persistence Mapping,即简单对象持久化映射。它的主要特点是...

    java+jsp上传文件

    接着,创建`UploadAction.java`,该类需要继承自Struts的`Action`类,并实现文件上传的核心逻辑。我们可以使用Apache Commons FileUpload库来处理文件上传,因为Java标准库不直接支持多部分文件上传。以下是一个简化...

    struts1.2+spring2.0+ibatis2.3简单新闻发布

    在Struts1中,配置文件(struts-config.xml)用于定义Action、ActionForm、结果页面等核心组件。 **Spring2.0** 提供了全面的容器服务,可以管理应用对象的生命周期和依赖关系。通过使用DI(Dependency Injection),...

    Struts+jdbc+oracle完整项目

    2. **配置文件**:Struts的配置文件(struts-config.xml)定义了Action的映射,JDBC的配置文件(如data-source.xml)包含了数据库连接信息。 3. **页面资源**:包括JSP(JavaServer Pages)文件,它们作为视图层,...

    struts1+spring+hibernate整合的jar包

    2. 配置Struts1的配置文件(struts-config.xml),定义Action和ActionForm,以及与Spring的集成配置。 3. 配置Spring的IoC容器(beans.xml),声明Action、Service、DAO以及相关bean的定义,设置依赖关系。 4. 配置...

Global site tag (gtag.js) - Google Analytics