JSP : JSTL 的 <c:out> 标签

2022-08-31 09:04:20

编写 JSP 页面,它到底是做什么的?我注意到以下两者具有相同的结果:<c:out>

<p>The person's name is <c:out value="${person.name}" /></p>
<p>The person's name is ${person.name}</p>

答案 1

c:out转义 HTML 字符,以便您可以避免跨站点脚本。

如果person.name = <script>alert("Yo")</script>

脚本将在第二种情况下执行,但在使用时不会执行c:out


答案 2

正如Will Wagner所说,在旧版本的jsp中,您应该始终用于输出动态文本。c:out

此外,使用以下语法:

<c:out value="${person.name}">No name</c:out>

当名称为空时,可以显示文本“无名称”。