阅读更多

27顶
2踩

编程语言

原创新闻 Xmappr:纯Java编写的处理XML的类库

2010-01-04 11:24 by 副主编 zly06 评论(39) 有17022人浏览

Xmappr是一个使用纯Java编写的处理XML的类库,提供一种非常简单的方式来处理XML,可以将任意XML与Java类相映射。

主要特性:

  • 映射通过注释或外部配置实现
  • 可以缓存未映射元素
  • 保持XML元素顺序
  • 可以自定义类型转换器
  • 完全支持XML命名空间
  • 线程安全(设计用于多线程使用)
  • 不包含任何依赖关系
  • 整个类库大小只有80kb
  • 采用BSD许可

点击查看详情:http://www.theserverside.com/news/thread.tss?thread_id=59078

 

示例

 

xml:

  1. <root a="2.2">  
  2.     some text  
  3.     <node>123</node>  
  4. </root> 
Java:
  1. @RootElement  
  2. public class Root {  
  3.   
  4.     @Attribute  
  5.     public float a;  
  6.   
  7.     @Element  
  8.     public Integer node;  
  9.   
  10.     @Text  
  11.     public String text;  
  12. }  

上述代码已经完成了一段XML和Java文件的映射的配置,只需要使用@Elemet, @Attribute and @Text这三个注释即可,映射只需要两行代码:

  1. Xmappr xm = new Xmappr(Root.class);  
  2. Root root = (Root) xm.fromXML(reader);  

如果你不喜欢注释,还可以使用使用XML配置的方式来配置映射:

  1. <root-element name="root" class="package.name.Root">  
  2.   <attribute field="a">  
  3.   <element field="node">  
  4.   <text field="text">  
  5. </text>  
  6. </element></attribute></root-element> 

来自: theserverside
27
2
评论 共 39 条 请登录后发表评论
39 楼 Arden 2010-02-05 11:47
这个东西怎么按照我指定的xml元素的顺序来生成xml文件啊?
38 楼 coollzh 2010-01-06 22:37
这个功能在.NET里很早就有了,而且可以指定Attribute和element得名称,可以用缩写,大大减少xml的数据量
37 楼 eddie404956 2010-01-06 21:43
我很早就写过一个框架,任意对象转换成任意格式的XML,用OGNL和XPATH写的。
36 楼 GreatNeyo 2010-01-06 20:21
杯具就这样发生了!赞楼主一个
35 楼 GreatNeyo 2010-01-06 20:08
疑难杂症匹夫有责花飘万家雪震
34 楼 zidanexun 2010-01-06 18:56
就是,轮子也好,人家写出来,肯定有你学习的地方,老兄谦虚点吧。像你这种总说轮子的人。我感觉你本身就是一个轮子
33 楼 HEXLee 2010-01-06 13:43
简单实用
32 楼 superhanliu 2010-01-06 11:04
记得以前用jbuilder的时候,jbuilder的向导里面有个功能就是解析xml和生成xml的功能。只需要一个dtd文件就能自动生成java文件,类似与这个例子中的Root类。然后对Java类型进行操作,最后就能生成相应的xml文件,反之也是一样。。
31 楼 xczheng_07 2010-01-06 11:03
为了解析xml,还增加xml的配置貌似有问题
30 楼 kevintse 2010-01-06 09:07
说这是一个轮子的都是一些光说不练的人。有本事你也写一个出来看看~就80K,你写得出来吗?
29 楼 liu78778 2010-01-06 08:32
在效率方面和dom4j比如何?
28 楼 elgs 2010-01-06 02:20
一直在期待的东西,用来读配置文件太好了。
27 楼 grandboy 2010-01-05 16:00
有时间仔细看一下,我就在写xml的时候就特别不想用那些大框架,我实际上只能用到它们所具有的1%的功能,但是我要把整个都搞进来。有的时候,由于开源协议的要求,还要把它的license放在里面(由于无视开源协议的人,就无所谓了)。就算是轮子,有新功能和带来新的方便的好轮子,也要表扬一下。
26 楼 gnomewarlock 2010-01-05 15:43
je上吹牛逼者居多.
私下里一看,尽是一群酒囊饭袋
25 楼 jitabc 2010-01-05 15:01
比jaxb有什么优势?轮子?
24 楼 aaa5131421 2010-01-05 14:09
既然你们不觉得这是个轮子,那你说说他有什么创新的地方?它又满足了什么新的需求呢?你不让人家说这是轮子,那你给大伙解释一下么,对不对~~~
23 楼 rocwon 2010-01-05 13:17
XStream
22 楼 diggywang 2010-01-05 13:03
JAXB的简化版
21 楼 wujiazhao88 2010-01-05 12:59
楼上几位锑看不懂就说是轮子。我觉得做得不错,虽然我一直用dom4j
20 楼 刃之舞 2010-01-05 12:29
发现有些人超级喜欢对一些新的框架加以“轮子”的评论,以显示自己的见识多,和满足自己的那恶心的阴暗的莫名其妙的优越感

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

Global site tag (gtag.js) - Google Analytics