and when can I just say ${myVar}-6ren"> and when can I just say ${myVar}-我一直在我的 JSP 代码中这样做: 今天我才第一次意识到我似乎也能使用这个较短的版本: ${myVar} 它在没有 的情况下工作! 也许这是因为我的页面是这样声明的: 所以,我的问题是,我可以-6ren">
gpt4 book ai didi

java - 在 JSTL/JSP 中我什么时候必须使用 and when can I just say ${myVar}

转载 作者:太空狗 更新时间:2023-10-29 22:43:45 30 4
gpt4 key购买 nike

我一直在我的 JSP 代码中这样做:

<c:out value="${myVar}"/>

今天我才第一次意识到我似乎也能使用这个较短的版本:

${myVar}

它在没有 <c:out> 的情况下工作!

也许这是因为我的页面是这样声明的:

<%@ page language="java" contentType="text/html; 
charset=utf-8" pageEncoding="utf-8" isELIgnored="false" %>

所以,我的问题是,我可以替换 <c:out> 吗?在我的代码中使用这个较短的版本?有什么理由继续使用 <c:out> ?还是在某些地方我可能仍然需要它?

最佳答案

<c:out>不仅仅是输出文本。它转义了 HTML 特殊字符。每次您不确定文本不包含以下任何字符时,请使用它 (or ${fn:escapeXml()}):", ', <, >, & .否则,您将遇到无效的 HTML(最好的情况)、损坏的页面或跨站点脚本攻击(最坏的情况)。

我举个简单的例子让你明白。如果你开发了一个论坛,有人发布了以下消息,而你没有使用 <c:out>要显示此消息,您将遇到问题:

<script>while (true) alert("you're a loser");</script>

关于java - 在 JSTL/JSP 中我什么时候必须使用 <c :out value ="${myVar}"/> and when can I just say ${myVar},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6574776/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com