c:out标签怎么是使用?
创始人
2024-05-20 05:49:23
0

在JSP页面中,最常见的操作就是向页面输出一段文本信息,为此,Core标签库提供了一个标签,该标签可以将一段文本内容或表达式的结果输出到客户端。如果标签输出的文本内容中包含了需要进行转义的特殊字符,例如>、<、&、'、" 等,标签会默认对它们进行HTML编码转换后再输出。标签有两种语法格式,具体如下:

语法1:没有标签体的情况

语法2:有标签体的情况,在标签体中指定输出的默认值

defaultValue 

在上述语法格式中,可以看到标签有多个属性,接下来针对这些属性进行讲解,具体如下:

● value属性用于指定输出的文本内容;

● default属性用于指定当value属性为null时所输出的默认值,该属性是可选的(方括号中的属性都是可选的);

● escapeXml属性用于指定是否将>、<、&、'、" 等特殊字符进行HTML编码转换后再进行输出,默认值为true。需要注意的是,只有当value属性值为null时,标签才会输出默认值,如果没有指定默认值,则默认输出空字符串。

为了使初学者更好的学习标签,接下来,通过具体的案例来学习标签的使用,如下所示:

1、使用标签输出默认值

使用标签输出默认值有两种方式,一是通过使用标签的default属性输出默认值,二是通过使用标签的标签体输出默认值。接下来通过一个案例来演示这两种使用方式,如例1所示。

例1 c_out1.jsp

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%><%--第1个out标签 --%>userName属性的值为:
<%--第2个out标签 --%>userName属性的值为:unknown

打开IE浏览器,在地址栏中输入http://localhost:8080/chapter08/c_out1.jsp访问c_out1.jsp页面,此时,浏览器窗口中显示的结果如图1所示。

图1 c_out1.jsp

从图1可以看出,浏览器窗口输出了两个默认值均为unknown,这是通过使用标签的default属性以及标签体的两种方式来设置的默认值,这两种方式实现的效果相同。由于在客户端访问c_out1.jsp页面时,并没有传递username参数,所以表达式${param.username}的值为null,因此,标签就会输出默认值。

如果不想让标签输出默认值,可以在客户端访问c_out1.jsp页面时传递一个参数,在浏览器地址栏中输入http://localhost:8080/chapter08/c_out1.jsp?username=itcast,此时,浏览器窗口中显示的结果如图2所示。

图2 c_out1.jsp

从图8-4可以看出,浏览器窗口中输出了userName属性的值为itcast,这是因为在客户端访问out.jsp页面时传递了一个username参数,该参数的值为itcast,因此,表达式${param.username}就会获取到这个参数值,并将其输出到JSP页面中。

2、使用标签的escapeXml属性对特殊字符进行转义

标签有一个重要的属性escapeXml,该属性可以将特殊的字符进行HTML编码转换后再输出,接下来通过一个案例来演示如何使用escapeXml属性将特殊字符进行转换,如例2所示。

例2 c_out2.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

打开IE浏览器,在地址栏中输入http://localhost:8080/chapter08/c_out2.jsp访问c_out2.jsp页面,此时,浏览器窗口中显示的结果如图3所示。

图3 c_out2.jsp

从图3可以看到,浏览器窗口中显示的是www.itcast.cn网站的信息,这是因为在标签中将escapeXml的属性值设置为false,因此,标签不会对特殊字符进行HTML转换,标签便可以发挥作用,在访问c_out2.jsp页面时就会跳转到www.itcast.cn网站。

如果想对页面中输出的特殊字符进行转义,可以将escapeXml属性的值设置为true,接下来将例3中标签的escapeXml属性修改为true,再次访问c_out2.jsp页面,此时,浏览器窗口中显示的结果如图4所示。

图4 访问结果

从图4可以看出,将标签中escapeXml属性的值设置为true后,在JSP页面中输入的标签便会进行HTML编码转换,最终以字符串的形式输出了。需要注意的是,如果在标签中不设置escapeXml属性,则该属性的默认值为true。

