Struts2-3 Struts2访问Web元素_第1页
Struts2-3 Struts2访问Web元素_第2页
Struts2-3 Struts2访问Web元素_第3页
Struts2-3 Struts2访问Web元素_第4页
Struts2-3 Struts2访问Web元素_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、J2EE企业级应用开发Struts2 框架任务3 Struts2的访问Web元素应用学习目标 知识目标: 掌握通过ActionContext访问Servlet API 了解通过*Aware接口访问Servlet API 能力目标: 能在Action中获取请求、响应、会话对象等 能使用合适的对象在Action和JSP页面间进行数据的传输本任务主要内容 Action中访问ServletAPIp 通过ActionContext访问p 通过ServletActionContext访问p 通过实现ServletXXXAware接口,访问XXX对象上一节回顾 Struts2框架的数据传输 属性驱动 Act

2、ion中定义属性及相应的set和get方法 JSP页面中表单元素的名字同Action中属性名 领域对象 定义实体类bean Action中定义实体对象及对象的set和get方法 JSP页面中表单元素的名字为:对象名.属性名 模型驱动 定义实体类bean Action实现ModelDriven接口,声明并创建体类对象,实现getModel()方法 JSP页面中表单元素的名字同Action中属性名 一、在Action中访问Servlet Struts2中Action没有和任何Servlet耦合,框架灵活,方便测试。 Struts2对HttpServletReqeust、HttpSession、Se

3、rvletContext等进行了封装,构造了Map对象来替换,进行数据的保存与读取。 解决方法 Struts2中提供一个ActionContex类表示当前Action的上下文对象,通过该类可以访问Servlet中常用类和接口 常用方法 getContext() 获取ActionContext实例,静态方法 get(Object key) 相当与调用request的getAttribute(String name) put(Object key,Object value) 相当与request 的setAttribute(String name,Object o) Map getSession(

4、) 返回一个Map对象,模拟了Session对象 Map getApplication() 返回一个Map对象。模拟了应用的ServletContext对象 Map getParameters() 返回一个Map,类似与调用request对象的getParameterMap方法获取request对象通过ActionContex在Action中访问request对象 获取ActionContext对象ActionContext actx=ActionContex.getContext(); 模拟实现request对象的数据共享不需要再获取其他对象,直接存放在actx中保存数据put(Object

5、 key,Object value)获取数据在Action中 get(Object key)在JSP中 $requestScope.key的名字 获取Session会话对象通过ActionContex在Action中访问Session对象 获取ActionContex对象ActionContex actx=ActionContex.getContext(); 获取会话对象Map map=ActionContex.getContext().getSession();返回的是Map类型保存数据map.put(“名字”,值);获取数据在Action中 map.get(“名字”);在JSP中 $ses

6、sionScope.名字获取全局对象通过ActionContex在Action中访问Application对象 获取ActionContex对象ActionContex actx=ActionContex.getContext(); 获取全局对象Map map=ActionContex.getContext().getApplication();返回的是Map类型保存数据map.put(“名字”,值);获取数据在Action中 map.get(“名字”);在JSP中 $applicationScope.名字其他方式访问ServletAPI Action一般直接使用set和get和页面进行数据交

7、互,一般不用request和response 需要使用 可以借助于ServletActionContext类 HttpServletRequest request=ServletActionContext.getRequest(); /获取request对象 HttpServletResponse response=ServletActionContext.getResponse(); /获取response对象 HttpSession session=request.getSession(); /获取session对象 ServletContext context=ServletAction

8、Context.getServletContext(); /获取上下文对象注意:一般不用 可以实现*Aware接口名接口名获取获取Servlet API的方法的方法ApplicationAwarevoid setApplication(Map application)CookiesAwarevoid setCookiesMap(Map cookies)RequestAwarevoid setRequest (Map request)ServletRequestAwarevoid setServletRequest(HttpServletRequest request)ServletResponseAwarevoid setServletResponse(HttpServletResponse response)SessionAwarevoid setSession(Map session)总结 通过ActionContext访问实现数据共享 获取ActionContext容器 通过容器的不同方法获取不同用途的对象(Map对象

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论