JSTL-JSTL核心标签库02
2015-02-26 15:58
363 查看
表达式标签
表达式标签主要包括:<c:out>,<c:set>,<c:remove>和<c:catch>4个标签。
<c:out>输出标签
用于将表达式的值输出到JSP页面,可替代<%=表达式%>
语法格式1:无标签体
<c:out value="expression" [escapeXml="true|false"] [default="defaultValue"]/>
语法格式2:有标签体
<c:out value="expression" [escapeXml="true|false"]>
defaultValue
</c:out>
标签的属性说明
<c:set>设置标签
用于在指定范围(page,request,session和application)内定义保存某个值的变量,或为指定的对象设置属性值。使用该标签可以在页面中定义变量,而不用在JSP页面中嵌入打乱HTML排班的java代码。
语法1:在scope指定的范围内将变量值存储到变量中。
<c:set value="value" var="name" [scope="page|request|session|application"]/>
语法2:在scope指定的范围内将标签主体存储到变量中。
<c:set var="name" [scope="page|request|session|application"]/>
语法3:将变量值存储在target属性指定的目标对象的propName属性中。
<c:set value="value" target="object" property="propName"/>
语法4:将标签主体存储到target属性指定的目标对象的propName属性中。
<c:set target="object" property="propName>
标签主体
</c:set>
标签的属性说明
target属性不能直接指定的JavaBean或Map,而应该使用EL表达式或一个脚本表达式指定的真正对象。例如:要为JavaBean "LinkmanForm"的id属性赋值,那么target属性值应该是target="${linkman}",而不应该是target="linkman"。其中linkman是LinkmanForm的对象。
<c:remove>移除标签
可以从指定的JSP范围内移除指定的变量。语法格式如下:
<c:remove var="name" [scope="page|request|session|application"]/>
var属性:用于指定要移除的变量名称。
scope属性:用于指定变量的存在范围,可选值有page,request,session和application。默认值是page。
<c:catch>捕获异常标签
与Java程序中的try...catch语句类似,用于捕获程序中出现的异常;此外,它还能将异常信息保存在变量中。
语法如下:
<c:catch [var="exception"]>
.....//可能存在异常的代码
</c:catch>
var属性可以指定存储异常信息的变量,这是一个可选项,如果不需要保存异常信息,则可省略该属性。var属性值只有在<c:catch>标签的后面才有效,也就是说,在<c:catch>标签体中无法使用有关异常的任何信息。
表达式标签主要包括:<c:out>,<c:set>,<c:remove>和<c:catch>4个标签。
<c:out>输出标签
用于将表达式的值输出到JSP页面,可替代<%=表达式%>
语法格式1:无标签体
<c:out value="expression" [escapeXml="true|false"] [default="defaultValue"]/>
语法格式2:有标签体
<c:out value="expression" [escapeXml="true|false"]>
defaultValue
</c:out>
属性 | 类型 | 描述 | 使用EL |
---|---|---|---|
value | Object | 用于指定将要输出的变量或表达式 | 可以 |
escapeXml | boolean | 用于指定是否转换特殊字符串,默认值为true,表示转换,例如“<”转换为"<" | 不可以 |
default | Object | 用于指定当value属性值等于null时,将要显示的默认值。 | 不可以 |
用于在指定范围(page,request,session和application)内定义保存某个值的变量,或为指定的对象设置属性值。使用该标签可以在页面中定义变量,而不用在JSP页面中嵌入打乱HTML排班的java代码。
语法1:在scope指定的范围内将变量值存储到变量中。
<c:set value="value" var="name" [scope="page|request|session|application"]/>
语法2:在scope指定的范围内将标签主体存储到变量中。
<c:set var="name" [scope="page|request|session|application"]/>
语法3:将变量值存储在target属性指定的目标对象的propName属性中。
<c:set value="value" target="object" property="propName"/>
语法4:将标签主体存储到target属性指定的目标对象的propName属性中。
<c:set target="object" property="propName>
标签主体
</c:set>
属性 | 类型 | 描述 | 引用EL |
---|---|---|---|
value | Object | 用于指定变量值 | 可以 |
var | String | 用于指定变量名 | 不可以 |
target | Object | 用于指定存储变量值或标签主体的目标对象,可以是JavaBean或Map集合对象 | 可以 |
property | String | 用于指定目标对象存储数据的属性名 | 可以 |
scope | String | 用于指定变量的作用域,默认值为page | 不可以 |
<%@ target prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<jsp:useBean class="com.jsoft.LinkmanForm" id="linkman"/>
语法1:定义一个session范围内的变量user,值为mrsoft<br>
<c:set var="user" value="mrsoft" scope="session"/>
输出变量user的值为:${sessionScope.user}
<br>
语法2:定义一个request范围内的变量money,值为12.5*6<br>
<c:set var="money" scope="request">
${12.5*6}
</c:set>
输出变量money的值为:${requestScope.money}
<br>
语法3:为JavaBean "LinkmanForm" 设置各属性并应用<c:out>标签输出各属性值<br>
<c:set value="1" target="${linkman}" property="id"/>
<c:set value="jsoft" target="${Linkman}" property="name"/>
id的属性值为:<c:out value="${linkman.id}"/> <br>
name的属性值为:<c:out value="${linkman.name}"/> <br>
<br>
语法4:为JavaBean "LinkmanForm" 设置各属性并应用<c:out>标签输出各属性值<br>
<c:set target="${linkman}" property="tel">84956778</c:set>
tel属性值为:<c:out value="${linkman.tel}"/>
<c:remove>移除标签
可以从指定的JSP范围内移除指定的变量。语法格式如下:
<c:remove var="name" [scope="page|request|session|application"]/>
var属性:用于指定要移除的变量名称。
scope属性:用于指定变量的存在范围,可选值有page,request,session和application。默认值是page。
<%@ target prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:set var="softName" value="明日科技编程词典" scope="page"/>
移除前输出变量softName的值:<c:out value="${pageScope.softName}" default="softName的值为空"/>
<br>
<c:remove var="softName" scope="page"/>
移除后输出变量softName的值:<c:out value="${pageScope.softName}" default="softName的值为空"/>
<c:catch>捕获异常标签
与Java程序中的try...catch语句类似,用于捕获程序中出现的异常;此外,它还能将异常信息保存在变量中。
语法如下:
<c:catch [var="exception"]>
.....//可能存在异常的代码
</c:catch>
var属性可以指定存储异常信息的变量,这是一个可选项,如果不需要保存异常信息,则可省略该属性。var属性值只有在<c:catch>标签的后面才有效,也就是说,在<c:catch>标签体中无法使用有关异常的任何信息。
<%@ target prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:catch var="exception">
<%
int number=Integer.parseInt(request.getParameter("number"));
out.println("合计金额为:+"521*number);
%>
</c:catch>
抛出的异常信息:<c:out value="${exception}">
相关文章推荐
- JSP基础语法之十六:JSTL配置和核心标签(C)的使用
- JSTL核心标签
- JavaWeb学习笔记——JSTL核心标签库
- JSTL-核心标签库
- 仿JSTL核心标签库中的一些重要标签
- JavaWeb开发第8章标准标签库(JSTL)之一二核心标签库
- JSTL 核心标签库 使用
- JSTL 核心标签库
- apache的错误500错误,引入jstl核心标签库遇到的问题
- JSTL 核心标签库 使用
- 早起的鸟儿有虫吃-JSTL核心标签库[收藏]
- JSTL 核心标签库的使用
- JSTL 核心标签库
- JSTL解析——007——fmt标签库02
- JSTL-核心标签库
- JSTL 核心标签库 使用
- JSTL核心标签库
- EL表达式----JSP11个隐式对象----EL函数----JSTL核心标签if,foreach
- JSTL 核心标签库 使用
- JSTL核心库标签的使用