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
分享到:
相关推荐
在文件上传场景下,Struts通过ActionForm接收前端提交的数据,包括文件信息,然后调用相应的业务逻辑来处理文件。Struts2提供了更先进的拦截器机制,使得文件上传的处理更加灵活和可控。 SwfUpload是一款基于Flash...
Struts1.2、Spring2.5和Hibernate3.2是经典的Java企业级开发框架组合,它们各自在应用程序的不同层次上发挥着重要作用。Struts1.2是一个MVC(Model-View-Controller)框架,主要负责处理用户界面与业务逻辑之间的...
2. **Struts1配置**:在Struts1的配置文件(struts-config.xml)中定义一个Action,指定处理文件上传的Form Bean和Action Class。 3. **ActionForm**:创建一个继承自Struts1的`ActionForm`类,添加`File`和`String...
Struts1的核心组件包括ActionServlet、Action、ActionForm、ActionMapping和Tiles等,它们共同协作以实现强大的视图控制和业务逻辑分离。 Spring 2.5.6 是Spring框架的一个旧版本,尽管如此,它依然具有很高的稳定...
1. **Struts1框架**:理解Struts1的配置文件(struts-config.xml),包括ActionMapping、FormBean和Action的配置。掌握如何创建Action类,处理HTTP请求并调用服务层的方法。同时,学习使用Struts的拦截器...
2. **配置Struts1**:创建struts-config.xml文件,定义Action类和对应的ActionForm,以及视图页面的跳转规则。 3. **配置Spring2**:创建applicationContext.xml文件,定义Bean的配置,包括Service层的接口和实现,...
在本文中,我们将深入探讨如何使用JSP(JavaServer Pages)和Struts框架实现文件上传功能。这是一个在Web开发中常见的需求,特别是在处理用户提交的数据时。Struts是一个基于MVC(Model-View-Controller)设计模式的...
- `struts-config.xml`:Struts 配置文件,定义了 Action 和 ActionForm 的映射。 **开发步骤** 1. 创建领域对象 `Tfile` 及其 Hibernate 映射文件,定义 `byte[] fileContent` 字段。 2. 配置 Spring 的 `...
4. **Action类与ActionForm**:在Struts2中,Action类是业务逻辑的核心,它接收请求、处理业务并返回Result。ActionForm是Struts1中的概念,在Struts2中,Action类直接接收请求参数,简化了开发过程。 5. **Result...
开发者需要理解Struts的配置文件、Action类、FormBean以及JSP标签,以便构建可维护、结构清晰的Web应用。 Hibernate则是一个对象关系映射(ORM)框架,它简化了数据库操作,将数据库操作与业务逻辑解耦。开发者可以...
在Struts中,配置文件(struts-config.xml)定义了Action和ActionForm之间的映射,以及Action转发到的JSP页面。此外,Struts还提供了国际化、异常处理、验证等功能。 **Spring框架**: Spring是全面的后端应用程序...
Struts1和Hibernate是两种非常重要的Java Web开发框架,它们在构建高效、可维护的Web应用程序中发挥着关键作用。Struts1是一个MVC(Model-View-Controller)框架,用于处理用户请求并管理应用程序逻辑,而Hibernate...
Struts1是一个经典的Java Web框架,它在早期的Web应用开发中被广泛应用。ActionForm是Struts1中处理用户输入的核心组件,它负责接收、验证和封装来自表单的数据。在本文中,我们将深入探讨如何利用ActionForm实现...
当Struts和Spring一起使用时,文件上传的处理通常在Action类中完成,这里需要集成Spring的`@Autowired`注解和Struts的`ActionForm`。Spring的`@RequestParam`注解可以用来获取`CommonsMultipartFile`对象。同时,...
Struts1是一个经典的Java Web开发框架,由Apache软件基金会维护,它主要负责处理MVC(Model-View-Controller)架构中的Controller部分。在本项目"Struts1+mysql数据库登陆注册"中,开发者使用Struts1框架来构建一个...
Struts1通过配置struts-config.xml文件来定义Action、ActionForm以及它们之间的映射关系,以此实现对请求的路由和处理。 iBatis,全称是Simple Object Persistence Mapping,即简单对象持久化映射。它的主要特点是...
接着,创建`UploadAction.java`,该类需要继承自Struts的`Action`类,并实现文件上传的核心逻辑。我们可以使用Apache Commons FileUpload库来处理文件上传,因为Java标准库不直接支持多部分文件上传。以下是一个简化...
在Struts1中,配置文件(struts-config.xml)用于定义Action、ActionForm、结果页面等核心组件。 **Spring2.0** 提供了全面的容器服务,可以管理应用对象的生命周期和依赖关系。通过使用DI(Dependency Injection),...
2. **配置文件**:Struts的配置文件(struts-config.xml)定义了Action的映射,JDBC的配置文件(如data-source.xml)包含了数据库连接信息。 3. **页面资源**:包括JSP(JavaServer Pages)文件,它们作为视图层,...
2. 配置Struts1的配置文件(struts-config.xml),定义Action和ActionForm,以及与Spring的集成配置。 3. 配置Spring的IoC容器(beans.xml),声明Action、Service、DAO以及相关bean的定义,设置依赖关系。 4. 配置...