随笔 - 37  文章 - 14  trackbacks - 0
<2007年6月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

常用链接

留言簿

随笔分类

随笔档案

文章分类

相关链接

搜索

  •  

最新评论

阅读排行榜

评论排行榜

JSTL标签函数库主要包括5大类:
1、核心标签库
2、国际化标签库
3、SQL标签库
4、XML标签库
5、函数标签库

这两天主要针对核心标签库和国际化标签库的学习。下面主要介绍这两个标签库的部分标签
<c:out> <c:set>

1<c:set value="8" var="testValue"></c:set>
2<c:out value="${testValue}" default="No Data"></c:out>
<c:set value="value" var="varName" [scope]>
把value值存在变量名为varName的变量,可以通过scope指定改变量存在的范围
<c:set value="value" target="target" property="propertyName">
把value值存在对象为target的propertyName属性里
<c:set var="varName">本体内容</c:set>
把本体内容存在变量名为varName的变量
<c:out value="${testValue}" default="No Data">
显示变量testValue的值,如果为空则显示"No Data"

1<c:out value="<p>特殊字符</p>"></c:out>
2<c:out value="<p>特殊字符</p>" escapeXml="false"></c:out>
通过设置escapeXml为false,确保jstl标签不把"<"转换为&lt;上述的结果分别为
1<p>特殊字符<p>
2特殊字符

<c:remove var="varName" [scope="page|request|session|application"]>
删除指定scope里的变量名为varName的变量

1<c:catch var="varName">
2.本体内容
3</c:catch>
4

当本体内容出错的时候,把错误保存到变量名为varName的变量里。

流程控制

1<c:if test="testCondition" var="varName" [scope=""]>
2本体内容
3</c:if>
当test表达式结果为真的时候,显示本体内容,并把表达式的结果存放在varName里
1<c:choose>
2<c:when test="testCondition">
3结果为真
4</c:when>
5<c:otherwise>
6结果为假
7</c:otherwise>
8</c:choose>
<c:choose></c:choose>里要有一个或多个<c:when></c:when>;0个或多个<c:when></c:when>该标签相当于if....else....

迭代操作

 1<% 
 2String strs[] = new String[5
];
 3strs[0]="A"
;
 4strs[1]="B"
;
 5strs[2]="C"
;
 6strs[3]="D"
;
 7strs[4]="E"
;
 8request.setAttribute("strs"
,strs);
 9
%>
10        
11        <c:forEach items="${strs}" var="item" varStatus="s">

12        <br>${item}  index:${s.index } count:${s.count } firs:${s.first} last:${s.last }
13        </c:forEach>

14        <hr>
15        <c:forTokens items="A,B,C,D,E,F,G" delims="," var="item">
16        ${item }
17        </c:forTokens>


<c:forEach>:items表示要迭代的collection,item表示:当前迭代到的对象,varStatus表示:用来存放当前指到成员的信息如(index,count,first,last)
<c:forTokens>:items:表示要迭代的字符串,delims表示分隔符字符串的字符,item表示当前迭代到的对象

其中这两个标签都有begin:开始的位置,end:结束的位置,step:迭代的间隔数

国际化
JSTL与Struts结合实现国际化
在WEB.XML里设置,此处假定ApplicationResources文件在应用程序的class path下

1  <context-param>
2  <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
3  <param-value>ApplicationResources</param-value>
4</context-param>
在jsp页面上,显示ApplicationResources里key值为”test.common.message“,并传递参数到该message
1<fmt:message key="test.common.message">
2<fmt:param value="test"></fmt:param>
3</fmt:message>

posted on 2007-06-06 12:38 扭曲的铅笔 阅读(1535) 评论(0)  编辑  收藏 所属分类: J2EE

只有注册用户登录后才能发表评论。


网站导航: