`
Javaloverlover
  • 浏览: 347772 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

struts2标签详解(一)

阅读更多
struts2标签的功能非常强大。
1.if/elseif/else标签,用法跟普通的if,else语句一样。
<s:set name="age" value="30"></s:set>
<s:if test="#age>60">老年人</s:if>
<s:elseif test="#age>35">中年人</s:elseif>
<s:else>青少年</s:else><br/>

2.iterator标签,用与遍历List或Map。
<s:iterator value="{'aa','bb','cc'}" id="name" status="st">
	<s:property value="#st.count"/>
	<s:property value="#st.isEven()"/>
	<s:property value="name"/>
</s:iterator><br/>

status是IteratorStatus实例,用与获取获取当前迭代元素的一些信息
3.append标签,用于合并list,map,能对list和map混合拼接。
<s:append var="newList">
	<s:param value="{'aa','bb'}"></s:param>
	<s:param value="{'cc','dd'}"></s:param>
</s:append>
<s:iterator value="#newList" id="name" status="st">
	<s:property value="#st.count"/>
	<s:property value="name"/>
</s:iterator><br/>

4.merge标签,作用和append相似,但结果排序不同,此标签的排序是将每个集合的第一个元素先放进结果集合,然后是第二个元素,接着...
<s:merge var="newList">
	<s:param value="{'aa','bb'}"></s:param>
	<s:param value="{'cc','dd'}"></s:param>
</s:merge>
<s:iterator value="#newList" id="name" status="st">
	<s:property value="#st.count"/>
	<s:property value="name"/>
</s:iterator><br/>

结果:1 aa 2 cc 3 bb 4 dd
5.generator标签,用于字符串的分隔,与String的split()方法相似。
<s:generator separator="," val="%{'java,c#,php,.net,asp,android'}" var="language">
<s:iterator>
	<s:property/>
</s:iterator>
</s:generator><br/>

6.subset标签,用于筛选集合元素。
<s:subset source="{'aa','bb','cc','dd','ee','ff'}" start="1" count="3">
	<s:iterator>
		<s:property/>
	</s:iterator>
</s:subset><br/>

除此之外,用户还能定义各种筛选规则。
package com.randy.com.util;

import org.apache.struts2.util.SubsetIteratorFilter.Decider;

public class MyDecider implements Decider {

	@Override
	public boolean decide(Object element) throws Exception {
		String str = (String)element;
		return str.indexOf("java") >= 0;
	}

}


<s:bean name="com.randy.com.util.MyDecider" var="mydecider"></s:bean>
<s:subset source="{'javase','javaee','javame','android'}" decider="#mydecider" var="newList">
</s:subset>
<s:iterator value="#attr.newList">
	<s:property/>
</s:iterator>

7.sort标签,用于对集合元素进行排序,排序规则必须自己制定。
<s:bean name="com.randy.com.util.MyComparator" var="mycomparator"></s:bean>
<s:sort comparator="#mycomparator" source="{'a','aaaa','aa','bbd','n'}" var="sortList"></s:sort>
<s:iterator value="#attr.sortList">
	<s:property/>
</s:iterator><br/>

Mycomparator类
package com,randy.com.util;

import java.util.Comparator;

public class MyComparator implements Comparator {

	@Override
	public int compare(Object ele1, Object ele2) {
		return ele1.toString().length() - ele2.toString().length();
	}

}


   交流群:132607763 若满了,请加:251207741
分享到:
评论
1 楼 wnczwl369 2013-05-17  
good,用此方法排序了hibernate中的Set类型的属性。

相关推荐

    struts2标签详解(经典)

    struts2标签详解(经典)struts2标签详解(经典)struts2标签详解(经典)

    Struts2标签集锦(附Struts2标签详解word文档)

    Struts2标签是Java开发中一个非常重要的工具,它极大地简化了MVC框架下的视图层构建,使得开发者能够...提供的“Struts2标签详解.doc”文档将对这些概念进行详细的解释,是深入学习和理解Struts2标签的重要参考资料。

    struts2标签库详解(非常不错)

    这个“Struts2标签库详解(非常不错)”的资源应该包含了对Struts2所有标签的详细介绍,以及相关的API文档。 Struts2标签库的核心在于提供了一种声明式编程的方式,使得开发者可以更专注于业务逻辑,而不是繁琐的JSP...

    struts2标签用法详解

    Struts2标签是Struts2框架提供的一种强大的视图层技术,它极大地简化了JSP页面的编写,提高了代码的可读性和可维护性。在本文中,我们将深入探讨Struts2标签的用法,包括它们的基本概念、类型以及如何在实际开发中...

    struts2标签详解与实例

    Struts2标签详解与实例 在Java Web开发中,Struts2框架因其强大的MVC(模型-视图-控制器)架构而备受青睐。Struts2提供了丰富的标签库,简化了视图层的开发,使开发者可以更加专注于业务逻辑。本文将深入探讨Struts...

    struts2标签详解

    struts2标签详解

    struts自定义标签详解

    Struts 是一个强大的Java Web应用程序开发框架,它提供了一套丰富的自定义标签库,使得开发者在构建用户界面时能够更加方便地处理业务逻辑和数据展示。本文将详细讲解Struts中的Bean Tags、HTML Tags和Logic Tags的...

    struts2常用标签详解(实用版)

    ### Struts2常用标签详解(实用版) #### 引言 在Java Web开发领域中,Struts2框架因其丰富的功能及灵活的配置而备受开发者们的青睐。为了更好地掌握Struts2框架并提升开发效率,本文将详细介绍Struts2中常用的...

    Struts2标签详解及具体实例解析

    ### Struts2标签详解及具体实例解析 #### 一、概述 Struts2是一个基于MVC模式的开源框架,它提供了丰富的标签库来简化Web应用的开发过程。这些标签不仅功能强大,而且易于使用,可以帮助开发者快速构建动态网页。...

    Struts2的标签详解

    Struts2的标签详解Struts2的标签详解Struts2的标签详解Struts2的标签详解Struts2的标签详解Struts2的标签详解Struts2的标签详解Struts2的标签详解Struts2的标签详解

    Struts2 标签详解

    ### Struts2 标签详解 #### 一、引言 Struts2是Apache软件基金会的一个开源项目,它是Struts框架的升级版,基于MVC(Model-View-Controller)设计模式,为Java Web应用程序提供了丰富的功能。Struts2框架不仅简化...

    struts2标签库例子

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

Global site tag (gtag.js) - Google Analytics