/*
* 第三种方式:
* 不是获取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-->
分享到:
相关推荐
struts2学习笔记总结
struts2学习笔记,非本人所写,但有学习的价值,总结的很好,分享一个!
Struts2学习笔记,介绍了struts2的基础部分
这是学习struts2时记得重点笔记,包括了一些原理,ognl语句的编写,以及如何设置拦截器等等一些基本知识,起到复习和巩固的作用
struts2学习笔记struts2学习笔记struts2学习笔记
struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换
本人学习struts2的笔记,希望大家可以多多学习以后共同交流
1. struts2框架的引入 1)把struts2的相关jar包导入到项目中去 2)把struts2框架的配置文件struts.xml复制粘贴到项目中的src下面(同时也可以把log4j.properties放到src下) 在这里我们主要是要的这个struts.xml文件...
namespace :对应与项目名称后面的"/"(例如Struts2_0100_Introduction后面的"/") (http://localhost:8080/Struts2_0100_Introduction/) 四、 标签 是用来解决重名的问题,例如当系统的前台和后台都有一个action...
structs2很详细的学习笔记,structs2的建造,工作原理,例子,逐步讲解,纯文字的
struts2四天的学习笔记。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
个人收藏,纯属备份作用,做个记录,方便需要时候查看
Struts2 学习笔记.doc,Struts2 学习笔记.doc
struts2学习笔记三
struts2学习笔记二