今天做Lucene数据源接口时,遇到一个问题,就是输出xml时将某些数据放在CDATA区输出:

1、依赖的jar包,用maven管理项目的话,

<dependency>
    <groupId>org.eclipse.persistence</groupId>
    <artifactId>org.eclipse.persistence.moxy</artifactId>
    <version>2.5.2-M1</version>
</dependency>

会增加以下4个jar包:

org.eclipse.persistence.moxy-2.5.2- M1.jar,org.eclipse.persistence.core-2.5.2- M1.jar,org.eclipse.persistence.asm-2.5.2- M1.jar,org.eclipse.persistence.antlr-2.5.2-M1.jar

2、在需要与你的模型类中的以下项中添加jaxb.properties文件,内容为:

javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory

JAXBContext处理CDATA-冯金伟博客园

3、在模型类需要加入到CDATA区的属性上面加上@XmlCDATA注解,如图:

JAXBContext处理CDATA-冯金伟博客园

转:http://my.oschina.net/dailongyao/blog/338906