簡體   English   中英

以XML格式將特殊字符從Java傳遞到jsp

[英]Passing special chars from java to jsp in XML format

我正在從包含“&”的數據庫中獲取數據。 我將其寫入stringbuffer並將其以xml格式傳遞給jsp。 在jsp中,當我得到doc.getElementByTagName(“ tagname”)並獲取childnode的長度時,我得到的是null。

XML數據包含“&”。 我正在獲取的數據非常龐大。 那么用Java中的&替換“&”的最有效方法是什么?

<parentnode> <childnode> <Data1>A & B</Data1>C & D<Data2></Data2> <Data1>E & F</Data1><Data2></Data2> <Data1></Data1><Data2></Data2> .. .. </childnode> </parentnode>

您需要逃脫它。 由於您似乎在JSP中以純格式打印XML(這是一種較差的方法,但是不建議這樣做),因此您可以使用JSTL <c:out>

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
...
<c:out value="${bean.someXmlString}" />

另外,您也可以使用Apache Commons Lang StringEscapeUtils#escapeXml()在Java端對其進行轉義。

stringBuilder.append(StringEscapeUtils.escapeXml(someXmlString));
// ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM