Struts2学习笔记6(2)
/*
?*?第三种方式:
?*?不是获取map的request?session?application
?*?这是与容器绑定servlet的方式,非Ioc的,需要在execute方法中初始化
?*?这里关注一个类ServletActionContext
?*/
//public?class?LoginAction?extends?ActionSupport?{
// private?String?username;
//
// private?String?password;
//
// HttpServletRequest?request;
// HttpSession?session;
// ServletContext?application;
//
// public?String?getUsername()?{
// return?username;
// }
//
// public?void?setUsername(String?username)?{
// this.username?=?username;
// }
//
// public?String?getPassword()?{
// return?password;
// }
//
// public?void?setPassword(String?password)?{
// this.password?=?password;
// }
//
// public?String?execute()?{
// if?(username.trim().equals("admin")?&&?password.equals("1111"))?{
//
// request?=?ServletActionContext.getRequest();
// session?=?request.getSession();
// application?=?ServletActionContext.getServletContext();
//
// request.setAttribute("req",?"request属性");
// session.setAttribute("sess",?"session属性");
// application.setAttribute("app",?"application属性");
// return?"success";
// }?else?{
// return?"fail";
// }
// }
//}
/*
?*?第四种方式:IOC
?*?不是获取map的request?session?application
?*?这是与容器绑定servlet的方式,Ioc的,不需要在execute方法中初始化
?*?这里要实现两个接口ServletRequestAware,ServletContextAware
?*/
public?class?LoginAction?extends?ActionSupport?implements?ServletRequestAware,ServletContextAware{
private?String?username;
private?String?password;
HttpServletRequest?request;
HttpSession?session;
ServletContext?application;
public?String?getUsername()?{
return?username;
}
public?void?setUsername(String?username)?{
this.username?=?username;
}
public?String?getPassword()?{
return?password;
}
public?void?setPassword(String?password)?{
this.password?=?password;
}
public?String?execute()?{
if?(username.trim().equals("admin")?&&?password.equals("1111"))?{
session?=?request.getSession();
request.setAttribute("req",?"request属性");
session.setAttribute("sess",?"session属性");
application.setAttribute("app",?"application属性");
return?"success";
}?else?{
return?"fail";
}
}
public?void?setServletRequest(HttpServletRequest?arg0)?{
this.request?=?arg0;
}
public?void?setServletContext(ServletContext?arg0)?{
this.application?=?arg0;
}
}
前台:
??<h1>""登陆成功</h1>
??普通属性接收:
??username:<s:property?value="username"?/><br>
??password:<s:property?value="password"?/><br>
??request属性接收:${requestScope.request.req}-----------<s:property?value="#request.req"/><br>
??session属性接收<s:property?value="#session.sess"/><br>
??application属性接收<s:property?value="#application.app"/><br>
??返回<a?href="index.action">主页</a>
<!--EndFragment-->