`

Struts2些标签

 
阅读更多

ONGL表达式 % # $

1、  支持对象方法调用:obj.test();

2、  支持静态方法调用与静态值访问:“@类全名(包括包路)@方法或属性”

@java.lang.String@format(‘foo  %  s’, ‘bar’) @java.lang.Date@MOUNT

 

3、支持赋值与表达式串联

4、访问ActionContext上下文

5、操作集合对象

 

值栈:

         <s:iterator value="books" var="book">

         <s:property value=”name”/> 相当于:<s:property value=”book.name”/> 代表当前?

</s:iterator>

<s:property value=”name”/> 值栈取值可不用加#

 

循环时,book被推到了值栈顶端

 

-----------------------------------------------------------------------------------------------------------------------------

% # $

 

#符号

访问非根对象(值栈:根对象):  #相当于ActionContext.getContext();

 

 

ActionContext中有用的属性:

 

Parameters:

         包含当前HTTP请求参数Map

         #parameters.id[0]  相当于 request.getParameter(“id”);

 

Request:

         包含HttpServletRequest的属性(attribute)Map   

      #request.userName   request.getAttribute(“userName”);

 

Session:

      #session.userName   Session.getAttribute(“userName”);

 

Application

      #application.,username #application.getAttribute(“username”);

 

Attr:

      attr 用于按request > session > application顺序访问其属性(attribute),#attr.userName相当于按顺序在以上三个范围(scope)内读取userName属性,直到找到为止。用于过滤和投影(projecting)集合,如books.{?#this.price<100};构造Map,如#{'foo1':'bar1', 'foo2':'bar2'}   

 

 

books.{?#this.price<100}: 过滤出books中所有price小于100book;

 

?:   取所有符合选择逻辑的元素

^:  取第一个

$:   取最后一个

 

 

%”符号 javascript中的 eval() 函数

 

可以将%{……}内的字符串 转换成 表达式;如 var jsonObj = eval ( jsonString );

 

Because:

struts2里不同的标签对ognl的表达式的理解是不一样的。如果当有的标签“读不懂”类似“#myMap['key1']”的语句时,就要用%{}来把这括进去,“翻译”一下

 

 

标签用例:

S:if

         <s:if  test=”%{#book.name != ’feifei’ && #book.price == 100}”></s:if>

         <s:if  test=’#book.price !=”” && #book.price != null’></s:if>

         <s:elseif  test=’#book.price !=”” && #book.price != null’></s:elseif>

         <s:else></s:else>

 

S:iterator

         Value:       集合 books

         Id:             集合里元素的id

         var:           元素 book

         Status:     s       #s.odd,  #s.count,  #s.index,  #s.first,  #s.last,  s.modules(int) 取模

        

         <s:iterator value=”books” var=”book” status=”s”></s:iterator>

        

分享到:
评论

相关推荐

    struts2 自定义标签

    在Struts2中,自定义标签是提高代码可读性和可维护性的重要工具。本文将深入探讨Struts2自定义标签的实现机制、优点以及如何在实际项目中进行应用。 一、Struts2自定义标签的概念 自定义标签是JSP的一种扩展,允许...

    struts标签 struts标签 struts标签

    Struts标签是Apache Jakarta Struts框架中的一部分,用于简化Java Web应用程序开发中的视图层构建。Struts标签库提供了一组预定义的JSP标签,这些标签有助于开发者更有效地处理常见的Web开发任务,如表单处理、数据...

    struts2标签库例子

    Struts2 标签库详解 Struts2 提供了一个强大的标签库,用于简化 Web 应用程序的开发过程。这些标签可以分为两类:通用标签和 UI 标签。下面,我们将详细介绍 Struts2 标签库的使用。 4.1 通用标签 通用标签用来...

    struts2标签使用例子

    在Struts2框架中,标签库是其一大特色,它提供了丰富的自定义标签,使得开发者能够更加便捷地创建动态页面。这些标签极大地简化了JSP页面的编写,提高了代码的可读性和可维护性。 1. **Struts2核心标签库**: - `s...

    Struts2自定义标签

    2. **编写标签处理类(Tag Handler Class)**:这个类继承自Struts2提供的`org.apache.struts2.views.jsp.ui.TagSupport`或`org.apache.struts2.views.jsp.ComponentTagSupport`基类,实现标签的具体逻辑。...

    Struts2常用标签

    Struts2是一个强大的MVC框架,它提供了丰富的标签库,使得开发者在编写JSP页面时能够更加方便地处理业务逻辑和展示数据。本篇文章主要关注Struts2中的常用标签,这些标签大大简化了Web开发中的一些常见任务。 首先...

    Struts2自定义分页标签

    本资源详细介绍了如何在Struts2中自定义分页标签,使得开发过程更加便捷。 在Struts2中,分页通常涉及到以下几个关键步骤: 1. **创建Action类**:首先,你需要创建一个Action类,该类将处理用户的请求,包括获取...

    Struts标签库 Struts 标签库

    Struts2标签库是Java开发Web应用程序时常用的一个强大工具,尤其在构建MVC(Model-View-Controller)架构的应用程序中发挥着重要作用。Struts2框架提供了丰富的自定义标签库,极大地简化了视图层的开发,使得开发者...

    Struts2常用标签总结

    java Web开发,我们最常用的Struts2常用标签总结,帮助你Struts2常用标签有那些功能

    struts2的标签应用

    首先,了解Struts2的标签库分为两个主要部分:动作标签和数据标签。动作标签主要用于处理业务逻辑,如表单提交、重定向等,而数据标签则专注于显示和格式化数据,如循环、条件判断、显示字段等。 1. 动作标签: - ...

    struts2标签库struts2标签库struts2标签库

    "Struts2标签库详解" Struts2标签库是Struts2框架中的一个重要组件,它提供了一系列的标签,帮助开发者快速构建Web应用程序。在Struts2标签库中,标签可以分为UI标签和非UI标签两大类。UI标签用于生成HTML控件,如...

    Struts2常用标签&DispatchAction.rar

    03Struts2常用标签&DispatchAction.rar03Struts2常用标签&DispatchAction.rar03Struts2常用标签&DispatchAction.rar03Struts2常用标签&DispatchAction.rar

    基于struts2 自定义标签 分页

    自定义标签是Struts2的一个重要特性,允许开发者扩展框架的功能,提供更友好的界面元素。在这个基于Struts2的自定义分页标签的实践中,我们将深入探讨如何创建、配置和使用自定义标签来实现数据的分页展示,同时与...

    Struts2表单标签使用范例

    在Struts2中,表单标签是用于处理用户输入和展示数据的关键组件,它们使得视图层的构建更加简洁和高效。本示例将深入探讨Struts2的表单标签使用方法,帮助开发者更好地理解和应用这些标签。 首先,我们来了解一些...

    使用Struts 2标签的注意事项

    Struts 2 标签的使用注意事项 Struts 2 是一个基于MVC架构的Java Web应用程序框架,它提供了一系列的标签来简化Web开发。然而,在使用Struts 2标签时,需要注意一些重要的事项。 首先,在使用Struts 2标签之前,...

    struts2常用标签详解

    本文将深入解析Struts2中的常用标签,这些标签在实际开发中非常实用,对于初学者理解并掌握Struts2的运行机制至关重要。 首先,我们需要了解Struts2标签库的主要组成部分,它们分为Action、Display、Logic、Field和...

    struts2标签大全

    在Struts2中,使用了一系列的标签库来增强JSP页面的功能,使得开发者可以更方便地实现业务逻辑与视图的分离,提高代码的可读性和可维护性。本篇文章将详细介绍Struts2中的各种标签及其应用。 1. **s:form标签**:这...

    Struts2实例 国际化 类型转换 struts标签

    这个实例项目展示了如何在实际应用中结合Struts2、国际化、类型转换以及Struts2自定义标签来实现用户管理功能,包括用户数据的增删改查。 首先,我们来看Struts2的核心概念。Struts2作为MVC框架,它负责处理HTTP...

    struts1标签库详解

    Struts1 标签库详解 Struts1 标签库是 Apache Jakarta 的一个著名的开源项目,目标是为构建基于 Java 的 web 应用程序提供一个框架。Struts 提供了非常多的标签,依据功能和使用习惯的不同被分到了五个标签库中:...

Global site tag (gtag.js) - Google Analytics