Struts2:标签库

使用struts标签库的jsp需要引入标签库
<%@taglib prefix="s" uri="/struts-tags"%>
url来自哪里?

struts2-core-2.3.16.1.jar
→META-INF
    →struts-tags.tld
        →Line11:<uri>/struts-tags</uri>

控制标签:分枝循环

<!-- 【分枝结构if else】 -->
<s:if test="2==1">
    1==1
</s:if>                    

<s:elseif test="3==2">
    2==2
</s:elseif>                    

<s:else>
    3==3
</s:else>
<hr />
<!-- 【循环遍历】 -->
<!-- set定义Map:井号{v:k},数字,字符串都可以 -->
<s:set name="mymap" value="#{‘1‘:‘中国‘,2:‘大英帝国‘,3:‘俄罗斯帝国‘}" />
<!-- set定义List:不加井号,字符串中不能只有一个字符,哪怕是全角字符 -->
<s:set name="mylist" value="{‘中国‘,‘日本‘,‘韩国‘}" />                    

<!-- s:iterator value=可以加井号,不加也可以 -->
<s:iterator value="mymap" var=‘per‘>
    <!-- 取var的下一层必须加井号 -->
    <s:property value="#per.value" />
    <br />
</s:iterator>
<hr />                    

<s:iterator value="mylist" var="per3" status="sta">
    <s:property value="per3" />
    <!-- var:当前元素(保存在context page作用域的一个变量) -->
    <!-- ___status:当前元素的状态,取其中的值必须加井号 -->
    index:<s:property value="#sta.index" />
    count:<s:property value="#sta.count" />
    <s:if test="#sta.even">
        偶数
    </s:if>
    <s:elseif test="#sta.odd">
        奇数
    </s:elseif>
    <s:else>
    </s:else>
    first:<s:property value="#sta.first" />
    last:<s:property value="#sta.last" />
    <br />
</s:iterator>                    

数据标签:显示数据

<!-- 【【数据标签】】 -->                        

<!-- 【set定义值】 -->
<!-- ___Scope存储的范围是在application、session、request、page……。 -->
<!-- ___默认是存储在该stack context中。 -->
<s:set var="v1" value="‘property:中国人‘" scope="session"></s:set>
<!-- attr.***默认是从 page, request, session, then application scopes -->
<s:property value="#attr.v1" />                        

<!-- 【date格式化日期 】 -->
<%
    pageContext.setAttribute("d", new java.util.Date());
%><br>
<s:property value="#attr.d" />
<br>
<s:date name="#attr.d" format="公元yyyy年MM月dd日 hh:mm:ss.SSS" />                        

<!-- 【property】 -->
<!-- ___1.输出(狭义)值栈,2.#输出stack context -->
<!-- ___可以设默认值,如果没有value,取得是值栈顶部对象 -->
<br>
<s:property value="#request.a1" />
<br>
<s:property value="#request.a1" default="万岁" />
<br>
<s:property />
<s:debug />                        

UI标签:控件

<!-- 【【UI标签】】 -->
<style>
.c1 {
    background-color: #EEEEEE;
}
</style>
<s:form>
    <!-- 不在form中不会每个控件占一行 -->                        

    <s:textfield name="nm" label="用户名" tooltip="提示" cssClass="c1" />
    <s:password name="pwd" label="密码" tooltip="请输入密码" />
    <!-- cols:有滚动条时只能输入3列 -->
    <s:textarea name="introduce" label="自我介绍" tooltip="提示" rows="2" cols="3" />                        

    <!-- set定义List:不加井号,字符串中不能只有一个字符,哪怕是全角字符 -->
    <s:set name="weiList" value="{‘张辽‘,‘徐晃‘,‘乐进‘,‘于禁‘,‘张郃‘}" />
    <!-- set定义Map:井号{v:k},数字,字符串都可以 -->
    <s:set name="wuMap"
        value="#{‘101‘:‘黄盖‘,‘102‘:‘程普‘,‘103‘:‘周泰‘,‘104‘:‘太史慈‘,‘105‘:‘甘宁‘}" />                    

    <!-- 【单选:关键属性:list】 -->
    <s:radio name="shu" list="{‘关羽‘,‘张飞‘,‘赵云‘,‘黄忠‘,‘马超‘,‘魏延‘}"
        label="蜀国点将" tooltip="请点将" />
    <!-- 【单选:取值为List】 -->
    <s:radio name="wu" list="weiList" label="魏国点将" />
    <!-- 【单选:取值为Map】 -->                        

    <!-- 默认,listKey=‘key‘,listValue=‘value‘ -->
    <!-- 默认选中:value -->
    <s:radio name="wei" list="wuMap" label="吴国点将" listKey="value"
        value="‘太史慈‘" />
    <!-- 【复选】也可以使用List或Map -->
    <!-- value:默认选中 -->
    <s:checkboxlist name="cwei" label="魏国" list="weiList"
        value="{‘张辽‘,‘徐晃‘}" />
    <s:checkboxlist name="cwu" label="吴国" list="wuMap" value="{‘张辽‘,‘徐晃‘}" />
    <!-- 【下拉列表:select】也可以使用List或Map -->
    <!-- headerKey & headerValue:加的一项,多是提示作用 -->
    <s:select name="swei" label="魏国" list="weiList" headerKey=""
        headerValue="曹操点将" />
    <!-- 默认选项,使用Map时需是key的值 -->
    <s:select name="swu" label="吴国" list="wuMap" value="‘104‘" />
