我的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+ExtJS2实现文异步文件上传,没法上传图片无法看到效果,直接上源码吧。
这是一个用struts2实现文件上传的例子,没有struts2的配置文件,可以上传到服务器上,
使用Struts2和Hibernate实现简单的图片上传 上传到tomcat服务器
Android文件上传,服务端struts2实现。可运行,代码注释全。 另参考博文 http://blog.csdn.net/qq964166471/article/details/19073761
struts2+jquery+ajax实现了文件的异步上传,的MyEclipse编写的简单项目
介绍kindeditor环境部署已经如何进行图片上传。整合struts2以及页面bootstrap展现来进行 详细介绍。kindeditor版本为4.1.10
NULL 博文链接:https://numberrbb.iteye.com/blog/1090879
NULL 博文链接:https://wangxr66.iteye.com/blog/1489244
使用struts2框架进行文件的上传并限制文件的大小与类型,使用struts2框架实现文件下载
自己实现的ckeditor文件上传,上网找了各种资料,对代码做了极大的删减,通俗易懂,可作为CMS项目的参考,对浏览器的兼容性很好,支持已上传图片的缩略图展示效果,使用eclipse做出来的,很值得学习和参考!
相关知识struts2,fileupload等,实现图片上传并生成缩略图。单文件上传,图片展示直接使用jQuery FancyBox,效果不错,值得初学者研究学习。
使用struts 2 和ajaxFileUpload组件实现图片上传预览,直接在myeclipse和tomcat环境下就可以运行,同时附带了相应的实现说明。
主要是通过struts实现用于文件和图片的上传
能够指定路径,指定文件类型上传到服务器或本机
uploadify是来自国外的一款优秀的jQuery上传插件,主要功能是批量上传文件,带进度显示。 此Demo以HTML5 Version版本为例介绍uploadifive的使用,结合Struts2
uploadify是来自国外的一款优秀的jQuery上传插件,主要功能是批量上传文件,带进度显示。
这是用struts2实现的文件上传与下载,这是全部代码
本demo实现了struts2批量上传文件,利用html5进行批量选择,然后利用struts2进行后台数据的上传并保存到数据库,适合商品图片的上传,需要的同学可以下载。
自己通过ajaxfileupload.js结合struts2实现图片上传文件,并通过jcrop和java图像处理功能实现了图片剪切的功能。该功能效果和新浪QQ的头像上传功能效果一样,在ie下可以正常使用 火狐下更换图片时效果样式会走形