Data标签用来提供各种数据相关的功能.范围从显示一个action的直接结果,到获取本地化的数值等.
- action
通过指定命名空间和action名称,该标签允许你在jsp页面直接调用Action. 标签体用来渲染Action执行结果. 除非你设定了executeResult参数为true,否则你在xwork.xml中为该Action指定的Result Processor不会执行.
名称 必填 缺省 类型 描述
id | false | | String | 如果设定,将作为该Action在栈中的标识 |
name | true | | String | action名字(不包括后缀,如.action) |
namespace | false | | String | action所在命名空间 |
executeResult | false | false | Boolean | Action的result是否需要被执行 |
ignoreContextParams | false | false | Boolean | request中的参数是否需要传入该Action |
- bean
实例化一个符合JavaBeans规范的class,标签体内可以包含几个Param元素,用于调用setter方法给此class的属性赋值.如果是定了id属性,则该实例将会放到stack的context中.
名称 必填 缺省 类型 描述
name | true | | String | 要被实例化的class名字(必须符合JavaBeans规范) |
id | false | | String/Object | 标识该元素 |
- debug
- i18n
将某个特定resource bundle放入value stack. 然后通过text标签拿到相应message, 而不是仅限于绑定到当前action的bundle.
名称 必填 缺省 类型 描述
name | true | | String | 要使用的resource bundle.(如 foo/bar/customBundle) |
id | false | | String/Object | 标识该元素 |
- include
包含servlet的输出(servlet或JSP页面)
名称 必填 缺省 类型 描述
value | true | | String | 包含的jsp或servlet |
id | false | | Object/String | 元素标识 |
例子:
<ww:include value="myJsp.jsp">
<ww:param name="param1" value="value2" />
<ww:param name="param2" value="value2" />
</ww:include>
- param
为其他标签提供参数,比如include标签和bean标签.
参数的name属性是可选的,如果提供,会调用Component的方法addParameter(String, Object),如果不提供,则外层嵌套标签必须实现UnnamedParametric接口(如TextTag).
该标签的两个属性
- name (String) - 参数名
- value (Object) - 参数值
注意 : value的提供有两种方式,通过value属性或者标签中间的text,不同之处我们看一下例子:
<param name="color">blue</param> <-- (A) --> <param name="color" value="blue"/> <-- (B) -->
(A)中,参数值会以String的格式放入statck. (B)中该值会以java.lang.Object的格式放入statck.
- push
push值到堆栈中,方便应用.
名称 必填 缺省 类型 描述
value | true | | Object/String | 要push到堆栈中的值 |
id | false | | Object/String | 该元素标识 |
<ww:push value="user">
<ww:propery value="firstName" />
<ww:propery value="lastName" />
</ww:push>
将user的值push到栈中,从而使property标签的能够获取user的属性(firstName, lastName etc)
- set
set标签赋予变量一个特定范围内的值. 当希望给一个变量赋一个复杂的表达式,每次访问该变量而不是复杂的表达式时用到.其在两种情况下非常有用: 复杂的表达式很耗时 (性能提升) 或者很难理解 (代码可读性提高).
名称 必填 缺省 类型 描述
name | true | | String | 变量的名字 |
scope | false | action | String | 变量作用域,可以为application, session, request, page, 或action. |
value | false | | Object/String | 将会赋给变量的值 |
id | false | | Object/String | 元素标识 |
- <ww:set name="personName" value="person.name"/>
Hello, <ww:property value="#personName"/>. How are you? - text
支持国际化信息的标签
国际化信息必须放在一个和当前action同名的resource bundle中,如果没有找到相应message,tag body将被当作默认message,如果没有tag body,message的name会被作为默认message
名称 必填 缺省 类型 描述
name | true | | Object/String | 资源属性的名字 |
name | false | | Object/String | 该元素标识 |
- url
该标签用于创建url,可以通过"param"标签提供request参数.
注意:
当includeParams的值时'all'或者'get', param标签中定义的参数将有优先权,也就是说其会覆盖其他同名参数的值.
名称 必填 缺省 类型 描述
includeParams | false | get | Object/String | 值为'none', 'get' 或'all'. |
scheme | false | | Object/String | scheme属性 |
value | false | | Object/String | value如果不提供就用当前action |
action | false | | Object/String | 用来生成url的action,如果没有则使用value |
namespace | false | | Object/String | 命名空间 |
method | false | | Object/String | 使用的action的方法 |
encode | false | true | Boolean | 是否encode参数 |
includeContext | false | true | Boolean | 是否实际的上下文环境应该包含在url中 |
portletMode | false | | Object/String | 结果portlet 的模式(mode) |
windowState | false | | Object/String | 结果portlet窗口的状态 |
portletUrlType | false | | Object/String | 指定这时一个 portlet 输出还是一个 action url |
anchor | false | | Object/String | URL的锚点( anchor) |
id | false | | Object/String | 该元素标识 |
-
<ww:url value="editGadget.action">
<ww:param name="id" value="%{selected}" />
</ww:url>
- property
得到'value'的属性,如果value没提供,默认为堆栈顶端的元素.
名称 必填 缺省 类型 描述
default | false | | String | 如果属性是null则显示的default值 |
escape | false | true | Boolean | 是否escape HTML |
value | false | <top of stack> | Object | value to be displayed |
id | false | | Object/String | 该元素标识 |
<ww:push value="myBean"> <!-- Example 1: --> <ww:property value="myBeanProperty" /> <!-- Example 2: --> <ww:property value="myBeanProperty" default="a default value" /> </ww:push>
分享到:
相关推荐
下面我们将详细讲解几个常用的Struts2数据标签: 1. `<s:property>`:这个标签用于显示对象的属性值。例如,如果我们有一个名为"user"的Action属性,我们可以使用`<s:property value="user.name"/>`来显示用户的...
这些标签可以分为控制标签、数据标签和其他标签。 控制标签用来控制程序的执行,例如 if、else 和 iterator。数据标签用来管理数据的取得和创建,例如 bean、push 和 i18n。 4.1.1 if 标签 if 标签用来控制基本的...
在Struts2框架中,标签库是其一大特色,它提供了丰富的自定义标签,使得开发者能够更加便捷地创建动态页面。这些标签极大地简化了JSP页面的编写,提高了代码的可读性和可维护性。 1. **Struts2核心标签库**: - `s...
在这个基于Struts2的自定义分页标签的实践中,我们将深入探讨如何创建、配置和使用自定义标签来实现数据的分页展示,同时与Oracle数据库进行交互。 首先,理解分页的基本概念至关重要。分页是将大量数据分成小块,...
本资源详细介绍了如何在Struts2中自定义分页标签,使得开发过程更加便捷。 在Struts2中,分页通常涉及到以下几个关键步骤: 1. **创建Action类**:首先,你需要创建一个Action类,该类将处理用户的请求,包括获取...
首先,了解Struts2的标签库分为两个主要部分:动作标签和数据标签。动作标签主要用于处理业务逻辑,如表单提交、重定向等,而数据标签则专注于显示和格式化数据,如循环、条件判断、显示字段等。 1. 动作标签: - ...
### Struts2 数据标签详解 #### 1. `<s:action>` 标签 - **功能描述**: - `<s:action>` 标签主要用于调用Struts2中的Action。在JSP页面中,此标签可以指向特定命名空间内的某个Action,并且标签体通常用于展示...
2. **编写标签处理类(Tag Handler Class)**:这个类继承自Struts2提供的`org.apache.struts2.views.jsp.ui.TagSupport`或`org.apache.struts2.views.jsp.ComponentTagSupport`基类,实现标签的具体逻辑。...
Struts2_控制标签与数据标签.pdf
Struts2是一个强大的MVC框架,它提供了丰富的标签库,使得开发者在编写JSP页面时能够更加方便地处理业务逻辑和展示数据。本篇文章主要关注Struts2中的常用标签,这些标签大大简化了Web开发中的一些常见任务。 首先...
Struts 2标签的用法非常广泛,包括表单标签、验证标签、数据标签等。例如,使用Struts 2的表单标签可以快速创建表单,例如: ``` 用户名"/> 密码"/> 登录"/> ``` 这段代码创建了一个简单的登录表单,并使用...
Struts标签库提供了一组预定义的JSP标签,这些标签有助于开发者更有效地处理常见的Web开发任务,如表单处理、数据展示、逻辑控制等。在本文中,我们将深入探讨其中的Bean Tags、HTML Tags和Logic Tags。 1. **Bean ...
"Struts2标签库详解" Struts2标签库是Struts2框架中的一个重要组件,它提供了一系列的标签,帮助开发者快速构建Web应用程序。在Struts2标签库中,标签可以分为UI标签和非UI标签两大类。UI标签用于生成HTML控件,如...
在Struts2中,表单标签是用于处理用户输入和展示数据的关键组件,它们使得视图层的构建更加简洁和高效。本示例将深入探讨Struts2的表单标签使用方法,帮助开发者更好地理解和应用这些标签。 首先,我们来了解一些...
Struts2 标签库(IBM资料)Struts2标签库概述; Struts2数据标签; Struts2控制标签; Struts2表单标签; Struts2非表单标签
4. **数据标签(Data Tags)**:这些标签用于显示数据,如`<s:debug>`用于调试,显示所有ActionContext中的信息,`<s:dump>`用于输出对象的详细信息。 5. **国际化标签(Internationalization Tags)**:如`...
本文将深入解析Struts2中的常用标签,这些标签在实际开发中非常实用,对于初学者理解并掌握Struts2的运行机制至关重要。 首先,我们需要了解Struts2标签库的主要组成部分,它们分为Action、Display、Logic、Field和...
Struts2标签库是Java开发Web应用程序时常用的一个强大工具,尤其在构建MVC(Model-View-Controller)架构的应用程序中发挥着重要作用。Struts2框架提供了丰富的自定义标签库,极大地简化了视图层的开发,使得开发者...
这个实例项目展示了如何在实际应用中结合Struts2、国际化、类型转换以及Struts2自定义标签来实现用户管理功能,包括用户数据的增删改查。 首先,我们来看Struts2的核心概念。Struts2作为MVC框架,它负责处理HTTP...