*property 标签

property 标签用来输出一个值栈属性的值, 对于对象栈,打印值栈中对应的属性值;对于Map 栈,打印request,session,application的某个属性值或某个请求参数的值。

示例:

  –输出 Action 属性 customerId 的值:  <s:property value=“customerId”/>

  –输出 session 属性 userName 的值:  <s:property value=“#session.userName”/>

如果 value 属性没有给出, ValueStack 值栈栈顶对象的值被输出

在许多情况下, JSP EL 可以提供更简洁的语法

*url 标签

url 标签用来动态地创建一个 URL

*param 标签

param 标签用来把一个参数传递给包含着它的那个标签

无论在给出 value 值时有没有使用 %{}, Struts 都会对它进行 ognl 求值

如果想传递一个 String 类型的字符串作为参数值, 必须把它用单引号括起来.

可以把 value 属性的值写在开始标签和结束标签之间. 利用这种方式来传递一个 EL 表达式的值

*set 标签

set 标签用来在以下 Map 对象里创建一个键值对:ValueStack 值栈的 ContextMap 值栈;Map 类型的 session,application,request,page 对象。

*push 标签

push 标签的功能和 set 标签类似.push 标签将把一个对象压入 ValueStack 而不是压入 ContextMap.

push 标签在标签起始时把一个对象压入栈, 标签结束时将对象弹出栈.

*if, else 和 elseif 标签

这三个标签用来进行条件测试, 它们的用途和用法类似于 if, else 和 elseif 关键字. 其中 if 和 elseif 必须有 test 属性

可以直接使用值栈中的属性

*iterator 标签

iterator 标签用来遍历一个数组, Collection 或一个 Map, 并把这个可遍历对象里的每一个元素依次压入和弹出 ValueStack 栈

在开始执行时, iterator 标签会先把 IteratorStatus 类的一个实例压入 ContextMap, 并在每次遍历循环时更新它. 可以将一个指向 IteratorStatus 对象的变量赋给 status 属性.

iterator 标签的 status 属性的属性值

*sort 标签

sort 标签用来对一个可遍历对象里的元素进行排序.

*date 标签

date 标签用来对 Date 对象进行排版

format 属性的值必须是 java.text.SimpleDateFormat 类里定义的日期/时间格式之一.

*a 标签

a 标签将呈现为一个 HTML 连接. 这个标签可以接受 HTML 语言中的 a 元素所能接受的所有属性.

可以使用%{}把属性包装,使其进行强制的OGNL解析。

action 标签

action 标签用在页面上来执行一个 action.

action 标签还会把当前 Action 对象压入 ValueStack 值栈的 ContextMap 子栈.

bean 标签

bean 标签将创建一个 JavaBean, 并把它压入 ValueStack 值栈的 ContextMap 子栈. 这个标签的功能与 JSP 中的 useBean 动作元素很相似

include 标签

include 标签用来把一个 Servlet 或 JSP 页面的输出包含到当前页面里来.

append, merge 标签

append 标签用来合并可遍历对象. merge 标签用来交替合并可遍历对象.

generator 标签

generator 标签用来生成一个可遍历对象并把它压入 ValueStack 栈.

generator 标签结束标记将弹出遍历对象

如果在一个 generator 标签里给出了 converter 属性, 新生成的可遍历对象里的每一个元素都会传递到该属性所指定的方法进行必要的转换.

subset 标签

subset 标签用来创建一个可遍历集合的子集.  subset 标签通过 decider 属性来创建一个可遍历集合的子集.

struts2 通用标签的更多相关文章

  1. struts2通用标签

    Struts2框架为我们提供了很多标签,这些标签总体上可以分为两类:通用标签和UI标签.通用标签分为两类:数据标签和控制标签.数据标签用于访问值栈中数据,控制标签用于控制呈现页面时数据执行流程.使用S ...

  2. struts2框架学习之第三天

    day03 上传下载 1        上传下载组件介绍 l  jspSmartUpload(model1的年代): l  apache-commons-fileupload,Struts2默认上传组 ...

  3. Strut2开发经验总结

    1.如何在html静态页面中使用struts tomcat目录/conf/web.xml 文件中,找到 <servlet-mapping> <servlet-name>jsp& ...

  4. [原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  5. struts2 OGNL配和通用标签和其它标签的使用

    三.OGNL配合通用标签的其他使用 1.iterator标签(很重要) 动作类 package com.itheima.web.action; import java.util.ArrayList; ...

  6. struts2笔记

    Struts2 中, HTML 表单将被直接映射到一个 POJO,通过params拦截器,类中定义对应属性,及对应set方法即可. Struts2 中,任何一个POJO都可以是一个action类. S ...

  7. struts2案例

    Struts 2是一个MVC框架,以WebWork框架的设计思想为核心,吸收了Struts 1的部分优点.Struts 2拥有更加广阔的前景,自身功能强大,还对其他框架下开发的程序提供很好的兼容性.下 ...

  8. struts2标签

    一.通用标签 1.property     Name Required Default Evaluated Type Description default false   false String ...

  9. struts2基础——标签

    一.通用标签 1.s:property (读取值栈中对象的属性值) 属性:value:指定OGNL表达式:default:OGNL表达式返回为 null 时,使用默认值:escape:是否对 HTML ...

随机推荐

  1. centos用户权限设置

    了解常见的账号配置文件 学会管理用户账号.组账号 学会设置目录或文件的权限 学会设置目录或文件的归属 用户账号文件/etc/passwd   :保存用户名称.宿主目录.登录shall等基本信息 每一行 ...

  2. 彻底理解ThreadLocal

    ThreadLocal是什么 早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路.使用这个工具类可以很简洁地 ...

  3. mybatis动态sql中foreach标签的使用

    foreach标签主要用于构建in条件,他可以在sql中对集合进行迭代.如下: <delete id="deleteBatch"> delete from user w ...

  4. Jqplot使用总结之二(双Y轴)

    最近需要用Jqplot做双Y轴的Chart图,首先我找到了文档上的例子并对数据做了一些调整: 1.例子展示: var s1 = [["2002-01-01", 112000], [ ...

  5. Matlab求齐次方程的解

    % 求Ax=0的解: r=rank(A): x=null(A,r) 求出来x的是归一化后的解.

  6. container 的背后

    如果要看laravel的单个功能的源代码,首先去找对应得ServiceProvider,例如加密功能hash,则按一下步骤查看源代码: HashServiceProvider.php(主要是看regi ...

  7. H5网页播放器播不了服务器上的mp4视频文件

    打开IIS,在功能视图里找到MIME类型菜单,打开该菜单后鼠标右键添加.mp4扩展名的MIME类型video/mp4 其他视频文件播放不了估计也得在IIS里添加对应的MIME类型(从服务器下载文件时也 ...

  8. js 返回上一页和刷新

    1. Javascript 返回上一页history.go(-1), 返回两个页面: history.go(-2); 2. history.back(). 3. window.history.forw ...

  9. C/C++源代码到可执行程序的过程详解

    编译,编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成可执行程序. 源代码-- ...

  10. linux shell中,单引号、 双引号,反引号(``),$()的区别

    一.单引号和双引号 首先,单引号和双引号,都是为了解决中间有空格的问题. 空格在linux中时作为一个很典型的分隔符,比如 string1=this is a string,这样执行会报错.为了避免这 ...