JSP常用标签库
1、<c:set>标签用于设置变量值和对象属性。
内部属性:
value 要存储的值(使用""代表字符串,使用${s}代表引用赋值(将s变量赋值给),可以计算表达式的值)
target 要修改的属性所属的对象
property 要修改的属性
var 存储信息的变量(定义)
scope var属性的作用域
2、<c:out>标签用来显示一个表达式的结果,
<c:out>标签可以直接通过".“操作符来访问属性。
内部属性:
value 要输出的内容(使用”"代表字符串,使用${s}代表引用赋值(将s变量赋值给),可以计算表达式的值)
default 输出的默认值
escapeXml 是否忽略XML特殊字符(true或false)
用例:
<c:set var=“i” value="
10
∗
2
"
s
c
o
p
e
=
"
s
e
s
s
i
o
n
"
/
>
<
c
:
o
u
t
v
a
l
u
e
=
"
{10*2}" scope="session"/> <c:out value="
10∗2"scope="session"/><c:outvalue="{i}" escapeXml=“false” default=“123”/>
3、<c:catch> 标签主要用来处理产生错误的异常状况,并且将错误信息储存起来
内部属性:
var 用来储存错误信息的变量 ,可能发生错误的代码写在<c:catch> 标签中
用例:
<c:catch var=“cException”>
<% int x=5/0;%>
</c:catch>
4、<c:if>,相当于if语句判断并输出错误信息
内部属性:
test 条件(
可
判
断
的
表
达
式
)
v
a
r
用
于
存
储
条
件
结
果
的
变
量
(
定
义
:
值
是
t
r
u
e
或
f
a
l
s
e
)
s
c
o
p
e
v
a
r
属
性
的
作
用
域
用
例
:
<
c
:
i
f
t
e
s
t
=
"
{}可判断的表达式) var 用于存储条件结果的变量 (定义:值是true或false) scope var属性的作用域 用例: <c:if test = "
可判断的表达式)var用于存储条件结果的变量(定义:值是true或false)scopevar属性的作用域用例:<c:iftest="{cException!= null}" var=“flag”>
异常为 : ${cException}
发生了异常: ${cException.message}
5、<c:forEach>相当于for循环,循环输出集合
内部属性:
items 要被循环的信息(变量,数组,集合)(可以是""定义变量也可以是对象的引用${})
begin 开始的元素(0=第一个元素,1=第二个元素)
end 最后一个元素(0=第一个元素,1=第二个元素)
step 每一次迭代的步长
var 代表当前条目的变量名称
varStatus 代表循环状态的变量名称
//当有items属性是,var代表别名,没有items属性是代表变量(定义)
用例:
<c:forEach var=“i” begin=“1” end=“5” >
值:${i}
</c:forEach>
6、<c:forTokens>标签通过指定分隔符将字符串(引用或具体)分隔为一个数组然后迭代它们。
内部属性:
//<c:forTokens>标签与<c:forEach>标签有相似的属性,
//不过<c:forTokens>还有另一个属性:delims分隔符
//ver被迭代的名称
用例:
<c:forTokens items=“a,b,c,d” delims="," var=“name”>
<c:out value="${name}"/>
</c:forTokens>
7、<c:choose>标签与Java switch语句的功能一样
内部属性
//switch语句中有case,而<c:choose>标签中对应有<c:when>,
//switch语句中有default,而<c:choose>标签中有<c:otherwise>。
//<c:choose>标签没有属性
//<c:when>标签只有一个属性
//属性test 条件(
可
判
断
的
表
达
式
)
/
/
<
c
:
o
t
h
e
r
w
i
s
e
>
标
签
没
有
属
性
。
用
例
:
<
c
:
s
e
t
v
a
r
=
"
s
"
s
c
o
p
e
=
"
s
e
s
s
i
o
n
"
v
a
l
u
e
=
"
{}可判断的表达式) //<c:otherwise>标签没有属性。 用例: <c:set var="s" scope="session" value="
可判断的表达式)//<c:otherwise>标签没有属性。用例:<c:setvar="s"scope="session"value="{20*2}"/>
<c:choose>
<c:when test="
s
>
20
"
>
惨
<
/
c
:
w
h
e
n
>
<
c
:
w
h
e
n
t
e
s
t
=
"
{s>20}"> 惨 </c:when> <c:when test="
s>20">惨</c:when><c:whentest="{s>40}">
可以
</c:when>
<c:otherwise>
什么都没有
</c:otherwise>
</c:choose>
8、<c:import>标签提供了所有jsp:include行为标签所具有的功能,同时也允许包含绝对URL。
//举例来说,使用<c:import>标签可以包含一个FTP服务器中不同的网页内容。
//url 待导入资源的URL,可以是相对路径和绝对路径,并且可以导入其他主机资源
//context 当使用相对路径访问外部context资源时,context指定了这个资源的名字
//charEncoding 所引入的数据的字符编码集
//var 用于存储所引入的文本的变量
//scope var属性的作用域
//varReader 可选的用于提供java.io.Reader对象的变量
//<c:import url=“http://…” var=“s”>
//${s}
//</c:import>
//<c:redirect>标签通过自动重写URL来将浏览器重定向至一个新的URL,它提供内容相关的URL,并且支持c:param标签。
//url 目标URL
//context 紧接着一个本地网络应用程序的名称
//<c:redirect></c:redirect>
//<c:remove>标签用于移除一个变量,可以指定这个变量的作用域,若未指定,则默认为变量第一次出现的作用域。
//var 要移除的变量名称
//scope 变量所属的作用域
//<c:remove var=""/>
//<c:param name=""></c:param>
//<c:url></c:url>