Struts2的标签用法和示例

1)s:property标签:property 标签用来输出一个值栈属性的值
示例:
输出 Action 属性 customerId 的值: <s:property value=“customerId”/>
输出 session 属性 userName 的值: <s:property value=“#session.userName”/>
notice:如果 value 属性没有给出, ValueStack 值栈栈顶对象的值被输出,在许多情况下, JSP EL 可以提供更简洁的语法<s:property value=“customerId”/>可以写成${customerId}
2)s:url标签:可以用来动态的创建一个URL,常用参数如下:(Struts2中对Value的值有自动匹配功能;也就是OGNL解析)
var:用来被压入contextMap中的键值
value:指定URL值的值
includeparam:post,get,all:指定是否包含请求参数
Action:指定Action
method:指定Action方法
namespace:指定URL的命名空间

3)param

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

•无论在给出 value 值时有没有使用 %{}, Struts 都会对它进行 ognl 求值
•如果想传递一个 String 类型的字符串作为参数值, 必须把它用单引号括起来.
•可以把 value 属性的值写在开始标签和结束标签之间. 利用这种方式来传递一个 EL 表达式的值
 
4)set 标签用来在以下 Map 对象里创建一个键值对:

–ValueStack 值栈的 ContextMap 值栈
–Map 类型的 session 对象
–Map 类型的 application 对象
–Map 类型的 request 对象
–Map 类型的 page 对象
 5)

•push 标签将把一个对象压入 ValueStack 而不是压入 ContextMap.
•push 标签在标签起始时把一个对象压入栈, 标签结束时将对象弹出栈.
 6)if, else 和 elseif 标签

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

7)

•iterator 标签用来遍历一个数组, Collection 或一个 Map, 并把这个可遍历对象里的每一个元素依次压入和弹出 ValueStack
•在开始执行时, iterator 标签会先把 IteratorStatus 类的一个实例压入 ContextMap, 并在每次遍历循环时更新它. 可以将一个指向 IteratorStatus 对象的变量赋给 status 属性.
•top 指代当前迭代元素,可以为对象
8)
•sort 标签用来对一个可遍历对象里的元素进行排序.
 9)
•date 标签用来对 Date 对象进行排版
•format 属性的值必须是 java.text.SimpleDateFormat 类里定义的日期/时间格式之一.
 10)
•action 标签用在页面上来执行一个 action.
•action 标签还会把当前 Action 对象压入 ValueStack 值栈的 ContextMap 子栈.
11)
•bean 标签将创建一个 JavaBean, 并把它压入 ValueStack 值栈的 ContextMap 子栈. 这个标签的功能与 JSP 中的 useBean 动作元素很相似
 12)
•include 标签用来把一个 Servlet 或 JSP 页面的输出包含到当前页面里来.
 13)
•append 标签用来合并可遍历对象.
•merge 标签用来交替合并可遍历对象.
14)
•generator 标签用来生成一个可遍历对象并把它压入 ValueStack 栈.
•generator 标签结束标记将弹出遍历对象
•如果在一个 generator 标签里给出了 converter 属性, 新生成的可遍历对象里的每一个元素都会传递到该属性所指定的方法进行必要的转换.
15)
•subset 标签用来创建一个可遍历集合的子集.
•subset 标签通过 decider 属性来创建一个可遍历集合的子集.
  表单标签:
•textfield 标签将被呈现为一个输入文本字段,
•password 标签将被呈现为一个口令字段,password 标签扩展自 textfield 标签, 多了一个 showPassword 属性. 该属性时布尔型. 默认值为 false, 它决定着在表单回显时是否显示输入的密码.
•hidden 标签将被呈现为一个不可见字段.
•submit 标签将呈现为一个提交按钮. 根据其 type 属性的值. 这个标签可以提供 3 种呈现效果:
  –input: <input type=“submim” …/>
  –button: <input type=“button” …/>
  –image: <input type=“image” />
•textarea 标签将呈现为一个 HTML 文本域元素
 
•checkbox 标签将呈现为一个 HTML 复选框元素. 该复选框元素通常用于提交一个布尔值
•在普通的HTMLcheckbox 标签在表单被提交时, 如果某个复选框被选中了, 它的值将为 true, 这个复选框在 HTTP 请求里增加一个请求参数.但如果该复选框未被选中, 在请求中就不会增加一个请求参.
•checkbox 标签解决了这个局限性, 它采取的办法是为单个复选框元素创建一个配对的不可见字段(无论是否被选中都有值)
 
•list, listKey, listValue 这 3 个属性对 radio(多选按钮), select(下拉列表框), checklist 等标签非常重要
•可以把一个 String, 一个数组, 一个 Enumeration, Iterator, Map 或 Collection 赋给 list 属性. 

