如何在jsp中显示带标签的文本

时间:2012-11-09 06:22:36

标签: html jsp htmltextwriter

我想显示一个名为

的文字
"welcome<to>Jsp"

在页面源中我也看到“welcomeJsp”

但在HTML中它仅显示为“welcomeJsp”。请指导我。

3 个答案:

答案 0 :(得分:2)

你必须逃避这些角色..

welcome&lt;to&gt;Jsp

我建议使用Apache的StringEscapeUtils类(在org.apache.commons.lang中可用)函数escapeHtml()来转义HTML。

StringEscapeUtils.escapeHtml("welcome<to>Jsp")

答案 1 :(得分:1)

"welcome&lt;to&gt;Jsp"


&gt; (greater than) - (>)
&lt; (less than)    - (<)

这些字符需要以这种方式编码才能实际显示它们。

答案 2 :(得分:1)

使用JSTL <c:out>标记或fn:escapeXml()功能。

<c:out value="welcome<to>Jsp" />

${fn:escapeXml('welcome<to>Jsp')}

您甚至可以在模型值上使用它。

<c:out value="${bean.property}" />

${fn:escapeXml(bean.property)}

当它涉及用户控制的输入时,始终的那两个应该被使用,否则你对XSS攻击漏洞完全开放。另请参阅our JSP wiki pageWhat is the general concept behind XSS?