Struts2:Struts2在jsp中使用标签时值的获取

OGNL的使用中,需要访问一系列的对象,这些对象放在OGNLcontext中,context是一个Map结构,实际上它和ActionContext是相应的。

当用户发送请求时,struts会创建ActionContextValueStackaction对象,action对象放在ValueStack对象中,ValueStatck放在ActionContext中。










其中,ValusStackOGNLcontext对象的根对象。因此在JSP页面访问ValueStack内的属性时不需要“#”,而访问context的其他属性(如request)时必须使用“#”。

context除了ValueStack对象以外,还有以下对象:

  1. Parameters:用于访问HTTP请求参数,如#parameters['id']#parameters.id,相当于HttpServletRequest.getParameter()方法。
  2. Request:用于访问HTTP请求属性,如#request['user']#request.user,相当于HttpServletRequest.getAttribute()方法。
  3. Session:用于访问session属性。如:#session['user']#session.user,,相当于HttpSession.getAttribute()方法。
  4. Application:用于访问application属性。#application['user']#application.user,,相当于ServletContext.getAttribute()方法。
  5. Attr:比如直接获取user属性“#user”,如果PageContext可用,则访问PageContext,否则一次搜索requestsessionapplication对象。
posted @   且听风吟-wuchao  阅读(330)  评论(0编辑  收藏  举报
编辑推荐:
· .NET 依赖注入中的 Captive Dependency
· .NET Core 对象分配(Alloc)底层原理浅谈
· 聊一聊 C#异步 任务延续的三种底层玩法
· 敏捷开发:如何高效开每日站会
· 为什么 .NET8线程池 容易引发线程饥饿
阅读排行:
· .NET 9.0 使用 Vulkan API 编写跨平台图形应用
· 终于决定:把自己家的能源管理系统开源了!
· [.NET] 使用客户端缓存提高API性能
· AsyncLocal的妙用
· .NetCore依赖注入(DI)之生命周期

点击右上角即可分享
微信分享提示