设计REST风格的MVC框架 - 编程入门网
response = response;
actionContextThreadLocal.set(ctx);
}
static void removeActionContext() {
actionContextThreadLocal.remove();
}
}
设计REST风格的MVC框架(12)时间:2011-06-01 IBM 廖雪峰在 Dispatcher 的 handleExecution() 方法中,初始化 ActionContext,并 在 finally 中移除所有已绑定变量,代码见清单 27。 清单 27. 初始化 ActionContext
这样,在 @Mapping 方法内部,可以随时获得需要的 Request、Response、 Session 和 ServletContext 对象。 处理文件上传 Servlet API 本身并没有提供对文件上传的支持,要处理文件上传,我们需 要使用 Commons FileUpload 之类的第三方扩展包。考虑到 Commons FileUpload 是使用最广泛的文件上传包,我们希望能集成 Commons FileUpload ,但是,不要暴露 Commons FileUpload 的任何 API 给 MVC 的客户端,客户端 应该可以直接从一个普通的 HttpServletRequest 对象中获取上传文件。 要让 MVC 客户端直接使用 HttpServletRequest,我们可以用自定义的 MultipartHttpServletRequest 替换原始的 HttpServletRequest,这样,客户 端代码可以通过 instanceof 判断是否是一个 Multipart 格式的 Request,如 果是,就强制转型为 MultipartHttpServletRequest,然后,获取上传的文件流 。 核心思想是从 HttpServletRequestWrapper 派生 MultipartHttpServletRequest,这样,MultipartHttpServletRequest 具有 HttpServletRequest 接口。MultipartHttpServletRequest 的定义如清单 28 所示。 清单 28. 定义 MultipartHttpServletRequest
...解析Multipart ...
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |