【JSTL】core标签---表达式控制

       JSTL核心标签库(C标签)标签共有13个,功能上分为4类:

1.表达式控制标签:out、set、remove、catch

2.流程控制标签:if、choose、when、otherwise

3.循环标签:forEach、forTokens

4.URL操作标签:import、url、redirect


【应用】

      使用核心标签前,要先引用核心标签库的语法如下:

<%@ taglibprefix="c"uri="http://java.sun.com/jsp/jstl/core" %>

<c:out>

语法格式:


属性:


       out标签主要用于显示数据,需要注意的是c:out标签有两个属性,一个是default,一个是escapeXml。如下:

1.default:如果没有要取得值,就显示default的内容。以下两种写法效果一样。

使用缺省值:<c:outvalue="${hello123}" default="没有值"/><br>
使用缺省值:<c:outvalue="${hello123}">没有值</c:out><br>


2.escapeXml:默认为true,则会将字符串原封不动的显示,若为false,则会将<>中的内容进行编译。如下:

//HTML字符串
request.setAttribute("welcome","<font color='red'>欢迎你来到这个世界!</font>");
<br>使用EL表达式:${welcome }
<br>使用标签,escapeXml=true:
<c:outvalue="${welcome }" escapeXml="true" />
<br>使用标签,escapeXml=false:
<c:outvalue="${welcome }" escapeXml="false" />

 

<c:set>

语法格式:


属性:


set标签相当于声明一个变量,可以在声明的时候指定作用域。

这主要取决于scope属性。

<c:remove>

语法格式:


属性:


 

c:remove标签则是与c:set相反,恰恰是清除该变量。

<li>测试c:set,c:remove标签</li>
<br>
<c:setvalue="root" var="userid" />
 
userid:
<c:outvalue="${userid }">没有值</c:out>
<br>
<c:removevar="userid" />
 
userid:
<c:outvalue="${userid }">没有值</c:out>
<br>


c:catch

语法格式:


属性:


<li>c:catch标签</li><br>
	<%
		try {
			Integer.parseInt("asdfsdf");
		}catch(NumberFormatException e) {
			e.printStackTrace();
			out.println(e.getMessage());
		}
	%>
	<p>
	<c:catch var="msg">
		<%
			Integer.parseInt("asdfsdf");
		%>
	</c:catch>
	${msg }<br>
	<p>





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值