</s:form>                            

时间: 2024-08-24 11:36:01

Struts2:标签库的相关文章

[JavaWeb基础] 014.Struts2 标签库学习

在Struts1和Struts2中都有很多很方便使用的标签库,使用它可以让我们的页面代码更加的简洁,易懂,规范.标签的形式就跟html的标签形式一样.上面的篇章中我们也讲解了自定义标签那么在如何使用标签库就更好理解了,直接理解成第三方的标签库.那么我们要使用它,就要在页面上引入它. <%@ taglib prefix="s" uri="/struts-tags" %> Struts2.0标签大体可分为以下几类: 1.UI(User Interface,用

struts2标签库(1)

struts2标签库 struts2标签库是一个比较完善而且功能强大的标签库,该标签库大大的简化了试图页的代码,从而能够提高视图页面的维护效率,struts2标签库功能强大,而且简单易用. 优点 struts2标签库的标签不依赖于任何表现层技术,其提供了大部分的标签,能够在各种表现层技术中使用,包括最常见的jsp页面Velocity和FreeMarket等模板技术中也能够使用.以下是他的优点: 1)易于安装.标签库很容易从一个jsp项目迁移到其他的项目中. 2)易于扩展.可以无限制地扩展和增加j

struts2 标签库使用

[引用]json 使用 [引用]struts2 标签库使用 2011-05-11 16:13:00|  分类: 默认分类 |  标签: |举报 |字号大中小 订阅 本文转载自kangzye<struts2 标签库使用> 在工程中使用struts2标签 一.struts2标签定义文件在struts2-core-2.0.11.1\META-INF 下面,文件名为struts-tags.tld 二.如果工程使用了servlet2.3规范,要做两件事,就能在工程中使用struts2标签了1: 在web

Struts2标签库(转)

Struts2 标签库详解 Struts2标签库 包括: OGNL Struts2标签分类 控制标签 :(if, elseif,else, iterator, append, merge, generator, subset, sort) 数据标签 :(bean, param,date, debug, include, set, url, push) OGNL Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言(ExpressionLanguag

struts2标签库详解

原文:struts2标签库详解 源代码下载地址:http://www.zuidaima.com/share/1781606927846400.htm 要在jsp中使用Struts2的标志,先要指明标志的引入.通过jsp的代码的顶部加入以下的代码: <%@taglib prefix="s" uri="/struts-tags" %> If elseif  else 描述: 执行基本的条件流转. 参数: 名称 必需 默认 类型 描述 备注 test 是 bo

Struts2标签库汇总和OGNL表达式语言

Struts2标签分类 UI标签:主要用于生成HTML元素的标签 非UI标签:主要用于数据访问.逻辑控制的标签 Ajax标签:用于支持Ajax的标签 表单标签(属于UI标签):用于生成HTML页面的form标签及普通表单元素的标签 非表单标签(属于UI标签):用于生产页面上的树.Tab页等标签 流程控制标签(属于非UI标签):主要包含用于实现分支.循环等流程控制的标签 数据访问标签(属于非UI标签):主要包含用于操作值栈和完成国际化功能的标签. OGNL表达式语言 (Object-Graph N

Struts2标签库

这是个音乐播放列表 1.queryMusic.jsp <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib prefix="s&quo

Struts2 标签库与OGNL的使用

struts2的返回类型、struts的标签库、struts2中完成国际化

struts2的返回类型:在jsp-servlet中, 返回的类型主要有 转发, 重定向: 转发主要是RequestDispatcher的forward方法来进行操作的req.getRequestDispatcher("goods/queryGoodFenYe.jsp").forward(req, resp);重定向主要使用response对象的一些方法来操作:1.response.sendRedirect("index.jsp");2.response.addHe

2使用struts2的标签库 EL表达式

与struts1标签库进行比较,struts2的标签库有一个巨大的改进之处就是struts2标签库不依赖于任何表现层技术.就是说struts2的大部分标签可以在jsp页面中使用,也可以在Velocity和FreeMarker等模板技术中使用. Struts2的标签都定义在s标签库中,URI为/struts-tags的空间下.简单的对struts2的标签进行分类: UI标签,用于HTML元素的标签. 非UI标签,主要用于数据访问,逻辑控制等的标签. Ajax标签,用于Ajax支持的标签. 首先将s