c:out
对 HTML 字符进行转义,以便避免跨站点脚本。
如果person.name = <script>alert("Yo")</script>
脚本将在第二种情况下执行,但在使用 c:out
时不会执行
正如 Will Wagner 所说,在旧版本的 jsp 中,您应该始终使用 c:out
来输出动态文本。
此外,使用这种语法:
<c:out value="${person.name}">No name</c:out>
当名称为空时,您可以显示文本“无名称”。
您可以通过使用属性 escapeXml 值等于 true 来显式启用 Xml 实体的转义。仅供参考,默认情况下为“true”。
旧版本的 JSP 不支持第二种语法。