Struts2系列:(35)request、session、application和ognl
2016-07-28 09:09
369 查看
在Action当中,获取request、session和application的方法如下:
在JSP页面读取,相关request、session和application数据的方法如下:
public String findEmpById() { int id = 6; Employee emp = employeeService.findById(id); Employee emp1 = employeeService.findById(1); Employee emp2 = employeeService.findById(2); Employee emp3 = employeeService.findById(3); Employee emp4 = employeeService.findById(4); Employee emp5 = employeeService.findById(5); Employee emp6 = employeeService.findById(6); ActionContext context = ActionContext.getContext(); //存储到ValueStack上 ValueStack valueStack = context.getValueStack(); valueStack.push(emp); //存储到request Map上 Map<String, Object> requestMap = (Map<String, Object>) context.get("request"); requestMap.put("requestMap_emp", emp1); //存储到HttpServletRequest上 HttpServletRequest request = (HttpServletRequest)context.get(org.apache.struts2.StrutsStatics.HTTP_REQUEST); request.setAttribute("request_emp", emp2); //存储到session Map上 Map<String, Object> sessionMap = context.getSession(); Map<String, Object> sessionMap2 = (Map<String, Object>) context.get("session"); System.out.println("sessionMap: " + ( sessionMap == sessionMap2));//结果为true sessionMap.put("sessionMap_emp", emp3); //存储到HttpSession上 HttpSession session = request.getSession(); session.setAttribute("session_emp", emp4); //存储到application Map上 Map<String, Object> applicationMap = (Map<String, Object>) context.get(ActionContext.APPLICATION); Map<String, Object> applicationMap2 = (Map<String, Object>) context.get("application"); System.out.println("applicationMap: " + (applicationMap == applicationMap2)); //结果为true applicationMap.put("applicationMap_emp", emp5); //存储到ServletContext上 ServletContext application = (ServletContext) context.get(org.apache.struts2.StrutsStatics.SERVLET_CONTEXT); application.setAttribute("application_emp", emp6); String actionName = (String) context.get(ActionContext.ACTION_NAME); System.out.println(actionName); return Action.SUCCESS; }
在JSP页面读取,相关request、session和application数据的方法如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@taglib uri="/struts-tags" prefix="s" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> </head> <body> This is my JSP page. <br> <h1>1.读取ValueStack上的数据</h1> <s:property value="empName"/><br> <s:property value="dept"/><br> <h1>2.读取request Map上的数据</h1> OGNL:<s:property value="#request.requestMap_emp.empName"/><br> JSTL EL:${requestMap_emp.empName }<br> <h1>3.读取HttpServletRequest上的数据</h1> OGNL:<s:property value="#request.request_emp.empName"/><br> JSTL EL:${request_emp.empName }<br> <h1>4.读取session Map上的数据</h1> OGNL:<s:property value="#session.sessionMap_emp.empName"/><br> JSTL EL:${sessionScope.sessionMap_emp.empName }<br> <h1>5.读取HttpSession上的数据</h1> OGNL:<s:property value="#session.session_emp.empName"/><br> JSTL EL:${session_emp.empName }<br> <h1>6.读取application Map上的数据</h1> OGNL:<s:property value="#application.applicationMap_emp.empName"/><br> JSTL EL:${applicationMap_emp.empName }<br> <h1>7.读取ServletContext上的数据</h1> OGNL:<s:property value="#application.application_emp.empName"/><br> JSTL EL:${application_emp.empName }<br> <s:debug/> </body> </html>
相关文章推荐
- JQuery+Strusts1.x无刷新登录
- java struts常见错误以及原因分析
- Struts之logic标签库详解
- 通过实例深入学习Java的Struts框架中的OGNL表达式使用
- Java的Struts框架中append标签与generator标签的使用
- struts2的select标签用法实例分析
- SSH框架网上商城项目第20战之在线支付平台
- JavaWeb Struts文件上传功能实现详解
- 在Java的Struts框架下进行web编程的入门教程
- 详解Java的Struts框架中注释的用法
- java中struts 框架的实现
- 利用Java的Struts框架实现电子邮件发送功能
- 在Java的Struts框架中ONGL表达式的基础使用入门
- 详解Java的Struts框架中栈值和OGNL的使用
- Java的Struts框架简介与环境配置教程
- Java的Struts框架中的if/else标签使用详解
- 简单说明Java的Struts框架中merge标签的使用方法
- 详解Java的Struts框架中上传文件和客户端验证的实现
- Java的Struts框架中Action的编写与拦截器的使用方法
- Java的Struts2框架中拦截器使用的实例教程