0

我希望在编组过程中特殊字符应该转义,有没有办法做到这一点?

alt="<i><b> image alt</b></i>"

这被保存为

&lt;b>&lt;i>image alt&lt;/b>&lt;/i>

我想按原样保存价值

4

2 回答 2

1

如果您将某些内容存储为 XML,则必须转义该符号。否则你的 XML 将变得无效:

<xml>text</xml>

if test == </xml> the XML will be clearly invalid:

<xml></xml></xml>

这必须是:

<xml>&lt;/xml></xml>

如果你解组它,它应该再次成为正确的值。

您也可以使用CDATA

于 2012-04-05T07:04:01.023 回答
1

我以为我分享了我的经验,因为我找到的答案并不全面(而且我仍然不确定这是否是最专业的解决方案)。

在我们的项目中,我们使用maven-jibx-plugin从 XSD 生成 POJO(照常运行两次:1. *.xsd->binding.xml,然后 2. binding.xml-> *.java)。

基于value 节点的文档Dennis Sosnoski在 jibx 邮件列表上的回答,我将xml-maven-plugin添加到我们的项目构建过程中。在 POJO 生成之前,我使用它在生成的 binding.xml 上应用 XSL 文件。关键是将适当值节点上的样式属性值从文本更改为cdata。

到目前为止,它已经解决了我的编码问题,现在我可以返回到客户端 xml,例如:

<Description><![CDATA[<strong>Valuable content goes here</strong>...<br />]]></Description>

希望这能让人们的生活更轻松。:)

于 2013-03-07T08:19:41.157 回答