控制标签
1. if/elseif/else标签
用于基本流程控制,可以单独使用if,或者和一个else,或者类似java中if/else if/else。
test:一个Boolean表达式。
2. iterator标签
用于迭代一个集合,可以是Collection,Map,Enumeration,Iterator,array。迭代过程会把每一个对象暂时压入值栈,这样标签的内部就可以直接访问对象的属性和方法,标签完毕后,值栈内容被删除。
var:指定该属性,迭代的每个元素将放入ActionContext。
value:指定迭代的集合。
status:指定一个名称放入ActionContext,通过这个名称获取迭代中的一些状态信息。
status.count当前迭代元素的总数
status.index 当前迭代元素的索引
status.even 当前迭代元素是否为偶数
status.odd 当前迭代元素是否为奇数
status.first 当前迭代的元素是否为第一个
status.last 当前迭代的元素是否为最后一个。
迭代map使用key与value访问。
3. append标签
用于将不同迭代器组合在一起,使一个迭代器迭代完成后转移到下一个迭代器进行迭代。在标签内部,使用param标签指定集合。通常和iterator一起使用。
var:指定该属性,组合后的迭代器将放入ActionContext中。
4. merge标签
也用于合并迭代,与append 标签用法类似,区别是迭代顺序不一样。
第一个迭代器的第一个
第二个迭代器的第一个
第三个迭代器的第一个,这样的顺序。
var:指定该属性,组合后的迭代器将放入ActionContext中。
5. generator标签
用于根据指定字符拆分一个字符串为迭代器,压入值栈的栈顶,可在内部使用iterator迭代,结束后将删除栈顶。
val:指定要解析的值。
separator:指定分隔符
count:指定生成迭代器中可用元素的数量。
converter:指定一个转换器,用于将各字符转换为对象。
var:保存在ActionContext中。
6. subset标签
此标签用于截取一个迭代器子集
source:指定集合源。
start:从第几个元素开始
count:指定截取的元素总数
decider:用于判断某个特定元素是否包含在子集中。
var:保存到pageContext中。
7. sort标签
根据comparator属性指定比较器对集合排序,并将排序后的集合压入栈顶。
source:集合源。
comparator:指定比较器的类,需实现java.util.Comparator接口。
var:保存到pageContext中。
分享到:
相关推荐
除了OGNL标签外,Struts2还提供了许多功能性标签,如append、generator、if等,这些标签可以帮助开发者更灵活地控制页面的显示效果。 通过以上内容的详细介绍,我们可以看到Struts2框架不仅拥有丰富的功能,而且...
FreeMarker的标签详解: 2.1 `assign`指令:用于创建或替换模板中的顶层变量,可以一次性创建或替换多个变量。示例中,`<#assign x>`用于创建变量x,并通过`<#list>`循环填充其值。 2.2 `break`指令:在迭代过程中,...
### Struts+Spring+Hibernate通用分页方法详解 #### 一、引言 在Web应用开发中,分页是一项常用且重要的功能。特别是在处理大量数据时,合理的分页策略能够显著提升用户体验并减轻服务器压力。Struts+Spring+...
### Struts标记库详解 #### 一、Struts标记库概述 Struts标记库是用于构建基于JavaServer Pages (JSP) 的Web应用程序的一种工具集。它由一系列自定义的HTML标记组成,这些标记简化了在JSP页面中管理JavaBeans、...
#### 2.1 Struts2注解说明 Struts2的注解支持是通过拦截器(Interceptor)实现的,与Spring不同,它主要集中在Action的定义和配置上。 #### 2.2 Struts2注解介绍 ##### 2.2.1 @Action注解 这是Struts2中最核心的...
### Spring、Hibernate、Struts集成应用详解 #### 1. 整体框架 在Java Web开发领域,Spring、Hibernate和Struts三个框架被广泛应用于构建轻量级的企业级应用程序。这三个框架各自拥有独特的功能和优势,并能够很好...
### Struts2学习文档知识点详解 #### 一、Struts2 Action **1.1 Action通过ActionContext间接访问Servlet API** - **概念介绍**:在Struts2框架中,Action对象可以通过`ActionContext`来间接访问到Servlet API,...
系统框架篇则是以架构设计的高度,讲解搭建网站的三大框架Struts、Hibernate、Sprin9及标签库。项目实战篇详细阐述了通用论坛BBS、社交网站、DIY商品电子交易平台3个系统的开发细节,使读者真正掌握JavaWeb开发的...
前端控制器是控制层的核心组件之一,它承担着接收所有前端请求并转发给合适Action类的任务。前端控制器的工作流程包括: - **Request请求处理**:前端控制器会统一接收以`.do`或`.action`为后缀的请求。例如,可以...
- **技术栈**:Struts2.1 + Spring3.0 + Hibernate3.3。 - **开发工具**:推荐使用MyEclipse 8.5或以上版本。 - **数据库**:MySQL 5.0。 #### 三、开发工具选择与安装 - **MyEclipse 8.5**:作为主流的Java Web...
5.5.1控制标签 103 5.5.2数据标签 104 5.5.3表单标签 105 5.5.4非表单ui标签 107 本章小结 108 课后练习 109 第6章struts2高级应用 110 6.1拦截器 110 6.1.1拦截器工作机制 110 6.1.2拦截器及拦截器栈的...
3.3.3. bean属性及构造器参数详解 3.3.3.1. 直接量(基本类型、Strings类型等。) 3.3.3.2. 引用其它的bean(协作者) 3.3.3.3. 内部bean 3.3.3.4. 集合 3.3.3.5. Nulls 3.3.3.6. XML-based configuration metadata ...
其中,“SSI框架”并不是一个通用的说法,根据提供的上下文来看,这里指的是Struts2、Spring和iBatis这三个开源框架的组合使用,即SSi框架。这种组合被广泛应用于Java Web应用的开发中,通过整合这三个框架的优势,...
2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 更简单的XML配置 2.2.2. 新的bean作用域 2.2.3. 可扩展的XML编写 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@AspectJ 切面的支持 2.4. 中间...