使用Webwork 2.2.4实现文件上传
来源:互联网 发布:淘宝如何投诉假冒商品 编辑:程序博客网 时间:2024/05/29 04:55
webwork.properties相关配置如下:
webwork.locale=zh_CN
webwork.multipart.parser=jakarta
webwork.i18n.encoding = GBK
webwork.multipart.parser=jakarta
webwork.i18n.encoding = GBK
上传页面:
<%@ 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>
<form action="upload.dhtml" method="post" enctype="multipart/form-data">
<input type="file" name="doc"/>
<input type="file" name="doc"/>
<input type="file" name="doc"/>
<input type="submit" value="submit"/>
</form>
</body>
</html>
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>
<form action="upload.dhtml" method="post" enctype="multipart/form-data">
<input type="file" name="doc"/>
<input type="file" name="doc"/>
<input type="file" name="doc"/>
<input type="submit" value="submit"/>
</form>
</body>
</html>
Action:
package ch4.example1;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import javax.servlet.http.HttpServletRequest;
import com.opensymphony.webwork.interceptor.ServletRequestAware;
import com.opensymphony.xwork.ActionSupport;
/**
* @author $author
*/
public class Upload extends ActionSupport implements ServletRequestAware{
HttpServletRequest request=null;
File doc[];
String docContentType[];
String docFileName[];
public String execute() throws Exception
{
String uploadPath=request.getSession().getServletContext().getRealPath("//WEB-INF//upload//");
for(int i=0;i<doc.length;i++){
if(doc[i]!=null){
//此处重命名文件可以采用uuid,次出仅在每个文件名前多加了变量i
FileOutputStream outputStream = new FileOutputStream(uploadPath+File.separator+i+docFileName[i]);
FileInputStream fileIn = new FileInputStream(doc[i]);
byte[] buffer = new byte[1024];
int len;
while ((len = fileIn.read(buffer)) > 0) {
outputStream.write(buffer, 0, len);
}
fileIn.close();
outputStream.close();
System.out.println(docFileName[i]+" upload success");
}
}
return NONE;
}
public void setServletRequest(HttpServletRequest request) {
this.request=request;
}
public File[] getDoc() {
return doc;
}
public void setDoc(File[] doc) {
this.doc = doc;
}
public String[] getDocContentType() {
return docContentType;
}
public void setDocContentType(String[] docContentType) {
this.docContentType = docContentType;
}
public String[] getDocFileName() {
return docFileName;
}
public void setDocFileName(String[] docFileName) {
this.docFileName = docFileName;
}
}
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import javax.servlet.http.HttpServletRequest;
import com.opensymphony.webwork.interceptor.ServletRequestAware;
import com.opensymphony.xwork.ActionSupport;
/**
* @author $author
*/
public class Upload extends ActionSupport implements ServletRequestAware{
HttpServletRequest request=null;
File doc[];
String docContentType[];
String docFileName[];
public String execute() throws Exception
{
String uploadPath=request.getSession().getServletContext().getRealPath("//WEB-INF//upload//");
for(int i=0;i<doc.length;i++){
if(doc[i]!=null){
//此处重命名文件可以采用uuid,次出仅在每个文件名前多加了变量i
FileOutputStream outputStream = new FileOutputStream(uploadPath+File.separator+i+docFileName[i]);
FileInputStream fileIn = new FileInputStream(doc[i]);
byte[] buffer = new byte[1024];
int len;
while ((len = fileIn.read(buffer)) > 0) {
outputStream.write(buffer, 0, len);
}
fileIn.close();
outputStream.close();
System.out.println(docFileName[i]+" upload success");
}
}
return NONE;
}
public void setServletRequest(HttpServletRequest request) {
this.request=request;
}
public File[] getDoc() {
return doc;
}
public void setDoc(File[] doc) {
this.doc = doc;
}
public String[] getDocContentType() {
return docContentType;
}
public void setDocContentType(String[] docContentType) {
this.docContentType = docContentType;
}
public String[] getDocFileName() {
return docFileName;
}
public void setDocFileName(String[] docFileName) {
this.docFileName = docFileName;
}
}
为了使用文件上传的特性,必须为所选择的多部份解析器(Multipartparser)包含下确的JAR文件,对于jakarta,相应的jar文件文件则是commons-fileupload.jar
webwork还有一种上传方法,就是将获得req转换成MultiPartRequestWrapper,不使用interceptor 然后进行上传
MultiPartRequestWrapper wrapper=(MultiPartRequestWrapper)request;
try{
File doc=wrapper.getFiles("doc")[0];
}
- 使用Webwork 2.2.4实现文件上传
- 使用Webwork 2.2.4实现文件上传
- WebWork实现文件上传
- webwork实现文件上传的功能
- WebWork总结--文件上传
- Webwork文件上传
- Webwork文件上传
- webwork文件上传总结
- webwork文件上传
- webwork 文件上传
- WebWork之--使用fileUpload interceptor实现文件上传[基本配置+注意事项]
- webwork的多文件上传
- webwork中文件上传实现
- webwork中文件上传实现
- 使用Webwork实现IOC
- 深入分析webwork中的文件上传机制
- WebWork 空 文件 上传问题 /文件无法上传
- WebWork中实现IoC(4)
- 男人最帅的42个瞬间!
- web页面显示时间
- MFC中DDB (DEVICE-DEPENDENT BITMAP)详解
- 介绍.NET Framework 3.0新特性
- .Net 下安装、调试的常见问题与错误!!!
- 使用Webwork 2.2.4实现文件上传
- Spring Applicationcontext的国际化支持
- 五种常见的PHP设计模式
- 使用FactoryBean接口简化工厂Bean开发
- Intel CPU命名规则
- 酒后
- 在Eclipse状态栏上增加JVM内存用量指示器
- Spring占位符PropertyOverrideConfigurer的使用
- 别人博客上的:“西方心理学流派简介”,总结的挺好,保存下。