标签:struts2中耦合访问servlet- 耦合访问servlet- api struts2中耦合servlet- a
struts2中耦合访问servlet- API有三种,推荐使用第二种。当然,尽量用解耦合的方式访问,解耦合方式访问内容在上一篇文章中有解释,需要者请查看。
方法一:.[一般推荐使用](只能获得request,而response则得不到)
Struts2提供了一个ActionContext类,Struts2中的Action可以通过它进行访问。
其方法有:get(),getApplication(),getContext(),getParameters(),getSession(),setApplication(),setSession()
public class LoginAction implements Action
{
private String username;
private String password;
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
public String execute() throws Exception
{
//获取静态方法,获取系统的ActionContext实例
ActionContext ctx = ActionContext.getContext();
//获取servletContext里的counter属性
Integer counter = (Integer)ctx.getApplication().get("counter");
if (counter == null)
{
counter = 1;
}
else
{
counter = counter + 1;
}
//将增加1后的counter值设置成counter属性
ctx.getApplication().put("counter" , counter);
ctx.getSession().put("user" , getUsername());
if (getUsername().equals("scott")&& getPassword().equals("tiger") )
{
//直接设置HttpServletRequest属性
ctx.put("tip" , "服务器提示:您已经成功的登陆");
return SUCCESS;