`
wzw00001
  • 浏览: 89507 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

webwork学习3

阅读更多
webwork学习3
SESSION的使用及文件上传
在WebWork2中使用SESSION是很简单的事情,导入类“com.opensymphony.webwork.ServletActionContext”之后,可以这样操作SESSION:
Map session = (Map)ServletActionContext.getContext().getSession();
session.put("name", "tom");
session.get("name");
之后在视图(这里指jsp文件)用“<ww:property value="#session.name" />”的方式得到session的值
(注:可用“ServletActionContext.getResponse()”方法得 “javax.servlet.http.HttpservletResponse”、 “ServletActionContext.getRequest()”方法得 “javax.servlet.http.HttpServletRequest”,用来对cookie进行写入及读取操作,这样就可直接用底层的 Servlet一些类了)

在WebWork2中上传文件也是很简单的事情
首先,在"WEB-INF/classes/"目录下建立文件“webwork.properties”,内容如下:
----------------------

webwork.i18n.encoding=gbk
webwork.locale=zh_cn
webwork.multipart.saveDir=/tmp
webwork.multipart.maxSize=5242880
webwork.multipart.parser=com.opensymphony.webwork.dispatcher.multipart.
PellMultiPartRequest


----------------------

在Action中可以这样写:

import com.opensymphony.webwork.dispatcher.multipart.MultiPartRequestWrapper;
import com.opensymphony.xwork.ActionSupport;
import com.opensymphony.webwork.ServletActionContext;
import java.io.File;

public void execute() throws Exception {
MultiPartRequestWrapper wrapper = (MultiPartRequestWrapper)ServletActionContext.getRequest();
File file = wrapper.getFile("uf");
if (file == null) {
return ERROR;
}
this.setFileName(file.getName());
file.renameTo(new File("/tmp/" + file.getName()));
return SUCCESS;
}


这样就把文件(“表单中文件字段的名称为:uf”)上传并保存在了“/tmp/”目录下。

MultiPartRequestWrapper类的API可参考:http://www.opensymphony.com/webwork/api/

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics