Struts2(18):Struts2深入探索续2

Struts2与Servlet是低耦合的,这可使项目不依赖于具体的容器。如可方便做单元测试。

1,如需在struts2中使用servlet,可通过com.opensymphony.xwork2.ActionContext类来调用。

此类中有很多方法,可以取得session,application等参数。

2,也可以通过实现ServletRequestAware接口来实现:

首先定义一个变量request,在实现接口的setServletRequest方法中,为此变量赋值(由框架实现),这样就可以在此类中使用request了。

package com.test.action;

import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.interceptor.ServletRequestAware;

public class RegisterAction3 implements ServletRequestAware {
	private HttpServletRequest request;

	public void setServletRequest(HttpServletRequest request) {
		this.request = request;
	}
}

 struts2相应的还提供了ServletResponseAware,ServletContextAware。

3,还可以使用org.apache.struts2.ServletActionContext类

这个类中提供了很多静态方法,可以取得request,response等。

推荐使用第一种方法,耦合度最底,最不推荐第二种方法,繁琐。

 

 

4,通过JSP页面调用指定action中的方法,除了前面章节介绍的在struts.xml文件中配置外,还可以在form中配置指定,如:

<s:form action ="register2!someMethod.action">

 someMethod即对应的是register2这个action中的方法。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值