在编写JSP页面时,<c:out>到底能做什么?我注意到以下两者具有相同的结果: 通用标签

有帮助吗?

解决方案

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

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

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

其他提示

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

此外,使用以下语法: 通用标签

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

c:out的属性还具有一个属性,如果person.name的值恰好为空,则该属性会分配默认值。

来源:输出(TLDDoc生成的文档)

您可以使用等于true的属性escapeXml值来显式启用Xml实体的转义。仅供参考,默认情况下为“ true”。

旧版本的JSP不支持第二种语法。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top