`
javazfc
  • 浏览: 15592 次
  • 性别: Icon_minigender_1
  • 来自: 成都
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

struts2 标签的基本用法

阅读更多
一、 url标签
 简介
url标签用于生成一个URL地址,可以通过url标签指定param子元素,从而向指定URL发送请求参数。
1. jsp代码
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
<title>使用s:url来生成一个URL地址</title>
</head>
<body>
<h2>s:url来生成一个URL地址</h2>
只指定value属性的形式。<br>
<s:url value="editGadget.action"/>
<hr>
指定action属性,且使用param传入参数的形式。<br>
<s:url action="showBook">
<s:param name="author" value="'yeeku'" />
</s:url>
<hr>
既不指定action属性,也不指定value属性,且使用param传入参数的形式。<br>
<s:url includeParams="get" >
<s:param name="id" value="%{'22'}"/>
</s:url>
<hr>
同时指定action属性和value属性,且使用param传入参数的形式。<br>
<s:url action="showBook" value="xxxx">
<s:param name="author" value="'yeeku'" />
</s:url></body></html>
备注:我们用的最多的是以下的方式:
<s:url id="url" action="preModifyCategoryName" includeParams="none" namespace="/category">
<s:param name="categoryId" value="%{categoryId}"/>
</s:url>
<s:a href="%{url}">
<s:text name="modify_category_name"/>
</s:a>
2. 页面效果
s:url来生成一个URL地址
只指定value属性的形式。
editGadget.action
________________________________________
指定action属性,且使用param传入参数的形式。
/portal/test/showBook.action?author=yeeku
________________________________________
既不指定action属性,也不指定value属性,且使用param传入参数的形式。
/portal/test/s-url.jsp?id=22
________________________________________
同时指定action属性和value属性,且使用param传入参数的形式。
xxxx?author=yeeku
二、 s:checkboxlist标签
 简介
Checkboxlist标签可以一次创建多个复选框,用于一次生成多个HTML标签中的<inputtype=”checkbox” …/>,它根据list属性指定的集合来生成多个复选框。
1. jsp代码
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
<title>使用s:checkboxlist生成多个复选框</title>
<s:head/>
</head>
<body>
<h3>使用s:checkboxlist生成多个复选框</h3>
<s:form>
<!-- 使用简单集合来生成多个复选框 -->
<s:checkboxlist name="a" label="请选择您喜欢的图书" labelposition="top"
list="{'Spring2.0宝典' , '轻量级J2EE企业应用实战' , '基于J2EE的Ajax宝典'}"/>
<!-- 使用简单Map对象来生成多个复选框 -->
<s:checkboxlist name="b" label="请选择您想选择出版日期" labelposition="top"
list="#{'Spring2.0宝典':'2006年10月' , '轻量级J2EE企业应用实战':'2007月4月' , '基于J2EE的Ajax宝典':'2007年6月'}"
listKey="key"
listValue="value"/>
<s:bean name="lee.BookService" id="bs"/>
</s:form>
</body>
</html>
备注
 <!-- 使用集合里放多个JavaBean实例来生成多个复选框 -->
<s:checkboxlist name="b" label="请选择您喜欢的图书" labelposition="top"
list="#bs.books"
listKey="name"
listValue="author"/>
 listKey:该属性指定集合元素中某个属性作为复选框的value.
 listValue: 该属性指定集合元素中某个属性作为复选框的标签。
2. 页面效果
三、 使用s:combobox生成下拉输入框
 简介
Combobox标签生成一个单行文本框和下拉列表框的组合,但两个表单元素只对应一个请求参数,只有单行文本框里的值才包含请求参数,而下拉列表框则只是用于辅助输入,并没有name,也不会产生请求参数。使用该标签,需要指定一个list属性,该list属性指定的集合将用于生成列表项。
1. Jsp代码
<body>
<h3>使用s:combobox生成下拉输入框</h3>
<s:form>
<s:combobox label="请选择您喜欢的图书" theme="css_xhtml" labelposition="top"
list="{'Spring2.0宝典' , '轻量级J2EE企业应用实战' , '基于J2EE的Ajax宝典'}"
size="20" maxlength="20" name="book"/>
</s:form>
</body>
1. 页面效果
第一步
第二步
备注:
与<s:select …/>标签不同的是,对于下面的下拉列表,无需指定listKey和listValue属性,因为此处的下拉列表,不再用于发送请求参数,而仅仅是用于辅助输入,因此该下拉列表的value没有任何意义。(注:使用combobox标签时不能指定listKey和 listValue属性)
四、 使用s:datetimepicker生成日期选择框
 简介
Datetimepicker标签生成一个日期,时间下拉选择框,当我们使用该日期,时间选择框选择某个日期,时间,系统会自动将选中的日期,时间输入指定文本框。
1. Jsp代码
<body>
<h3>使用使用s:datetimepicker生成日期选择框</h3>
<s:form theme="simple">
日期选择部件,指定toggleType属性,且指定value="today"<br>
<s:datetimepicker name="order.date" label="购买日期" toggleType="explode" value="today"/><hr>
日期选择部件,指定了format属性<br>
<s:datetimepicker name="order.date" label="购买日期" displayFormat="dddd年MM月dd日"/><hr>
日期选择部件,指定了weekStartsOn属性<br>
<s:datetimepicker name="order.date" label="购买日期" displayFormat="dddd年MM月dd日" weekStartsOn="2"/><hr>
时间选择部件<br>
<s:datetimepicker label="选择出发时间'" name="start" type="time" value="13:00"/><hr>
</s:form>
</body>
2. 页面效果
第一步
第二步
第三步 :
第四步:
备注
 toggleType:指定日期选择框出现、隐藏的方式,可以选择plain,wipe,explode和fade4个值。
 value:指定当前的日期,时间。可使用today来代表今天。
五、 使用s:select生成下拉选择框
 简介
Select 标签用于生成一个下拉列表框,通过为该元素指定list属性,系统会使用list属性指定的集合来生成下拉列表框的选项。
1. Jsp代码
<body>
<h3>使用s:select生成下拉选择框</h3>
<s:form>
<!-- 使用简单集合来生成下拉选择框 -->
<s:select name="a" label="请选择您喜欢的图书" labelposition="top" multiple="true"
list="{'Spring2.0宝典' , '轻量级J2EE企业应用实战' , 'JavaScript: The Definitive Guide'}"/>
<!-- 使用简单Map对象来生成下拉选择框 -->
<s:select name="b" label="请选择您想选择出版日期" labelposition="top"
list="#{'Spring2.0宝典':'2006年10月' , '轻量级J2EE企业应用实战':'2007月4月' , '基于J2EE的Ajax宝典':'2007年6月'}"
listKey="key"
listValue="value"/>
<s:bean name="lee.BookService" id="bs"/>
<!-- 使用集合里放多个JavaBean实例来生成下拉选择框 -->
<s:select name="b" label="请选择您喜欢的图书" labelposition="top" multiple="true"
list="#bs.books"
listKey="author"
listValue="name"/>
</s:form>
</body>
2. 页面效果
第二步
六、使用s:radio生成多个单选框
 简介
s:radio生成多个单选框。
1. Jsp代码
<body>
<h3>使用s:radio生成多个单选框</h3>
<s:form>
<!-- 使用简单集合来生成多个单选框 -->
<s:radio name="a" label="请选择您喜欢的图书" labelposition="top"
list="{'Spring2.0宝典' , 'Spring In Action' , 'JavaScript: The Definitive Guide'}"/>
<!-- 使用简单Map对象来生成多个单选框 -->
<s:radio name="b" label="请选择您想选择出版日期" labelposition="top"
list="#{'Spring2.0宝典':'2006年10月' , '轻量级J2EE企业应用实战':'2007月4月' , '基于J2EE的Ajax宝典':'2007年6月'}"
listKey="key"
listValue="value"/>
<s:bean name="lee.BookService" id="bs"/>
<!-- 使用集合里放多个JavaBean实例来生成多个单选框 -->
<s:radio name="c" label="请选择您喜欢的图书" labelposition="top"
list="#bs.books"
listKey="author"
listValue="name"/>
</s:form>
</body>
2、 页面效果
七、使用s:optgroup生成下拉选择框的选项组
 简介
Optgroup标签用于生成一个下拉列表框的选项组。
1. Jsp代码
<body>
<h3>使用s:optgroup生成下拉选择框的选项组</h3>
<s:form>
<!-- 使用Map对象来生成下拉选择框的选项组 -->
<s:select label="选择您喜欢的图书"
name="book"
list="#{'Spring2.0宝典':'李刚','轻量级J2EE企业应用实战':'李刚','基于J2EE的Ajax宝典':'李刚'}"
listKey="value"
listValue="key">
<s:optgroup label="Rod Johnson"
list="#{'Expert One-on-One J2EE Design and Development':'Johnson'}"
listKey="value"
listValue="key"/>
<s:optgroup label="David Flanagan"
list="#{'JavaScript: The Definitive Guide':'David'}"
listKey="value"
listValue="key"/>
</s:select>
</s:form>
</body>
2、 页面效果
第二步
八、使用s:optiontransferselect来生成可移动列表项的下拉列表框
 简介
使用s:optiontransferselect来生成可移动列表项的下拉列表框。
1. Jsp代码
<body>
<h3>使用s:optiontransferselect来生成可移动列表项的下拉列表框</h3>
<s:form>
<!-- 使用简单集合对象来生成可移动的下拉列表框 -->
<s:optiontransferselect
label="请选择你喜欢的图书"
name="cnbook"
leftTitle="中文图书:"
rightTitle="外文图书"
list="{'Spring2.0宝典','轻量级J2EE企业应用实战','基于J2EE的Ajax宝典'}"
multiple="true"
addToLeftLabel="向左移动"
selectAllLabel="全部选择"
addAllToRightLabel="全部右移"
headerKey="cnKey"
headerValue="--- 选择中文图书 ---"
emptyOption="true"
doubleList="{' J2EE Design and Development', 'The Definitive Guide'}"
doubleName="enBook"
doubleHeaderKey="enKey"
doubleHeaderValue="--- 选择外文图书 ---"
doubleEmptyOption="true"
doubleMultiple="true"
/>
</s:form>
</body>
2、 页面效果
备注:
如果我们不想用它默认的图标,我们可以添加标签,将它默认的覆盖掉:例如我们添加如下代码:
addToRightLabel="向右移动"
leftDownLabel="下移按钮 "
页面效果
九、使用s:updownselect生成可上下移动选项的下拉选择框
 简介
Updownselect标签的用法非常类似于select标签的用法,区别是该标签声称的列表框可以支持选项的上下移动。
1. Jsp代码
<body>
<h3>使用s:updownselect生成可上下移动选项的下拉选择框</h3>
<s:form>
<!-- 使用简单集合来生成可上下移动选项的下拉选择框 -->
<s:updownselect name="a" label="请选择您喜欢的图书" labelposition="top"
moveUpLabel="向上移动"
list="{'Spring2.0宝典' , '轻量级J2EE企业应用实战' , 'JavaScript: The Definitive Guide'}"/>
<!-- 使用简单Map对象来生成可上下移动选项的下拉选择框
且使用emptyOption="true"增加一个空选项-->
<s:updownselect name="b" label="请选择您想选择出版日期" labelposition="top"
moveDownLabel="向下移动"
list="#{'Spring2.0宝典':'2006年10月' , '轻量级J2EE企业应用实战':'2007月4月' , '基于J2EE的Ajax宝典':'2007年6月'}"
listKey="key"
emptyOption="true"
listValue="value"/>
<s:bean name="lee.BookService" id="bs"/>
<!-- 使用集合里放多个JavaBean实例来可上下移动选项的生成下拉选择框 -->
<s:updownselect name="c" label="请选择您喜欢的图书的作者" labelposition="top"
selectAllLabel="全部选择" multiple="true"
list="#bs.books"
listKey="author"
listValue="name"/>
</s:form>
</body>
2.页面效果
十、使用s:doubleselect生成级联下拉列表框
 简介
1.Jsp代码
<body>
<h3>使用s:doubleselect生成级联下拉列表框</h3>
<s:form action="x" method="post" theme="simple">
<s:doubleselect
label="请选择您喜欢的图书"
name="author" list="{'李刚', 'David'}"
doubleList="top == '李刚' ? {'Spring2.0宝典', '轻量级J2EE企业应用实战' , '基于J2EE的Ajax宝典'} : {'JavaScript: The Definitive Guide'}"
doubleName="book"/>
</s:form>
</body>
2。页面效果
备注:
错误原因可能是我们的模板有bug.
十一、使用s:tree和s:treenode标签生成静态树
 简介
1。Jsp代码
<body>
<s:tree label="计算机图书" id="book" theme="ajax"
showRootGrid="true" showGrid="true" treeSelectedTopic="treeSelected">
<s:treenode theme="ajax" label="李刚" id="yeeku">
<s:treenode theme="ajax" label="Spring2.0宝典" id="spring"/>
<s:treenode theme="ajax" label="轻量级J2EE企业应用实战" id="lightweight"/>
<s:treenode theme="ajax" label="基于J2EE的Ajax宝典" id="ajax"/>
</s:treenode>
<s:treenode theme="ajax" label="David" id="David">
<s:treenode theme="ajax" label="JavaScript: The Definitive Guide" id="javascript"/>
</s:treenode>
<s:treenode theme="ajax" label="Johnson" id="Johnson">
<s:treenode theme="ajax" label="Expert One-on-One J2EE Design and Development" id="j2ee"/>
</s:treenode>
</s:tree>
</body>
2。页面效果
十二、使用s:append标签拼接两个集合
 简介
使用s:append标签拼接 多个集合,组成一个新的集合。
1.Jsp代码
<body>
<s:append id="newList">
<s:param value="{'Spring2.0宝典','轻量级J2EE企业应用实战','基于J2EE的Ajax宝典'}" />
<s:param value="{'新东方IT培训', '东方标准职业教育'}" />
</s:append>
<table border="1" width="240">
<s:iterator value="#newList" status="st">
<tr <s:if test="#st.odd">style="background-color:#bbbbbb"</s:if>>
<td><s:property/></td>
</tr>
</s:iterator>
</table>
</body>
2。页面效果
十三、使用s:append标签拼接集合和Map
 简介
Append标签用于将多个集合对象拼接起来,组成一个新的集合。通过这种拼接,从而允许通过一个<s:iterator …/>标签就完成对多个集合的迭代。
1.Jsp代码
<body>
<s:append id="newList">
<s:param value="#{'Spring2.0宝典':'李刚','轻量级J2EE企业应用实战':'李刚','基于J2EE的Ajax宝典':'李刚'}" />
<s:param value="#{'新东方IT培训', '东方标准职业教育'}" />
</s:append>
<table border="1" width="240">
<s:iterator value="#newList" status="st">
<tr <s:if test="#st.odd">style="background-color:#bbbbbb"</s:if>>
<td><s:property value="key"/></td>
<td><s:property value="value"/></td>
</tr>
</s:iterator>
</table>
</body>
2.页面效果
十五、使用s:generator生成集合
 简介
使用generator标签可以将指定字符串按指定分隔符分隔成多个子串,临时生成的多个子串可以使用iterator标签迭代输出。可以这样理解:generator将一个字符串转化成一个集合。在该标签的标签体内,整个临时生成的集合将位于ValueStack的顶端,但一旦该标签结束,该集合将被移出ValueStack。
1.Jsp代码
<body>
<s:generator val="'Spring2.0宝典,轻量级J2EE企业应用实战,基于J2EE的Ajax宝典'"
separator="," id="books" count="2"/>
<table border="1" width="240">
<%
java.util.Iterator i = (java.util.Iterator) pageContext.getAttribute("books");
while(i.hasNext())
{
String s = (String) i.next(); %>
<tr>
<td><%=s%></td>
</tr>
<%
}
%>
</table>
</body>
备注:如果指定了count属性,则以为这集合中最多只能包含count个元素(就是前coun个元素);如果指定了id属性,就可以将临时生成的集合放置到pageContext属性中。
2.页面效果
3.jsp代码
<body>
<table border="1" width="240">
<s:generator val="'Spring2.0宝典,轻量级J2EE企业应用实战,基于J2EE的Ajax宝典'" separator=",">
<s:iterator status="st">
<tr <s:if test="#st.odd">style="background-color:#bbbbbb"</s:if>>
<td><s:property/></td>
</tr>
</s:iterator>
</s:generator>
</table>
</body>
4。页面效果

from:http://shuixian.iteye.com/blog/149744
分享到:
评论

相关推荐

    struts2标签用法详解

    在本文中,我们将深入探讨Struts2标签的用法,包括它们的基本概念、类型以及如何在实际开发中应用。 一、Struts2标签基础 Struts2标签库是基于JavaServer Pages (JSP) 标准标签库(JSTL)的扩展,它包含了一系列与...

    struts2标签库

    通过使用Struts2标签库,开发者可以避免过多的手动Java代码,提高开发效率,同时使得JSP页面更加整洁,易于维护。 了解并熟练掌握Struts2标签库,不仅有助于提升开发速度,还有利于项目的长期维护。在深入学习时,...

    struts2标签教程(中文版)

    在实际开发中,Struts2标签可以与OGNL(Object-Graph Navigation Language)表达式一起使用,实现动态数据绑定和复杂的逻辑判断。例如,`s:if`标签可以这样使用: ```jsp 欢迎管理员! 欢迎普通用户! ``` ...

    struts2标签用法

    本文将详细介绍Struts2标签的使用方法,帮助你更好地理解和应用这些标签。 首先,我们来看`struts2-tags-API.chm`文件,这通常是一个帮助文档,包含了Struts2标签库的所有API和详细说明。在实际开发中,开发者可以...

    图像加法&struts用法标签大全

    在“struts标签.txt”文件中,可能包含了更多关于Struts标签的详细用法和示例。这些标签能够简化JSP页面的编写,提高开发效率,使得业务逻辑和视图层的分离更加清晰。通过学习和理解这些标签,开发者可以更好地掌握...

    基于struts2 自定义标签 分页

    在这个基于Struts2的自定义分页标签的实践中,我们将深入探讨如何创建、配置和使用自定义标签来实现数据的分页展示,同时与Oracle数据库进行交互。 首先,理解分页的基本概念至关重要。分页是将大量数据分成小块,...

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

    在提供的文档中,应该会有详细步骤和实例展示如何配置Struts2的标签库,如何在Action类中定义属性和方法,以及如何在JSP页面中使用这些标签。通过学习和实践,开发者可以更好地理解和掌握Struts2框架,提升Web应用的...

    Struts2表单标签使用范例

    本示例将深入探讨Struts2的表单标签使用方法,帮助开发者更好地理解和应用这些标签。 首先,我们来了解一些基本概念。在Struts2中,表单标签通常与Action类中的属性相对应,用于在JSP页面上创建HTML表单元素。例如...

    Struts2源码和标签使用和配置

    总的来说,这个教程应该会涵盖Struts2的基本概念、配置方式、标签的使用技巧,以及EXT3.0在前端展示中的应用,旨在帮助开发者快速掌握Struts2框架,并能有效利用其特性构建高效的企业级应用。通过学习和实践,你可以...

    struts2基本标签用法

    本文将详细解析Struts2标签的基本用法,涵盖从变量设置到表单处理等多个方面。 ### 1. 变量与表达式 在Struts2中,可以使用`&lt;s:set&gt;`标签来设定变量。例如: ```xml ``` 这里的`name`属性指定了变量名,`value`...

    struts1.2基本标签使用视频

    视频教程会详细介绍这些标签的使用方法,通过实例演示如何在实际开发中应用它们。观看者将学习到如何通过配置Struts的配置文件(struts-config.xml)来关联标签和JavaBean,以及如何在JSP页面中正确地使用这些标签来...

    struts2标签的使用

    本篇文章将深入探讨Struts2标签的使用,包括其基本概念、主要类别、使用方法以及实际应用。 一、Struts2标签的基本概念 Struts2标签是基于JSP标准标签库(JSTL)的扩展,它们封装了常见的Java代码和Struts2框架的...

    struts2常用标签详解(实用版)

    为了更好地掌握Struts2框架并提升开发效率,本文将详细介绍Struts2中常用的标签及其用法,无论您是初学者还是高级用户,都能从中获益。 #### 1. Struts2标签概述 Struts2框架内置了一系列强大的标签库,这些标签...

    struts2标签介绍

    Struts2标签是Java Web开发框架...观看"44_尚学堂马士兵_Struts2_Struts标签_1_property.avi"和"45_尚学堂马士兵_Struts2_Struts标签_2_set.avi"这两个视频教程,将进一步深入理解Struts2标签的使用方法和应用场景。

    struts 1的标签的用法详细

    8. JSP页面使用Struts标签显示数据或进行其他操作。 ### 二、控制器组件 #### 1. struts-config.xml 这是Struts的核心配置文件,定义了Action、ActionForm、ActionMapping等元素,用于指导请求处理和视图渲染。 #...

    struts2 doubleselect标签的用法例子

    Struts2是一个强大的MVC(模型-视图-控制器)框架,用于构建可维护、可扩展的Java web应用程序。...通过深入理解并实践这个例子,开发者可以更好地掌握Struts2框架以及使用`doubleselect`标签处理动态数据的方法。

    struts2 标签iterator使用

    通过本文档提供的代码示例,我们将深入探讨`&lt;s:iterator&gt;`标签的使用方法及其与不同数据类型(如简单对象、列表、数组)的交互方式。 ### 一、`&lt;s:iterator&gt;`标签的基本用法 `&lt;s:iterator&gt;`标签允许你在JSP页面上...

    struts2标签详解

    使用Struts2标签时,应遵循一定的最佳实践,如避免在JSP页面中混用Java代码,合理利用标签的属性和功能,以及确保标签的语义清晰,便于其他开发者理解。 9. **示例应用** 通过实例演示如何在实际项目中使用Struts...

    struts2 表单标签的使用

    这篇博客将深入探讨Struts2中的表单标签及其使用方法。 首先,我们需要理解Struts2表单标签的基本结构。通常,一个表单标签以`&lt;s:form&gt;`开头,并以`&lt;/s:form&gt;`结束。它允许我们指定表单的属性,如`action`(表单...

    struts2 标签使用

    接下来,我们将通过几个具体的示例来详细了解 `&lt;s:if&gt;` 标签的使用方法。 ##### 示例一:简单的条件判断 ```html This is China! ``` 在这个例子中,我们首先使用 `&lt;s:set&gt;` 标签将一个字符串 `"China"` 设置...

Global site tag (gtag.js) - Google Analytics