struts2可以直接使用jstl标签它的标签分为两大类了,近制标签和html标签和数据标签。以下是控制标签的用法:
- if
基本的流程控制.'If'标签可单独使用也可以和'Else If'标签和(或)一个多个'Else'一起使用.
名称 必填 缺省 类型 描述
test | true | | Boolean | 决定If标签内容是否显示的表达式 |
id | false | | Object/String | 所指元素的Id. 对于UI和form标签此Id就作为所对应的html标签的id属性 |
- elseIf / elseif
基本的流程控制.'If'标签可单独使用也可以和'Else If'标签和(或)一个多个'Else'一起使用.
名称 必填 缺省 类型 描述
test | true | | Boolean | 决定If标签内容是否显示的表达式 |
id | false | | Object/String | 所指元素的Id. 对于UI和form标签此Id就作为所对应的html标签的id属性 |
- else
基本的流程控制.'If'标签可单独使用也可以和'Else If'标签和(或)一个多个'Else'一起使用.
名称 必填 缺省 类型 描述
id | false | | Object/String | 所指元素的Id. 对于UI和form标签此Id就作为所对应的html标签的id属性 |
- append
常和Iterator标签一起使用, 功能就是将不同的迭代器组合在一起,使一个迭代器迭代完成后转移到下一个迭代器中继续迭代.
例如有三个迭代器组合在一起 (每一个迭代器有三个元素), 下面说明了新生成的迭代器中的元素是如何被迭代的;
1. 第一个迭代器中的第一个元素
2. 第一个迭代器中的第二个元素
3. 第一个迭代器中的第三个元素
4. 第二个迭代器中的第一个元素
5. 第二个迭代器中的第二个元素
6. 第二个迭代器中的第三个元素
7. 第三个迭代器中的第一个元素
8. 第三个迭代器中的第二个元素
9. 第三个迭代器中的第三个元素
名称 必填 缺省 类型 描述
id | false | | Object/String | 标明新产生的迭代器在stack context中的名字 |
- generator
NOTE: JSP-TAG
由val属性提供的值产生一个迭代器.
注意: 所产生的迭代器 总是 在value stack的顶端并在此标签结束后被pop出value statck
名称 必填 缺省 类型 描述
count | false | | Integer | 所生成迭代器中元素的数量 |
separator | true | | String | val属性中的分隔符 |
val | true | | String/Object | 用于生成迭代器 |
converter | false | | com.opensymphony.webwork.util.IteratorGenerator.Converter | 转换val属性提供的值转换为对象的转换器 |
id | false | | String | 如果提供,将代表page context中生成的迭代器 |
- iterator
可以对java.util.Collection,java.util.Iterator类型的值进行迭代
名称 必填 缺省 类型 描述
status | false | false | Boolean | 如果提供该属性 每次迭代时候将生成一个IteratorStatus实例并放入堆栈中 |
value | false | | Object/String | 迭代源, 或者一个对象被放入最新创建的List |
id | false | | Object/String | element的id属性 |
- merge
MergeIteratorTag的组件,作用是合并迭代器,合并后的迭代器迭代时依次调用每一个被合并的迭代器(除非这个迭代器已经迭代完毕)
背后的工作是交给 MergeIteratorFilter完成的
例如有三个list被合并,每一个有三个元素,以下就是调用顺序:
1. 第一个list的第一个元素
2. 第二个list的第一个元素
3. 第三个list的第一个元素
4. 第一个list的第二个元素
5. 第二个list的第二个元素
6. 第三个list的第二个元素
7. 第一个list的第三个元素
8. 第二个list的第三个元素
9. 第三个list的第三个元素
名称 必填 缺省 类型 描述
id | false | | Object/String | 标明新产生的迭代器在stack context中的名字 |
- sort
NOTE:JSP-TAG
用传入的 Comparator对List进行排序.如果提供id属性,该属性作为排序后的list在PageContext中的标识. 排序后的list放在堆栈顶端,并在此tag结束后弹出.
名称 必填 缺省 类型 描述
comparator | true | | java.util.Comparator | 用来做比较的comparator |
source | false | | Object/String | 迭代的内容来源 |
id | false | | String | tag元素的id属性 |
- subset
取一个迭代器的子集.内部实现是通过com.opensymphony.webwork.util.SubsetIteratorFilter.
名称 必填 缺省 类型 描述
count | false | | Integer | 子集中的元素个数 |
source | false | | Object/String | 源集合 |
start | false | | Integer | 子集在源集合中的开始索引(如从0开始) |
decider | false | | com.opensymphony.webwork.util.SubsetIteratorFilter.Decider | 用于判断是否某特定元素包含在子集中 |
id | false | | String | 标签元素的id属性 |
分享到:
相关推荐
在Struts2中,自定义标签通常由Action类和结果页面共同完成,提供了一种声明式编程的方式,降低了视图与控制层的耦合度。 二、自定义标签的优点 1. 提高代码可读性:自定义标签将复杂的业务逻辑封装起来,使得HTML...
这些标签可以分为控制标签、数据标签和其他标签。 控制标签用来控制程序的执行,例如 if、else 和 iterator。数据标签用来管理数据的取得和创建,例如 bean、push 和 i18n。 4.1.1 if 标签 if 标签用来控制基本的...
2. **Struts2标签的类型**:包括控制标签(如`<s:if>`、`<s:iterator>`)、数据标签(如`<s:property>`)、表单标签(如`<s:form>`、`<s:textarea>`)以及国际化标签(如`<s:text>`)等。 3. **标签的生命周期**:...
Struts2是一个强大的MVC(模型-视图-控制器)框架,用于构建企业级Java Web应用程序。在Struts2框架中,标签库是其一大特色,它提供了丰富的自定义标签,使得开发者能够更加便捷地创建动态页面。这些标签极大地简化...
- **Struts2控制标签**: - 控制标签包括`append`、`generator`、`if/else/elseif`、`iterator`、`merge`、`sort`等。 - 这些标签主要用于控制页面内容的生成,帮助开发者实现更复杂的逻辑处理。 - 例如,`if`...
Struts2作为一款流行的Java Web框架,极大地简化了MVC(模型-视图-控制器)应用的开发。自定义标签是Struts2框架中的一个重要特性,它允许开发者创建自己的标签库,以更直观、易读的方式在JSP页面中处理业务逻辑。...
在实际开发中,Struts2的标签使得视图层的代码更加简洁易读,降低了视图和控制层之间的耦合度。它们提供了丰富的内置功能,如数据转换、国际化支持、错误处理等,使得开发者可以更专注于业务逻辑,而不是繁琐的HTML...
Struts标签库提供了一组预定义的JSP标签,这些标签有助于开发者更有效地处理常见的Web开发任务,如表单处理、数据展示、逻辑控制等。在本文中,我们将深入探讨其中的Bean Tags、HTML Tags和Logic Tags。 1. **Bean ...
"Struts2标签库详解" Struts2标签库是Struts2框架中的一个重要组件,它提供了一系列的标签,帮助开发者快速构建Web应用程序。在Struts2标签库中,标签可以分为UI标签和非UI标签两大类。UI标签用于生成HTML控件,如...
Struts2是一个强大的Java web应用程序框架,它极大地简化了MVC(模型-视图-控制器)架构的应用开发。在Struts2中,表单标签是用于处理用户输入和展示数据的关键组件,它们使得视图层的构建更加简洁和高效。本示例将...
3. **Logic标签**:虽然Struts2已经不推荐使用这些标签,但在老版本中它们用于控制流程。例如: - `<s:if>`和 `<s:else>`:条件判断,类似于Java中的if-else语句。 - `<s:iterate>`:遍历集合,类似于Java的for-...
- **控制标签**:如`s:if`、`s:else`、`s:iterator`,用于条件判断和循环。 - **动作标签**:如`s:action`、`s:url`,用于执行Action并生成相应的URL。 - **表单标签**:如`s:textfield`、`s:checkbox`、`s:radio...
文件名“struts2_05_03_controlTag”可能涵盖了Struts2控制标签的使用,这些标签包括导航和流程控制标签,如 `<s:if>`, `<s:else>`, `<s:switch>`, `<s:iterator>`等,它们帮助开发者根据条件执行不同的操作或循环...
Struts2 标签库(IBM资料)Struts2标签库概述; Struts2数据标签; Struts2控制标签; Struts2表单标签; Struts2非表单标签
Struts2是一个强大的MVC(模型-视图-控制器)框架,被广泛应用于Java Web开发。这个实例项目展示了如何在实际应用中结合Struts2、国际化、类型转换以及Struts2自定义标签来实现用户管理功能,包括用户数据的增删改查...
在Struts2框架中,标签库是一系列预定义的JSP标签,它们提供了丰富的功能,如数据绑定、控制流、输入验证等,帮助开发者创建更加整洁、易于维护的代码。 Struts2标签库主要分为以下几个部分: 1. **核心标签(Core...
- **控制标签**:如`s:if`, `s:else`, `s:choose`等,用于条件判断和流程控制。 - **数据展示标签**:如`s:textfield`, `s:textarea`, `s:checkbox`, `s:radio`等,用于创建表单元素并绑定到Action的属性。 - **...
流程控制标签用于实现分支、循环等流程控制的标签,而数据访问标签用于输出 ValueStack 中的值,完成国际化等功能的。 Ajax 标签 Ajax 标签用于实现异步请求和处理的标签。Ajax 标签可以实现页面无刷新更新、实时...