titahot 2012-08-22 11:22
浏览 342
已采纳

请问这个attr从何而来?谢谢

=======generatorTag.jsp
<%@ page language="java" contentType="text/html; charset=gb2312"
pageEncoding="gb2312"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">



generator标签使用范例



generator标签使用范例



/s:generator








/s:iterator

======index.jsp
<%@ page language="java" contentType="text/html; charset=gb2312"
pageEncoding="gb2312"%>


<%
String contextPath = request.getContextPath();
%>

http://struts.apache.org/dtds/struts-2.0.dtd">



<!-- 直接导航的的Action定义 -->

/jsp/appendTag.jsp



/jsp/generatorTag.jsp


/jsp/ifelseifTag.jsp


/jsp/iteratorTag.jsp


/jsp/mergeTag.jsp



/jsp/sortTag.jsp


/jsp/subsetTag.jsp



  • 写回答

2条回答 默认 最新

  • jinnianshilongnian 2012-08-22 11:34
    关注

    attr是struts2添加到值栈的上下文取的一个Map(org.apache.struts2.util.AttributeMap)

    这个attr包含4个作用域:

    • A Map that holds 4 levels of scope.
    • The scopes are the ones known in the web world.:
      • Page scope
      • Request scope
      • Session scope
      • Application scope

      Dispatcher.java struts2在执行action之前默认放到上下文的 ActionContext
      [code="java"] // helpers to get access to request/session/application scope
      extraContext.put("request", requestMap);
      extraContext.put("session", sessionMap);
      extraContext.put("application", applicationMap);
      extraContext.put("parameters", parameterMap);

          AttributeMap attrMap = new AttributeMap(extraContext);
          extraContext.put("attr", attrMap);
      

      [/code]

      按照这个顺序查找属性,顺序是page--->request----->session---->application;

      也就是说通过ActionContext.getContext.get("attr") 是可以获取的到的。

      #attr 是ognl表达式,用于访问上下文数据的。

      本回答被题主选为最佳回答 , 对您是否有帮助呢?
      评论
    查看更多回答(1条)

    报告相同问题?

    悬赏问题

    • ¥15 VB.NET2022如何生成发布成exe文件
    • ¥30 matlab appdesigner私有函数嵌套整合
    • ¥15 给我一个openharmony跑通webrtc实现视频会议的简单demo项目,sdk为12
    • ¥15 vb6.0使用jmail接收smtp邮件并另存附件到D盘
    • ¥30 vb net 使用 sendMessage 如何输入鼠标坐标
    • ¥15 关于freesurfer使用freeview可视化的问题
    • ¥100 谁能在荣耀自带系统MagicOS版本下,隐藏手机桌面图标?
    • ¥15 求SC-LIWC词典!
    • ¥20 有关esp8266连接阿里云
    • ¥15 C# 调用Bartender打印机打印