我的JSP页面代码如下:
<body>
<form name="myform" method="post" action="/s2/user/fileAction.action" enctype="multipart/form-data">
<table align="center">
<tr>
<td colspan="2">文件上传</td>
</tr>
<tr>
<td>上传的文件:</td>
<td><input type="file" name="myfile"/></td>
</tr>
<tr>
<td>用户编号:</td>
<td><input type="text" name="userId"/></td>
</tr>
<tr>
<td>用户姓名:</td>
<td><input type="text" name="userName"/></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="上传"/></td>
</tr>
</table>
</form>
</body>
我的Action如下:
package com.xll.util;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import com.opensymphony.xwork2.ActionSupport;
public class FileAction extends ActionSupport{
public File myfile;
public String myfileFileName;
public String myfileContentType;
public String userId;
public String userName;
public String execute(){
InputStream in = null;
OutputStream out = null;
try {
in = new FileInputStream(myfile);
out = new FileOutputStream("d:/temp/"+myfileFileName);
int str = -1;
while((str=in.read()) != -1){
out.write(str);
//str = in.read();
}
} catch (Exception e) {
e.printStackTrace();
} finally{
try {
out.flush();
in.close();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
System.out.println("userId="+userId+",userName="+userName);
System.out.println("myfileFileName="+myfileFileName+",myfileContentType="+myfileContentType);
return this.SUCCESS;
}
}
struts.xml中的配置:
<action name="fileAction" class="com.xll.util.FileAction">
<result name="success">/index.jsp</result>
</action>
其中的编码设置有:
struts.xml中的
<constant name="struts.i18n.encoding" value="gb2312"></constant>
页面编码统一为gbk 上传后的文件未出现乱码!
分享到:
相关推荐
本篇文章将详细探讨如何在Struts2框架下实现文件的上传与下载。 首先,我们需要了解Struts2中的文件上传机制。Struts2提供了`FileUploadInterceptor`拦截器来处理文件上传请求。在处理文件上传时,开发者需要在...
本项目实现了使用Struts2进行文件批量上传的功能,这涉及到几个关键的技术点,包括文件上传组件的选择、前端表单设计、后端处理逻辑以及存储策略。 1. **文件上传组件**:在Struts2中,我们通常使用`Commons ...
Struts2是一个强大的Java EE应用程序框架,用于构建MVC(模型-视图-控制器)架构的Web应用。...这是一个基础的图片上传实现,实际项目中可能还需要考虑错误处理、文件大小限制、文件类型检查等更多细节。
在Struts2中,文件上传主要依赖于`org.apache.struts2.components.FileUpload`组件,这个组件是基于Commons FileUpload库实现的,它能够处理multipart/form-data类型的HTTP请求,这是文件上传所必需的格式。...
以上就是SSH框架中使用Struts2和Hibernate实现图片上传的主要知识点,涵盖了Web请求处理、ORM框架、文件上传、数据库操作以及前端交互等多个方面。实际项目开发时,还需要结合具体的业务需求和安全规范进行详细设计...
在Struts2中实现文件和图片上传是一项常见的需求,尤其在处理用户提交的表单数据时,比如上传个人头像或者上传文档附件等。本篇文章将详细介绍如何在Struts2中实现这一功能。 首先,我们需要在Struts2的配置文件...
在Struts2中,实现多文件上传功能是常见的需求,尤其在处理用户需要上传多个文件的场景下,如上传图片、文档等。本篇文章将详细介绍如何使用Struts2来实现这一功能。 首先,我们需要理解Struts2的上传机制。在...
Struts2提供了内置的支持来处理文件上传请求,使得开发人员能够方便地实现这一功能。 在Struts2中,文件上传主要依赖于Apache的Commons FileUpload库,这是一个专门用于处理HTTP多部分请求(multipart/form-data)...
本教程将探讨如何通过集成Struts2框架在Java后端实现Android客户端的图片上传功能。首先,我们需要了解Android客户端的文件操作以及如何使用HTTP请求将数据发送到服务器。 在Android客户端,我们通常使用`Intent`来...
在Struts2中实现文件上传,可以帮助开发者处理用户从浏览器端上传的文件,例如图片、文档等。以下是关于Struts2文件上传的详细知识点: 1. **依赖库**: 实现文件上传,首先需要引入Struts2的上传插件,即`struts2...
网上有些这样的例子,但是下了几个都没有跑起来,哎,希望那些发文章的人要发就发全的,别发个半生不熟的。... 现在自己整理了一个Struts2+ExtJS2实现文异步文件上传,没法上传图片无法看到效果,直接上源码吧。
在这个“Struts2+Hibernate实现文件上传”的项目中,我们将探讨如何结合这两个框架来实现在Web应用中上传图片并存储到数据库的过程。 首先,让我们从Struts2的角度来看。Struts2提供了一种灵活的MVC(模型-视图-...
本文将详细讲解如何利用Struts2实现图片上传并进行预览。 一、Struts2文件上传基础 1. 添加依赖:在项目中,你需要添加Struts2的核心库和文件上传插件。Struts2的FileUpload插件提供了处理文件上传的功能。确保`...
在Struts2中,文件上传是常见的功能之一,尤其在处理用户提交的表单数据时,如上传图片、文档等。在本项目中,"struts2多文件的上传"实现了用户一次性上传多个文件的能力。 要理解这个功能,首先我们需要了解Struts...
在Struts2的配置文件中,我们可以定义这些规则,例如限制上传文件的大小,只接受特定类型的文件(如图片、文档等)。此外,我们还需要关注安全问题,防止恶意文件上传。 文件上传的实现通常包括以下几个步骤: 1. ...
标题与描述概述的知识点主要集中在Struts2框架中的文件与...以上就是Struts2框架中文件与图片上传功能的详细解析,通过遵循上述步骤和注意事项,开发者可以有效地实现文件上传功能,提升应用程序的实用性和用户体验。
在Struts2中,实现文件和图片上传相对直观,这主要得益于其强大的Action类和拦截器机制。 首先,我们需要在Struts2配置文件(struts.xml)中定义一个处理文件上传的Action。这个Action通常会有一个或多个成员变量,...
在这个"struts1实现图片上传"的实践中,我们将深入探讨如何使用Struts1来处理图片上传功能,包括图片预览。 首先,我们需要在Struts1的配置文件`struts-config.xml`中定义一个Action,这个Action将处理图片上传的...
在Struts2中实现文件上传是一项常见的任务,尤其在处理用户提交的表单数据时,比如上传图片、文档或其他类型的数据。这篇博文主要探讨了如何在Struts2框架下实现简单的文件上传功能。 首先,我们需要了解Struts2中...
使用Struts框架实现图片上传功能涉及多个层面的技术细节,包括前端表单设计、后端Action处理以及中间的配置文件设置。通过本文的介绍,相信读者对这一过程有了更深入的理解。在实际开发中,还需要考虑到安全性问题,...