Struts2复习要点之一--Action类相关问题

1.Struts2搭建环境的步骤有哪些?

复制jar包到对应的目录下面
配置web.xml
代码目录下配置struts.xml
编写相关的action类和方法

2.Struts2中什么是Action类?

普通的 Java 类, 可以有属性和方法, 同时必须遵守一些规则

  • 属性的名字必须遵守与 JavaBeans 属性名相同的命名规则. 属性的类型可以是任意类型. 从字符串到非字符串(基本数据库类型)之间的数据转换可以自动发生
  • 必须有一个不带参的构造器
  • 至少有一个供 struts 在执行这个 action 时调用的方法
  • 同一个 Action 类可以包含多个 action 方法
  • Struts2 会为每一个 HTTP 请求创建一个新的 Action 实例

3.Struts2中访问 web 资源的方式有哪些

通过 ActionContext 访问 Web 资源
与 Servlet API 耦合的访问方式

4.如何通过 ActionContext 访问 Web 资源,请具体回忆。

ActionContext 是 Action 执行的上下文对象, 在 ActionContext 中保存了 Action 执行所需要的所有对象, 包括 parameters, request, session, application 等.

  • 获取 HttpSession 对应的 Map 对象:
    public Map getSession()
  • 获取 ServletContext 对应的 Map 对象:
    public Map getApplication()
  • 获取请求参数对应的 Map 对象:
    public Map getParameters()
  • 获取 HttpServletRequest 对应的 Map 对象:
    public Object get(Object key): ActionContext 类中没有提供类似 getRequest() 这样的方法来获取 HttpServletRequest 对应的 Map 对象. 要得到 HttpServletRequest 对应的 Map 对象, 可以通过为 get() 方法传递 “request” 参数实现

5.如何通过 Aware 接口访问 Web 资源,请具体回忆。

通过接口实现。接口在包org.apache.struts2.interceptor下面。
ApplicatioinAware;
ParameterAware;
RequestAware;
SessionAware

6.ActionContext 访问 Web 资源和Aware 接口访问 Web 资源如何选择?

若一个 Action 类中有多个 action 方法, 且多个方法都需要使用域对象的 Map 或 parameters, 则建议使用Aware 接口的方式。

7.选择使用ServletActionContext和页面实现交互,请具体回忆?

直接获取 HttpServletRequest 对象:

  • ServletActionContext.getRequest()
    直接获取 HttpSession 对象
  • ServletActionContext.getRequest().getSession()
    直接获取 ServletContext 对象
  • ServletActionContext.getServletContext()

8.选择使用ServletRequestAware, ServletContextAware 等接口的方式和页面实现交互,请具体回忆?

ServletRequestAware
ServletContextAware
ServletResponseAware

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值