# 使用 Java 处理 XML 一些想法

**URL:** <https://www.isharkfly.com/t/java-xml/6561>\
**Category:** 程序语言\
**Tags:** java\
**Created:** [January 21, 2012, 12:48am UTC](https://www.isharkfly.com/t/java-xml/6561 "2012-01-21T00:48:57Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![honeymoose](https://www.isharkfly.com/user_avatar/www.isharkfly.com/honeymoose/32/20796_2.png) [@honeymoose](https://www.isharkfly.com/u/honeymoose)\
**Post date:** [January 21, 2012, 12:48am UTC](https://www.isharkfly.com/t/java-xml/6561/1 "2012-01-21T00:48:57Z")

</div>

Java 处理 xml 的方法很多，比较常用的大约有：dom4j、castor、xmlbeans、xstream到底用什么，我觉的要看需求。

需求主要分为两大类：  
一、xml 很简单、只是对xml一些简单操作  
比如需要读取一些信息，根据读取的信息做一些操作，这是如果xml比较简单，可以直接用dom4j。

二、xml比较复杂，甚至代表一些业务信息  
javabean to xml （系统中已经有javabean类，需要生成xml）

这时xstream比较好，因为 在系统已经有成型javabean 类，或者table表了，我们需要的只是从object中的信息的一部分转换成xml ，这是使用xstream很简单。

2 xml to javabean（系统中已经有xml类，需要生成javabean）  
我觉得使用xmlbeans比较好，因为在上述的时候我们更加关注于xml，xml的作用更多在于描述信息，设计好xml的格式，然后使用xmlbeans生成对应一些javabean类，之后就可以进行一些操作。

3 而castor 很灵活 对xml to javabean 和 javabean to xml 的支持都比较好，只是很长时间没人维护了

4 对于吧一个xml转换成另一个xml，而这两个xml大部分的属性的意义都一样，直接用dom4j。
