Xmappr 是一个使用纯Java编写的处理XML的类库,提供一种非常简单的方式来处理XML,可以将任意XML与Java类相映射。
主要特性:
- 映射通过注释或外部配置实现
- 可以缓存未映射元素
- 保持XML元素顺序
- 可以自定义类型转换器
- 完全支持XML命名空间
- 线程安全(设计用于多线程使用)
- 不包含任何依赖关系
- 整个类库大小只有80kb
- 采用BSD许可
点击查看详情:http://www.theserverside.com/news/thread.tss?thread_id=59078
示例
xml:
- < root a = "2.2" >
- some text
- < node > 123 </ node >
- </ root >
Java:
- @RootElement
- public class Root {
-
- @Attribute
- public float a;
-
- @Element
- public Integer node;
-
- @Text
- public String text;
- }
上述代码已经完成了一段XML和Java文件的映射的配置,只需要使用@Elemet, @Attribute and @Text这三个注释即可,映射只需要两行代码:
- Xmappr xm = new Xmappr(Root. class );
- Root root = (Root) xm.fromXML(reader);
如果你不喜欢注释,还可以使用使用XML配置的方式来配置映射:
- < root-element name = "root" class = "package.name.Root" >
- < attribute field = "a" >
- < element field = "node" >
- < text field = "text" >
- </ text >
- </ element > </ attribute > </ root-element >
==================================================================================
大家如果使用这个类库有什么心得,发消息或者留言和我交流啊,
还有,有人知道 python里面有没有能改变xml元素顺序,和保持元素顺序的处理方法啊?