相关内容

热门资讯

创维电视安卓系统2.3,回顾经... 你有没有发现家里的创维电视有点儿“老态龙钟”了?别急,别急,今天就来给你揭秘一下这款电视的“内心世界...
如何破解车载安卓系统,轻松解锁... 如何破解车载安卓系统:揭秘背后的技术与风险在当今这个数字化飞速发展的时代,汽车已经不仅仅是一种交通工...
安卓机上的windows系统,... 你有没有想过,把Windows系统的强大功能搬到安卓机上?想象那可是个让人眼前一亮的操作体验呢!今天...
非安卓10系统手机,探索非安卓... 你有没有想过,为什么有些人会选择非安卓10系统的手机呢?是不是觉得这有点奇怪?别急,今天就来带你一探...
手机图标制作安卓系统,手机图标... 你有没有想过,那些在手机屏幕上跳动的图标,其实都是精心设计出来的艺术品呢?没错,今天就要带你一探究竟...
安卓系统和鸿蒙系统谁大,谁才是... 你有没有想过,手机里的操作系统就像是一场无声的较量?今天,咱们就来聊聊这个话题:安卓系统和鸿蒙系统,...
bj40安卓系统,功能解析与使... 你有没有发现,最近你的BJ40越野车变得聪明多了?没错,它升级了安卓系统,简直就像给它装上了个智能大...
安卓系统硬件核心板,揭秘智能设... 你有没有想过,手机里的安卓系统其实就像是一个庞大的城市,而硬件核心板就是这座城市的核心区域?今天,就...
王者荣耀安卓系统转区ios系统... 你有没有想过,把你的王者荣耀账号从安卓系统转到iOS系统呢?这可不是一件小事,里面可是有大学问的哦!...
安卓系统的音游,节奏与音乐的完... 你有没有发现,手机里的游戏越来越好玩了?尤其是那些音游,简直让人停不下来!今天,就让我带你深入了解一...
安卓系统取消下方按键,探索全新... 你知道吗?最近安卓系统来了一次大变动,那就是取消了下方按键!这可真是让人眼前一亮,让我们一起来看看这...
安卓系统显示原理设置,从像素到... 你有没有发现,你的安卓手机屏幕上那些花花绿绿的图标和文字,其实背后有着一套神奇而又复杂的显示原理呢?...
平板安卓4.0系统下载,平板下... 你有没有想过,拥有一台运行着最新安卓4.0系统的平板电脑,那感觉简直就像拥有了未来的钥匙?想象流畅的...
安卓原生12系统下载,原生系统... 你有没有听说?安卓原生12系统终于来了!这款全新的操作系统,不仅带来了全新的视觉体验,还有一堆实用的...
安卓怎么下泼辣系统,安卓设备轻... 你有没有想过给你的安卓手机来个“大变身”?想象你的手机瞬间变成了一个泼辣的“女侠”,不仅个性十足,而...
安卓版小米系统下载,畅享智能生... 你有没有发现,最近手机圈里又掀起了一股热潮?没错,就是安卓版小米系统的下载。这款系统自从推出以来,就...
提取安卓系统自带软件,探索安卓... 你有没有想过,你的安卓手机里那些看似不起眼的自带软件,其实都是隐藏的宝藏呢?今天,就让我带你一探究竟...
安卓系统投屏到鸿蒙系统,鸿蒙系... 亲爱的读者们,你是否有过这样的体验:手里拿着安卓手机,却想在大屏幕的鸿蒙系统设备上展示内容?别急,今...
sony 电视安卓8.0系统,... 亲爱的读者们,你是否也和我一样,对科技产品有着浓厚的兴趣呢?今天,我要和你聊聊一个让我眼前一亮的话题...
安卓 替换系统下载,探索安卓系... 你有没有想过,你的安卓手机其实可以换换口味呢?没错,就是那个一直默默陪伴你的系统,今天就来带你一起探...