`
默翁1
  • 浏览: 27100 次
社区版块
存档分类
最新评论

struts2标签

 
阅读更多

要使用struts2的标签库,需要引入以下这个语句:

<%@ taglib uri="/struts-tags" prefix="s"%>

一.控制标签

1.if/elseif/else标签

<body>
    <s:set name="age" value="30"></s:set>
    <s:if test="#age>60">老年</s:if>
    <s:elseif test="#age>35">中年</s:elseif>
    <s:elseif test="#age>13">青年</s:elseif>
    <s:else>少年</s:else>
  </body>

 2.iteractor标签

可以指定以下三个属性

(1)value:这是一个可选的属性,指定被迭代的集合,被迭代的集合通常是使用OGNL表达式指定.如果没有value属性,则使用ValueStack栈顶的集合

(2)id: 可选元素,指定了集合元素的ID

(3)status:可选属性,指定迭代器的IteratorStatus实例

  <table border="1" width="300">
    	<s:iterator value="{'aaa','bbb','ccc'}" id="name" status="st">
    		<tr>
    			<td>
    				<s:property value="name"></s:property>
    			</td>
    			<td>
    				<s:property value="#st.count"></s:property>
    			</td>
    		</tr>
    	</s:iterator>
    </table>

 

 <table border="1" width="300">
    	<s:iterator value="#{'aaa':'AAA','bbb':'BBB','ccc':'CCC'}" id="score" status="st">
    		<tr>
    			<td>
    				<s:property value="key"></s:property>
    			</td>
    			<td>
    				<s:property value="value"></s:property>
    			</td>
    		</tr>
    	</s:iterator>
    </table>

 3.append标签:能够将多个集合对象拼接起来,组成一个新的集合.通过拼接,可以允许通过一个<s:iterator>标签完成多个集合的迭代

在使用<s:append>标签时,需要指定var属性,也可以使用id

<s:append var="#newlist">
    	<s:param value="{'AAA','BBB','CCC'}"></s:param>
    	<s:param value="{'DDD','EEE'}"></s:param>
    </s:append>
    <table border="1" width="300">
    <s:iterator value="#newlist" id="name" status="st">
    	<tr>
    			<td>
    				<s:property value="name"></s:property>
    			</td>
    			<td>
    				<s:property value="#st.count"></s:property>
    			</td>
    		</tr>
    </s:iterator>
   </table>

 4.generator标签

根据指定的分隔符将指定的字符串分隔成多个子串,可以使用iterator迭代输出临时生成的多个子串,该标签有以下5个属性

count:可选的属性,该属性指定生成集合中元素的总数

seperator:一个必填的属性,该属性指定用于解析字符串的分隔符

val:必填属性,该属性指定要解析的字符串

convertor:可选属性,将集合中的每个字符串转化为对象

var:可选属性,如果指定了该属性,则将生成的Iterator对象放入Context中

<s:generator val="'A,B,C,D'" separator=','>
   	    <s:iterator>
   	    	<s:property/>
   	    </s:iterator>
   </s:generator>

 

<s:generator val="'A,B,C,D'" separator=',' var="book"/>
   	    <s:iterator value="book" var="name">
   	    	<s:property value="name"/>
   	    </s:iterator>
  </body>

 4.merge标签:跟append标签相似,只是拼接的次序不一样

假设有三个集合,append拼接次序如下

(1)第一个集合第一个元素,第一个集合第二个元素,第一个集合第三个元素,....先拼接完一个集合再接着拼接下一个集合

(2)merge则是:第一个集合第一个元素,第二个集合第一个元素,第三个集合第一个元素,第一个集合第二个元素....

5.subset标签:取得集合的子集,有以下属性

count:指定子集中元素的个数

start:指定子集从源集合中哪个元素开始取值

source:指定源集合

<s:subset source="{'aaa','bbb','ccc'}" start='1' count='2'>
   		<s:iterator>
   			<s:property/>
   		</s:iterator>
   	</s:subset>

 

二.数据标签

1.action标签:可以允许在jsp页面中直接调用action,有以下属性

name:必填属性,指定调用哪个Action

namespace:指定命名空间

executeResult:可选属性,如果该属性为true,则该标签会将action的处理结果(视图资源)包含到本页面中

var,ignoreContextParams指定是否将页面的请求参数传入调用的action中,默认值为false

<s:action name="login/login" executeResult="true"></s:action>

 

2.bean标签.

bean标签的功能是创建一个javaBean实例.在创建JavaBean实例时,可以在体内使用<param.../>标签为该Bean实例传入属性,同时应该为该JavaBean类提供对应的setter方法

<s:bean name="model.Person">
 		<s:param name="username" value="'manting'"></s:param>
 		<s:param name="age" value="23"></s:param>
 		<s:property value="username"/>
 		<s:property value="age"/>
 	</s:bean>

 3.date标签:输出一个格式化的日期

format:日期格式

name:必填属性,指定要格式化的日期值

nice:可选属性,该属性只为true或false,显示指定日期和当前时间的时间差,默认值为false,一般和format不能同时设定

var:指定了该属性,格式化后的字符串将放入StackContex中,并放入requestScope中,不会在页面上输出

<s:date name="#attr.now" format="yyyy年MM月dd日" var="date"/>
 	${date}

 4.form表单标签

1.checkboxlist:可以一次创建多个复选框,功能是一次生成多个HTML标签中的<input type="checkbox">,它根据list属性指定的集合生成多个复选框.

listKey:功能指定集合元素中某个属性为复选框的key

listValue:功能指定集合元素中某个属性作为复选框的value

<s:checkboxlist name="a" list="{'css','htm','java'}" label="请输入选择的科目" lablePosition="top"></s:checkboxlist>
 		<s:checkboxlist name="a" list="#{'css':'css1','htm':'html1','java':'java1'}" label="请输入选择的科目" lablePosition="top" listKey="key" listValue="value"></s:checkboxlist>

 该标签还可以与javaBean类相结合,访问javaBean的属性

public class Book {
	private String name;
	private String author;
	public Book(){}
	public Book(String name,String author){
		this.name=name;
		this.author=author;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getAuthor() {
		return author;
	}
	public void setAuthor(String author) {
		this.author = author;
	}
}

 

public class BookService {
	public Book[] getBooks(){
		return new Book[]{
				new Book("css","张三"),
				new Book("java","李四"),
				new Book("html","王五")
		};
	}
}

 

<s:bean name="service.BookService" id="bs"></s:bean>
 	<s:form>
 		<s:checkboxlist name="a" list="#bs.books" label="请输入喜欢的科目" lablePosition="top" listKey="name" listValue="author"></s:checkboxlist>
 	</s:form>

 2.combobox标签,下拉框标签

 

 

<s:combobox label="选择你喜欢的图书:" theme="css_xhtml" labelposition="top"  list="{'dsj','dsjk','wqie'}" name="book"></s:combobox>

 

分享到:
评论

相关推荐

    struts2标签使用例子

    在Struts2框架中,标签库是其一大特色,它提供了丰富的自定义标签,使得开发者能够更加便捷地创建动态页面。这些标签极大地简化了JSP页面的编写,提高了代码的可读性和可维护性。 1. **Struts2核心标签库**: - `s...

    struts2标签库例子

    Struts2 标签库详解 Struts2 提供了一个强大的标签库,用于简化 Web 应用程序的开发过程。这些标签可以分为两类:通用标签和 UI 标签。下面,我们将详细介绍 Struts2 标签库的使用。 4.1 通用标签 通用标签用来...

    Struts2标签集锦(附Struts2标签详解word文档)

    Struts2标签是Java开发中一个非常重要的工具,它极大地简化了MVC框架下的视图层构建,使得开发者能够更加高效地实现动态网页。在Struts2框架中,标签库是一系列预定义的JSP标签,它们提供了丰富的功能,如数据绑定、...

    使用Struts 2标签的注意事项

    Struts 2 标签的使用注意事项 Struts 2 是一个基于MVC架构的Java Web应用程序框架,它提供了一系列的标签来简化Web开发。然而,在使用Struts 2标签时,需要注意一些重要的事项。 首先,在使用Struts 2标签之前,...

    struts2标签库struts2标签库struts2标签库

    "Struts2标签库详解" Struts2标签库是Struts2框架中的一个重要组件,它提供了一系列的标签,帮助开发者快速构建Web应用程序。在Struts2标签库中,标签可以分为UI标签和非UI标签两大类。UI标签用于生成HTML控件,如...

    Struts2标签使用及API文档

    在Struts2框架中,标签库是其重要组成部分,它提供了丰富的标签来帮助开发者更方便地构建用户界面。下面我们将深入探讨Struts2标签的使用及其API文档。 1. **Struts2标签的分类与功能** - **控制标签**:如`s:if`,...

    struts2标签使用方法

    在Struts2中,标签库是其核心特性之一,它提供了一系列预定义的JSP标签,用于简化视图层的编码,提高代码的可读性和可维护性。下面我们将详细探讨Struts2标签的使用方法以及EL(Expression Language)表达式。 1. *...

    struts2标签下的用户注册

    2. **Struts2标签**:Struts2提供了一系列自定义标签来简化视图层的开发。例如,我们可以使用`&lt;s:textfield&gt;`标签来创建输入框,`&lt;s:password&gt;`标签用于密码输入,`&lt;s:submit&gt;`标签则用于提交表单。 ```jsp ...

    Struts2标签中文文档(html和chm格式)

    在Struts2框架中,标签库是其核心特性之一,它提供了丰富的UI组件和控制逻辑,使得开发者可以更加便捷地进行页面渲染和交互处理。本文将深入探讨Struts2标签的中文文档,以及如何利用这些文档进行有效开发。 首先,...

    struts2 标签库使用文档

    Struts2标签库的组成 Struts2框架的标签库可以分为以下三类: 用户界面标签(UI标签):主要用来生成HTML元素的标签。 表单标签:主要用于生成HTML页面的FORM元素,以及普通表单元素的标签。 非表单标签:主要用于生成...

    struts2标签+ tiles lib

    本文将深入探讨Struts2标签和Tiles库的使用,以及它们在实际开发中的应用。 1. **Struts2标签** Struts2提供了丰富的标签库,这些标签使得开发者能够在JSP页面中方便地实现业务逻辑和控制流程。例如: - `s:...

    Struts2之struts2标签库了解和使用案例struts025

    首先,Struts2标签库分为两大类:核心标签库和展示标签库。核心标签库提供了一组基础功能,如表单处理、控制流程、消息显示等,而展示标签库则包含更具体的UI元素,如数据展示、分页等。了解这些标签库的使用,可以...

    struts2 标签 tags API 参考文档

    参考文档是开发者理解和使用Struts2标签的关键资源,它详细阐述了每个标签的功能、属性、用法及示例,有助于快速学习和掌握Struts2的视图层开发。 通过深入学习和实践Struts2的标签API,开发者可以有效地提升Web...

    Struts 2标签的应用

    利用Struts 2标签创建ex3.jsp页面,此页面提交给tag.action,在structs.xml中配置这个action的转发视图为result.jsp在result.jsp页面中显示ex3.jsp页面控件的值。(源代码和实验报告)

    struts2标签库的使用pdf+Word格式

    Struts2标签库是Java Web开发中非常重要的一个部分,它是Apache Struts框架的一部分,用于简化JSP页面的编写,提高代码的可读性和可维护性。本资源包含了一个PDF和Word格式的文档,旨在详细介绍如何使用Struts2的...

    struts2标签详解与实例

    Struts2标签详解与实例 在Java Web开发中,Struts2框架因其强大的MVC(模型-视图-控制器)架构而备受青睐。Struts2提供了丰富的标签库,简化了视图层的开发,使开发者可以更加专注于业务逻辑。本文将深入探讨Struts...

    struts2 标签

    struts2 标签 Taglib (Struts2标签库)

Global site tag (gtag.js) - Google Analytics