2009年3月12日星期四

XOM利器:Simple-Xml

一直以来,对XML文件的操作都让我恐惧。所以,一般在项目中,我都不主动引入XML配置文件。有一个项目里,我还用yaml来代替了xml作为配置文件。可以,yml文件对空格、位置排列限制比较严格,用起来不是很好。

这几天,找到了一个新的XOM工具:Simple-Xml。可以通过annotation将xml直接转换为pojo,十分的方便。将一些使用心得整理一下:

  1. 安装设置简单,只需要3个jar包:simple-xml-2.0.3.jar,stax-1.2.0.jar和stax-api-1.0.1.jar;
  2. Annotation使用简单,最常用的有:@Root, @Attribute, @Text, @Element, @ElementList, @ElementMap等;
  3. 可以设置annotation的name属性来匹配xml文件中元素名词,譬如:@Element(name="simple-xml");
  4. 可以使用inline=true来内联数组、列表和Map等;
  5. 可以通过${var}来共享变量,但必须用@Commit提交后方可使用。譬如:<property name="host.name">qdlake</property> <host>${host.name}</host>;
  6. 支持nested object;
  7. 如果有对象继承,根对象上不要使用@Root注解;
  8. @ElementMap注解使用时,会将此元素下的所有属性放入到map中,非常的方便。但切记,需要指定entry和key,并且value必须放置在<property key="k1">VALUE</property>两标签之中位置,不能使用value="v1"的方式;
  9. 不加annotation的字段将不会被处理;
  10. 支持callback,譬如:@Validate,@Commit等。
先写这么多,以后用到其他功能时再补充。

没有评论:

发表评论