Java 如何让浏览器将文本解释为html内容而不是纯文本?

Java 如何让浏览器将文本解释为html内容而不是纯文本?,java,html,browser,Java,Html,Browser,我有一个Java字符串mailContent作为 <p><span style="background-color: #ff6600; font-family: arial black,avant garde; font-size: large;">Testing Correct Formatting</span></p> 测试正确的格式 在发送到浏览器之前,我使用jsp中的formatString和FormatParague方法对其进行编码。

我有一个Java字符串mailContent作为

<p><span style="background-color: #ff6600; font-family: arial black,avant garde; font-size: large;">Testing Correct Formatting</span></p>
测试正确的格式

在发送到浏览器之前,我使用jsp中的formatString和FormatParague方法对其进行编码。下面是Jsp代码

<td valign="center" >
<%=StringFormat.formatParagraph(StringFormat.formatString(mailContent,StringFormat.ALL))%>
 </td>

现在有了上面的代码片段,我看到它只是作为纯文本(作为mailContent的值)而不是带有html标记的文本打印出来。因此,我不明白 格式化的HTML内容,如字体大小、背景颜色、字体系列等。如果只使用下面的代码,它会显示格式化的HTML内容,因为 我现在没有对文本进行编码

 <td valign="center" >
 <%=mailContent%>
 </td>

现在,我如何让浏览器将编码内容解释为html标记,因为我不想删除编码

有关信息,在浏览器端,当我查看源代码时,我会看到下面已编码的源代码

 &lt;p&gt;&lt;span style=&quot;background-color: #ff6600; font-family: arial black,avant garde; font-size: large;&quot;&gt;Testing Correct Formatting&lt;/span&gt;&lt;/p&gt;<br/><br/>
pspan style=“背景色:#ff6600;字体系列:arial黑色,前卫;字体大小:大;“测试正确的格式设置/span/p


浏览器使用名为
内容类型的HTTP头决定内容类型。您应该发送内容类型值
text/html
。看起来您现在正在发送
文本/纯文本
,所以浏览器将内容视为纯文本

请查看更多详细信息。


<%@ page contentType="text/html; charset=iso-8859-1" language="java"  %>



<%
request.setAttribute("Att","<p><span style=\"background-color: #ff6600; font-family: arial black,avant garde; font-size: large;\">Testing Correct Formatting</span></p>");
%>
<%= request.getAttribute("Att")%>

In place of value in setAttrbiute you can pass your string object.
您可以传递字符串对象来代替setAttribute中的值。
查看
StringFormat
方法是否有重载版本,您可以在其中为转义指定
false
。我无法回答您的问题,您不想删除编码,但仍希望浏览器将标记解释为html?这是不可能的,先生,这也没有道理!我的意思是“逃跑”。不是编码。顺便问一下,你为什么要对它进行编码?出于安全考虑。这是一个遗留系统,我不想修改:(你使用的模板语言是什么?“这不是问题。OP说他们注入
”“
放入一个HTML文件,结果显示为
p
。如何防止这种情况发生?我已经在页面顶部提到了。你能解释一下这个答案吗?你不应该只发布代码。你总是回答OP和后代。