Struts的Logic标签可以根据特定的逻辑条件来判断网页的内容,或者循环遍历集合元素,它和HTML,Bean标签是Struts应用种最常用的三个标签.它的功能主要是比较运算,进行字符串的匹配,判断指定的内容是否存在,循环遍历集合,进行请求转发和重定向。
基本格式:
<logic:iterate id=“” name=“” scope=“”>
……..
</logic:iterate>
eg1. 逐一输出用户列表(userlList)中用户的姓名:
<logic:iterate id="user" name="userList">
<bean:write name="user" property="name"/><br>
</logic:iterate>
<logic:forward>标签用于请求转发,它的name属性指定转发的目标,与Struts配置文件中的<global-forwards>元素和的子元素<forward>元素匹配.简单的说就是<logic:forward>标签的name属性定义的值,要去找到<golbal-forwards>子元素<forward>元素的匹配的name属性,然后通过path指定的路径进行转发.
重定向用<logic:redierct>标签,它的action,forward,href和page属性指定重定向的目标,这几个属性和<html:link>标签的属性用法十分相似.
<logic:empty>和<logic:notEmpty>标签可以判断指定的变量是否为空的字符串,可以通过name属性来判断一个字符串是否为null.例如是请求参数的字符串.
该标签是用来判断是否为空的。如果为空,该标签体中嵌入的内容就会被处理。该标签用于以下情况:
1)当Java对象为null时;
2)当String对象为""时;
3)当java.util.Collection对象中的isEmpty()返回true时;
4)当java.util.Map对象中的isEmpty()返回true时。
<logic:present>和<logic:notPresent>
可以判断指定的对象是否为空,这个标签的属性很多.cookie属性判断Cookie是否存在.Header属性判断HTPP请求头是否存在.role属性是判断当前的权限的用户是否是指定的安全角色.user属性是判断当前通过权限验证的用户是否拥有指定的用户名.parameter属性是判断请求的参数是否存在.name属性是用来判断指定的Bean是否存在.同时设置name和property属性就是判断Bean种的具体属性是否存在了.
<logic:equal>变量等于指定的常量
<logic:notEqual>变量不等于指定的常量
<logic:lessThan>变量小于指定的常量
<logic:lessEqual>变量小于或者等于指定的常量
<logic:geraterThan>变量大于指定的常量
<logic:geraterEqual>变量大于或等于指定的常量
注意:判断变量和判断bean的属性值的用法
bean:write:以字符串形式输出bean的属性值。
filter属性:设为true时,将HTML保留字转换为实体("<" 转换为 <);
format属性:格式化输出小数位数
ignore属性:如果对象不存在,不会抛出异常。
<bean:write name="userRegistration" property="email" scope="request"/>
用来重新得到cookie, request header和request parameter。
bean:header和bean:parameter标签定义了一个字符串;bean:cookie标签定义了一个Cookie对象。你可以使用value属性做为默认值。如果找不到指定的值,且默认值没有设定的话,会抛出一个request time异常。如果你期望返回多个值的话,可把multiple属性设为true。
<bean:cookie id="sessionID" name="JSESSIONID" value="JSESSIONID-ISUNDEFINED"/>
分享到:
相关推荐
·struts-logic标签库。这个库可管理有条件的文本生成,在对象集合中循环以重复生成输出文本和应用程序流程管理。 ·struts-template标签库。在为具有相同的风格或格式生成动态JSP模板时,这个库所提供的标签会有很...
在Struts框架中,逻辑标签(LOGIC标签)是JSP标签库的一部分,用于处理页面的流程控制和逻辑判断。这些标签简化了在JSP页面上进行条件判断和循环操作,从而使得代码更易读、更易于维护。 **1. `logic:iterate`标签*...
2. **标签库**:包括`struts-bean.jar`、`struts-html.jar`、`struts-logic.jar`和`struts-nested.jar`等,提供了一系列预定义的JSP标签,如logic标签用于流程控制,bean标签用于展示数据,html标签则用于表单元素的...
2. **struts-bean.jar**:提供Bean相关的标签库,如logic和html标签。 3. **struts-html.jar**:包含HTML表单标签,用于创建用户界面。 4. **struts-tiles.jar**:用于页面布局和组合,提供Tiles定义和控制器。 5. *...
总的来说,Struts1的`Logic`标签库为开发者提供了强大的条件控制和流程管理工具,极大地提高了开发效率和代码可读性。通过这些标签,开发者可以在JSP页面中直接进行逻辑判断,避免了过多的Java脚本,使得页面更加...
3. `struts-logic.tld`:Logic标签库,提供了一些逻辑控制标签,如条件判断(`<logic:equal>`)、循环(`<logic:iterate>`)、导航(`<logic:forward>`)等,帮助开发者在JSP页面中实现复杂的业务逻辑。 4. `struts-...
7. **JSP和Tags**:Struts提供了丰富的JSP标签库,如logic、bean、html和nested标签,使得开发者能更方便地创建动态Web页面。 在Struts 1.3.8中,可能包含以下部分: - **lib** 目录:包含了运行Struts应用所需的...
struts-logic标签库主要包含一系列用于处理页面导航和流程控制的标签。例如: - `<logic:iterate>`:用于迭代集合数据,常用于表格展示。 - `<logic:equal>`和`<logic:notEqual>`:用于比较两个值是否相等或不...
`logic`标签是Struts 1.x中的一个核心标签库,用于处理控制流程,如条件判断、迭代等。这个标签库提供了一系列与流程控制相关的标签,帮助开发者在JSP页面上实现业务逻辑,从而让视图更加清晰,代码更加易于维护。 ...
通过以上讲解,我们可以看到Struts标签库在Web开发中的重要作用,它大大简化了页面的实现,提高了开发效率,并增强了应用的可维护性。对于Java Web开发者来说,熟练掌握Struts标签库的使用是非常必要的。
根据给定文件的部分内容,Struts标签库大致可以分为三类:`struts-html`标签库、`struts-bean`标签库和`struts-logic`标签库。下面分别介绍这三种标签库的功能和应用场景: #### 1. `struts-html` 标签库 `struts-...
3. **struts-logic标签**:这些标签提供了流程控制功能,如条件判断和循环。比如,`<logic:equal>`可以比较两个值是否相等,`<logic:iterate>`用于遍历集合并迭代输出,`<logic:notEmpty>`检查一个集合或者数组是否...
- `struts-taglib.jar`:这个库包含JSP标签库,如logic、bean、html和nested标签,便于在JSP页面中使用Struts的功能。 2. **依赖库**: - `commons-beanutils.jar`:Apache Commons BeanUtils库,提供了对...
在Struts中,TLD(Tag Library Descriptor)文件扮演着核心角色,它们定义了标签库中的自定义JSP标签。TLD文件是XML格式的,用于描述标签的行为、属性和功能,使得开发者可以更方便地进行视图层的构建。 1. **...
Logic Tags 是 Struts 中的逻辑标签库,包含的标签可以用来进行逻辑判断、集合迭代和流程控制。 * logic:equal:判断两个值是否相等。 * logic:forward:将请求转发到另一个.action。 * logic:iterate:迭代一个...
6. **JSP Taglib**:一系列 JSP 标签库,如 `<html:form>` 和 `<logic:iterate>`,简化 JSP 页面的编写。 在 Struts 1.3.8 版本中,开发者可能会遇到以下关键特性: - **安全更新**:该版本可能包含了对之前版本中...
5. **JSP(JavaServer Pages)**:作为视图层,JSP用于生成动态HTML响应,Struts通过定制标签库(如struts-bean、struts-html、struts-logic等)增强了JSP的功能。 6. **Tiles**:Struts 1.2.5中集成了Tiles框架,...
4. **struts-logic标签库** 逻辑标签库提供了一系列用于控制页面流程的标签,如`<logic:equal>`用于比较两个表达式的值,`<logic:iterate>`用于遍历集合并重复渲染某个部分,`<logic:forward>`则用于页面重定向。 ...
3. **Logic标签库**:这些标签主要用于处理逻辑控制,如条件判断和循环。例如,`<logic:equal>`比较两个值是否相等,`<logic:iterate>`用于遍历集合对象。 4. **Template标签库**:与Tiles框架关联,现在使用较少。...