`
kiddwyl
  • 浏览: 403431 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Struts标签-Logic

阅读更多
Struts标签-Logic
2007-11-06 22:28

 

 

Struts的Logic标签可以根据特定的逻辑条件来判断网页的内容,或者循环遍历集合元素,它和HTML,Bean标签是Struts应用种最常用的三个标签.它的功能主要是比较运算,进行字符串的匹配,判断指定的内容是否存在,循环遍历集合,进行请求转发和重定向,下面具体的说明标签的用途:

<logic:equal>变量等于指定的常量

<logic:notEqual>变量不等于指定的常量

<logic:lessThan>变量小于指定的常量

<logic:lessEqual>变量小于或者等于指定的常量

<logic:geraterThan>变量大于指定的常量

<logic:geraterEqual>变量大于或等于指定的常量

以上这些标签都很类似,有共同的属性,cookie属性指定cookie属性的值,然后用value设置的常量进行比较.header属性设置header请求头的值,也是通过value属性设置的值进行比较.parameter属性设置一个请求参数,然后也是通过value属性设置的值进行比较.name属性设置一个变量,然后用value比较.如果同时设置了name和property属性,此时name属性指定已经存在的JavaBean,property属性指定Bean的属性.这个标签感觉十分简单,用法也十分单一,下面研究一下进行字符串匹配的标签和判断特定内容的标签.

<logic:match>标签是判断变量种是否包含常量字符串的,<logic:netMatch>也判断是否不包含字符串的,用name属性定义一个字符串变量,然后用value属性的值去判断变量是否包含这个字符串或者是不包含这个字符串,判断成功返回true.

<logic:empty>和<logic:netEmpty>标签可以判断指定的变量是否为空的字符串,可以通过name属性来判断一个字符串是否为null.例如是请求参数的字符串.

<logic:present>和<logic:notPresent>标签可以判断指定的对象是否为空,这个标签的属性很多.cookie属性判断Cookie是否存在.Header属性判断HTPP请求头是否存在.role属性是判断当前的权限的用户是否是指定的安全角色.user属性是判断当前通过权限验证的用户是否拥有指定的用户名.parameter属性是判断请求的参数是否存在.name属性是用来判断指定的Bean是否存在.同时设置name和property属性就是判断Bean种的具体属性是否存在了.

<logic:messagesPresent>和<logic:messagesNotPresent>标签是用来判断是否在request范围内的特定的ActionMessages或者是子类ActionErrors对象.name属性是用来检索ActionMessages对象的key,property指定从ActionMessages集合对象中检索某条消息key也就是具体的ActionMessage对象.

进行循环遍历Logic标签是Logic标签库中最复杂的标签,也是用途最广泛的标签,它能够在一个循环中遍历数组,Collection,Enumeration,Irerator或者Map中的所有元素

1)              遍历集合的标签<logic:iterate>的name属性指定需要进行遍历的集合对象,它每次从集合中检索出一个元素,然后存放在page范围内,并以id属性指定这个字符串来命名这个元素,最好是在里面嵌套一个<bean:write>标签,把刚刚遍历的第一个id指定的字符串输出,然后在循环在输出.length属性需要遍历的元素的数目,如果没有设置length属性,就遍历集合中的所有元素.offset属性指定开始遍历的其实位置,默认值是0.indexId属性定义一个代表当前被遍历元素的系列号,这个变量存放在page范围内,可以被<bean:write>标签访问输出输出的是int的数字.例如1.2.3.4等.可以用户输出输出的元素的系列号.

2)              遍历Map是通过<logic:iterate>标签,name属性指定一个HashMap,存放在request范围,然后赋给id指定的变量,indexId可以指定索引编号,然后通过<bean:write>标签输出出来.在HashMap的每一个元素都是一个集合对象,所以可以嵌套使用.就是说<logic:inerate>这个标签既可以把Collection的元素弄出来负给一个变量也可以弄Map的.所以说它的功能强大.还有一个collection属性可以设置一个表达式,这个表达式返回的结果可以作为,<logic:inerate>标签输出的集合或者Map.这个属性类似name属性.

最后研究一下进行请求转发和重定向的Logic标签,<logic:forward>标签用于请求转发,它的name属性指定转发的目标,与Struts配置文件中的<global-forwards>元素和的子元素<forward>元素匹配.简单的说就是<logic:forward>标签的name属性定义的值,要去找到<golbal-forwards>子元素<forward>元素的匹配的name属性,然后通过path指定的路径进行转发.重定向用<logic:redierct>标签它的forward,href和page属性指定重定向的目标,这几个属性和<html:link>标签的属性用法十分相似.

关于标签的部分我就说到这里,因为我个人觉得在Struts中最常用的无非也就是这三个标签库了.

分享到:
评论

相关推荐

    Struts标签 -LOGIC标签

    在Struts框架中,逻辑标签(LOGIC标签)是JSP标签库的一部分,用于处理页面的流程控制和逻辑判断。这些标签简化了在JSP页面上进行条件判断和循环操作,从而使得代码更易读、更易于维护。 **1. `logic:iterate`标签*...

    Struts标签-logic标签-源代码

    Struts标签 logic标签所有应用源代码 看懂了这个,你就会明白bean标签所有的使用方法 我还上传了html标签、bean标签,这三种标签在Struts中用得最多的,希望能给你一些帮助

    Struts1-Logic标签

    总的来说,Struts1的`Logic`标签库为开发者提供了强大的条件控制和流程管理工具,极大地提高了开发效率和代码可读性。通过这些标签,开发者可以在JSP页面中直接进行逻辑判断,避免了过多的Java脚本,使得页面更加...

    struts-logic标签

    struts-logic标签 自已讲课用的 初稿 PPT

    struts标签-手册

    Struts标签是Apache Struts框架中的一个重要组成部分,它提供了一种在JavaServer Pages (JSP)页面中声明式地操作模型数据和控制流程的方式。这个手册可能是为了帮助开发者更好地理解和使用Struts框架中的标签库。 ...

    struts-1.2.9-lib.zip和struts-1.2.9-src.zip

    2. **标签库**:包括`struts-bean.jar`、`struts-html.jar`、`struts-logic.jar`和`struts-nested.jar`等,提供了一系列预定义的JSP标签,如logic标签用于流程控制,bean标签用于展示数据,html标签则用于表单元素的...

    struts-logic iterate标签学习指南

    Struts-Logic Iterate标签是Apache Struts框架中的一个重要组件,用于在JSP页面中迭代集合对象,如数组、列表或Map。这个标签提供了一种简洁的方式来遍历数据,并且可以与Struts的其他标签(如`bean:write`)配合...

    struts标签-手册.chm

    Struts提供了五个标签库,即:HTML、Bean、Logic、Template和Nested。 标签库 说明 HTML 标签 用来创建能够和Struts 框架和其他相应的HTML 标签交互的HTML 输入表单 Bean 标签 在访问JavaBeans 及其属性,...

    MLDN框架笔记大全

    07 Struts标签 -LOGIC标签 08 Struts标签- HTML标签 09 Struts高级部分(1)(解决重复提交、上传组件) 10 Struts高级部分(2)(常用Action、验证框架、动态Form) 11 留言管理程序_使用Struts + DAO...

    struts1.2-jars.zip

    - **struts-logic.jar**:提供了逻辑标签库,如条件判断、循环等。 - **struts-tiles.jar**:Tiles框架,用于布局和组合页面,便于构建复杂的用户界面。 - **commons-logging.jar**:Apache Commons Logging库,...

    Struts标签-htlm标签-源代码

    Struts标签 html标签所有应用源代码 看懂了这个,你就会明白bean标签所有的使用方法 我还上传了bean标签、logic标签,这三种标签在Struts中用得最多的,希望能给你一些帮助

    Struts标签-bean标签-源代码

    此外,源代码分析是提高编程技能的重要途径,通过查看Struts标签的源代码,我们可以了解其内部工作原理,学习如何设计和实现类似的标签库,这对提升我们的开发能力非常有帮助。因此,花时间研究这些源代码是值得的。...

    struts1-core.jar

    10. **标签库**:Struts1提供了一系列JSP标签,简化了视图层的开发,如logic标签用于流程控制,bean标签用于对象操作,html标签用于表单元素。 压缩包中的"struts1-core"可能包含了上述所有核心组件,便于开发者...

    J2EE三大框架_笔记_a

    7-Struts标签 -LOGIC标签笔记 8-Struts标签- HTML标签笔记 9-Struts高级部分(1)(解决重复提交、上传组件)笔记 10-Struts高级部分(2)(常用Action、验证框架、动态Form)笔记 J2EE框架_笔记_b: 11-留言管理程序...

    J2EE框架_笔记_b

    7-Struts标签 -LOGIC标签笔记 8-Struts标签- HTML标签笔记 9-Struts高级部分(1)(解决重复提交、上传组件)笔记 10-Struts高级部分(2)(常用Action、验证框架、动态Form)笔记 J2EE框架_笔记_b: 11-留言管理程序...

    J2EE框架_笔记_c

    7-Struts标签 -LOGIC标签笔记 8-Struts标签- HTML标签笔记 9-Struts高级部分(1)(解决重复提交、上传组件)笔记 10-Struts高级部分(2)(常用Action、验证框架、动态Form)笔记 J2EE框架_笔记_b: 11-留言管理程序...

    struts-1.3.8-lib(new)

    5. **struts-logic.jar**:提供了逻辑控制的标签,如if、iterate等。 6. **struts-navigator.jar**:提供了一些导航和辅助功能。 7. **struts-password.jar**:用于密码加密和安全相关的功能。 8. **struts-taglib....

    struts-1.3.8-all.zip

    此外,还需要编写ActionForm类,实现业务逻辑的Action类,以及使用JSP和Struts标签创建用户界面。 Struts 1.3.8虽然已经是一个较老的版本,但它的设计理念和模式在现代Web开发中仍然有其价值。例如,MVC模式被广泛...

    Struts1-标签

    Struts标签库的设计初宗之一是为了避免在JSP页面中使用Java代码片段(即scriptlet),以使JSP页面更清晰,更易于维护。然而,在实际使用中,仍需注意如果要使用表达式,需要确保提供了完整的表达式,以避免出现解析...

    javaEE框架笔记,识货人下

    1-JSP+JDBC_假分页笔记.pdf 10-Struts高级部分(2)(常用Action、验证框架、动态Form)笔记...7-Struts标签 -LOGIC标签笔记.pdf 8-Struts标签- HTML标签笔记.pdf 9-Struts高级部分(1)(解决重复提交、上传组件)笔记.pdf

Global site tag (gtag.js) - Google Analytics