•select 标签将呈现一个 select 元素.
•optiongroup 标签对 select 元素所提供的选项进行分组. 每个选项有它自己的来源.
 
•checkboxlist 标签将呈现一组多选框.

checkbox 标签被映射到一个字符串数组或是一个基本类型的数组. 若它提供的多选框一个也没有被选中, 相应的属性将被赋值为一个空数组而不是空值.
 
 
 
 
 

Strut2中的标签的更多相关文章

  1. Html中<font>标签的使用

    Html中<font>标签的使用 <!doctype html> <html lang="en"> <head> <meta ...

  2. jsp2.0+中的标签文件,JSP Fragment技术

    刚进新公司不久,今天在看到项目中用到了.tag文件.刚开始我还以为这个是第三方类似freemarker的模板技术.问了下项目组的其他人员,原来这是jsp2.0以来就有的JSP Fragment技术.以 ...

  3. Html中<a>标签的样式的设置

    html中<a>标签的样式的设置.. ------------------------ <html> <head> <title>这是网页选项卡的名称& ...

  4. 禁止手机页面中A标签长按弹出路径框

    //禁止手机页面中A标签长按弹出路径框    window.onload=function(){        document.documentElement.style.webkitTouchCa ...

  5. JSP中<img>标签引用本地图片

    问题描述: jsp页面中<img>标签如何读取本地文件夹中的图片. 问题起因: 由于上传图片至本地文件夹中,图片路径为: D:/upload/file/image/img.jpg 所以将这 ...

  6. HTML中<meta>标签如何正确使用

    HTML中<meta>标签如何正确使用 如果我们在浏览器中按下F12或者Ctrl+shift+J,便可以打开开发者工具,在element中即可看到<head>元素中有不少< ...

  7. Jquery获取iframe子/父窗口中的标签

    获取子窗口中的标签: $("#id",document.frames('iframename').document); 获取父窗口中的标签: $('#id', parent.doc ...

  8. 在php中,如何将一个页面中的标签,替换为用户想输出的内容

    前言:釜山行,暴露人性, ———————————————————————————————————————————————————————————————————————————— 今天说一个最简单的例 ...

  9. JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门

    2 JSP内置标签(美化+业务逻辑)   1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容   2)JSP内 ...

随机推荐

  1. Atitit.注解解析(1)---------词法分析 attilax总结 java .net

    Atitit.注解解析(1)---------词法分析 attilax总结  java .net 1. 应用场景:::因为要使用ui化的注解 1 2. 流程如下::: 词法分析(生成token流) & ...

  2. 【Android】16.0 第16章 自定义服务和系统服务—本章示例主界面

    分类:C#.Android.VS2015: 创建日期:2016-03-01 一.简介 本章主要演示Started Service.带Intent过滤器的Started Service.IntentSe ...

  3. Spring学习11-Spring管理各种数据源

    Spring 完全可以不依赖容器,自己管理数据源,但是却依赖第三方的开源的数据源管理框架.    Spring在第三方依赖包中包含了两个数据源的实现类包,其一是Apache的DBCP,其二是 C3P0 ...

  4. Sphider + SCWS 打造完美PHP中文搜索引擎

    今日需要为几个网站做个全文搜索引擎,找了几个PHP开源项目,先试了一下Sphinx ,可惜是基于数据库的,相当于数据库搜索的扩展.Sphider还不错,不过中文的分词不行,基本只能靠空格和符号进行分词 ...

  5. Linux之目录的操作(创建、移动、改名、删除、复制)

    .创建 mkdir [dirname] //创建单个目录 mkdir -p newdir1/newdir2/newdir3 //递归创建多级目录 mkdir dir1/dir2/newdir3 //在 ...

  6. mouseover mouseenter mouseout mouseleave

    mouseover与mouseenter 不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件. 只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件. mouseou ...

  7. The Tao Of Programming翻译

    The Tao Of Programming里面有许多道家思想,我也喜欢道家学说, 萌生了用文言文翻译的想法,不足之处还请方家指正. 翻译后的文档放在gitcafe上了,欢迎大家fork修正.

  8. lua工具库penlight--09技术选择

    模块化和粒度 在理想的世界,一个程序应该只加载它需要的库.Penlight需要额外100 Kb 的字节码来工作.它是简单但却乏味要加载你需要什么: local data = require 'pl.d ...

  9. phoenix 入门

    http://phoenix.apache.org/Phoenix-in-15-minutes-or-less.html Blah, blah, blah - I just want to get s ...

  10. java中,scala中代码检测当前环境的版本

    //来自spark源码// sparkContext初始化的时候写着  private def warnDeprecatedVersions(): Unit = { val javaVersion = ...