Logic Tags
语法应用是 --
<someComparisonTag value="someUserNameValue"
cookie="userName"> (cookie specifies the name of the cookie to compare with
value)
<someComparisonTag value="en_US" header="Accept-Language">
(header specifies the name of the HTTP header to compare with value)
<someComparisonTag value="someUserNameValue" parameter="username">
(parameter specifies the name of the request parameter to compare with value)
<someComparisonTag name="testBean" property="propNameInTestBean"
value="someValue"> (典型)
name指定了bean的名字而property指定了该bean的某个property以便于和value比较,
通常我们还能够加一个scope来限制bean
property is used in conjunction with name to specify
a property in the bean specified by name. The property reference can be simple,
nested, and/or indexed. For the type of syntax used for property, see the users
guide on the Bean Tags.
scope specifies the bean scope which can be page,
request, session, application, "any scope" (default)
1) 值比较 Value
Comparison: equal, notEqual, greaterEqual, lessEqual, lessThan, greaterThan
比较逻辑是 -- 先试图convert成long double,并比较; 假如parse失败就会用String.equalTo()来比较
1) 值比较 Value Comparison: present, notPresent, empty, notEmpty
present看的是某变量/实例是否存在于某个限定范围,empty看的是该实例是否为null, "", or
collection.isEmpty()==true (only for collection)
2) 子字符串匹配 Substring
Matching: match, notMatch
match/notMatch
更有一个可选location来指定该substring必须出现在字符串开始还是结尾 (location="start/end")
3)
Presentation Location: forward, redirect
用法尚不清楚
4) Collection
Utilities: iterate (极常用)
<logic:iterate id="searchResultList"
name="<%=WebKeys.SEARCH_RESULT_LIST_TWO%>" scope="session">
<bean:write name="searchResultList" property="itemName"/></a>
<bean:write name="searchResultList" property="itemUnitOfMeasure" />
<bean:write name="searchResultList" property="inventoryDetailSize"
format="#0.00"/>
</logic:iterate>
假如property给定,name代表了一个bean的实例,而这个bean的getThatProperty()将返回此tag需要的collection实例,
假如没有给定property, name本身就指定了将被iterate的collection的实例,
id给出了每一次循环的collection的当前object的名字,用于在内部使用
offset和length指定了从collection的哪个位置开始,到哪里结束,其他请参见Struts Documentation,这里不详述
分享到:
相关推荐
1. **Logic Tags**:这些标签用于处理条件语句和循环,例如`<logic:equal>`用于比较两个值是否相等,`<logic:iterate>`用于遍历集合对象。 2. **HTML Tags**:HTML标签提供了与HTML元素对应的辅助标签,如`...
JSP(JavaServer Pages)用于创建动态网页,结合Struts标签库(如Struts Logic Tags、Struts HTML Tags等),可以方便地处理用户交互和页面展示。例如,使用`<s:textfield>`标签创建表单字段,`<s:submit>`处理提交...
除了上述组件,Struts还包括一系列的标签库(如Struts Tiles和Struts Logic Tags),这些标签库提供了一种声明式的方式,帮助开发者更方便地创建动态的用户界面。此外,Struts还支持国际化(i18n)、异常处理、文件...
这里的`prefix="logic"`定义了标签前缀,`uri="/tags/struts/logic"`指定了标签库的URI。 二、主要的logic标签 1. **logic:equal**:用于比较两个值是否相等。例如,检查用户输入的用户名是否为空: ```jsp ...
Struts1.x_Tags是Apache Struts框架的一个重要组成部分,它是用于构建MVC(Model-View-Controller)架构Web应用程序的标签库。Struts1.x_Tags提供了丰富的JSP标签,使得开发者能够更加方便地创建动态用户界面,提高...
Logic Tags库提供了一系列用于逻辑控制和流程管理的标签,如条件判断、循环遍历。例如,`<logic:present>`用于检查某个对象是否存在于指定的作用域中,`<logic:iterate>`用于遍历集合数据。这些标签使得开发者能够...
The "struts-logic" tag library contains tags that are useful in managing conditional generation of output text, looping over object collections for repetitive generation of output text, and ...
Logic Tags 是 Struts 中的逻辑标签库,包含的标签可以用来进行逻辑判断、集合迭代和流程控制。 * logic:equal:判断两个值是否相等。 * logic:forward:将请求转发到另一个.action。 * logic:iterate:迭代一个...
列举几个用过的Struts Logic Tags?** - `<s:if>`:条件判断标签。 - `<s:property>`:显示模型属性值。 - `<s:iterator>`:迭代集合或数组。 - `<s:form>`:创建表单。 - `<s:textfield>`:创建文本输入框。 ####...
本文将详细讲解Struts中的Bean Tags、HTML Tags和Logic Tags的使用方法。 首先,Bean Tags 主要用于创建、访问和操作Bean以及Bean的属性。例如,`<bean:cookie>`标签可以用来获取请求中的Cookie信息,并将其转换为...
<%@ taglib prefix="logic" uri="http://struts.apache.org/tags-logic" %> <%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean" %> <logic:iterate name="myList" id="item"> </logic:iterate> ...
Struts的标签库为Java Web开发提供了极大的便利,通过Bean Tags、HTML Tags和Logic Tags,开发者可以更高效地处理数据、构建用户界面以及实现复杂的逻辑控制。掌握这些标签的使用,对于提升Web应用的开发效率和维护...
Logic Tags提供了逻辑判断和流程控制的功能,如`logic:iterate`用于遍历集合,`logic:equal`用于条件判断,以及`logic:present`检查某个对象是否存在于作用域中。在示例中,`logic:present cookie="JSESSIONID"`...
Struts 提供了非常多的标签,依据功能和使用习惯的不同被分到了五个标签库中:Bean Tags、HTML Tags、Logic Tags、Nested Tags 和 Tiles Tags。本篇指南主要介绍前三个标签库中的标签。 Bean Tags Bean Tags 库...
<tag-class>org.apache.struts.taglib.logic.IterateTag <body-content>scriptless ... <name>id <required>true <rtexprvalue>true <description>The name of the scripting variable to be exposed. ....
3. **Logic Tags**:用于实现逻辑判断、循环迭代等功能,是Struts中非常重要的组成部分。 4. **Nested Tags**:建立在Bean Tags、HTML Tags和Logic Tags基础上,支持标签嵌套。 5. **Tiles Tags**:用于构建页面布局...
`<write>`和`<logic>`是Struts 1.x中的两个核心标签,主要用于视图层的展示和逻辑控制。 `<write>`标签是Struts的HTML标签库的一部分,主要用来在JSP页面中显示来自ActionForm或者Servlet请求范围内的属性值。例如...
目前的标签库包括:Bean Tags、HTML tags、Logic Tags、Nested Tags 以及 Template Tags 等。 控制器(Controller)是 Struts 的另一个核心组件,负责处理用户请求和响应。Struts 的控制器组件是 ActionServlet 类...
Struts2标签库分为五个部分:Bean Tags、HTML Tags、Logic Tags、Nested Tags和Tiles Tags。 1. Bean Tags: 这个标签库主要用于处理Java对象,创建和操作Bean。例如,`<bean:cookie>`标签可以从请求中获取指定...
Logic Tags主要用于控制流程和迭代,例如条件判断和循环。虽然这里没有列出具体的逻辑标签,但它们包括logic:equal、logic:notEqual、logic:iterate等,这些标签帮助开发者实现条件渲染和数据遍历。 使用Struts标签...