http://wangwenjunhi.iteye.com/blog/567219
好像在2010年一月初的时候刚刚发布了0.9版本,这个框架的主要作用就是用来进行读取配置文件(xml)的,但是和以前我们常用的有所不同,他是直接用java的对象和xml进行映射,在我们以前读取xml的时候,哪怕是使用了jdom,dom4j,xpath等的相关API,获得字段仍然失去了他本来的属性,比如说他之前是一个integer类型的,我们获取到的一律都是string类型的,如果配置文件数量比较多,配置项比较多,我们还要垒一些看似一样的代码。
一:概要
Xmappr是一个使用纯Java编写的处理XML的类库,提供一种非常简单的方式来处理XML,可以将任意XML与Java类相映射。
主要特性:
映射通过注释或外部配置实现
可以缓存未映射元素
保持XML元素顺序
可以自定义类型转换器
完全支持XML命名空间
线程安全(设计用于多线程使用)
不包含任何依赖关系
整个类库大小只有80kb
采用BSD许可
二:示例
Xmappr的使用非常简单,更为详细的API和说明可以直接查看他的官方文档
http://www.theserverside.com/news/thread.tss?thread_id=59078,首先我们引入jar文件,注意你的jdk版本需要是6.0以上的才可以,如果不是6.0的需要从sun的官网下载xmlstream相关的jar。直接来代码演示:
<?xml version="1.0" encoding="UTF-8"?>
<root a="2.2">
some text
<node>123</node>
</root>
上述的是一段配置文件。
package com.neusoft.xmappr;
import org.xmappr.Attribute;
import org.xmappr.Element;
import org.xmappr.RootElement;
import org.xmappr.Text;
@RootElement
public class Root {
@Attribute
public float a;
@Element
private Integer node;
@Text
public String text;
/**
* @return the a
*/
public float getA() {
return a;
}
/**
* @param a the a to set
*/
public void setA(float a) {
this.a = a;
}
/**
* @return the node
*/
public Integer getNode() {
return node;
}
/**
* @param node the node to set
*/
public void setNode(Integer node) {
this.node = node;
}
/**
* @return the text
*/
public String getText() {
return text;
}
/**
* @param text the text to set
*/
public void setText(String text) {
this.text = text;
}
}
上述是配置文件对应的javabean,好了看一下我们的测试代码
@Test
public void testAnnotaionTypeXmappr() throws FileNotFoundException {
Xmappr xmappr = new Xmappr(Root.class);
FileReader reader = new FileReader(XML_PATH);
Root root = (Root) xmappr.fromXML(reader);
Assert.assertEquals(2.2f, root.getA());
}
程序运行没有任何问题,是不是和以前的方式进行xml读取相比较方便了很多。详细的说明请直接查看官方文档,在这里只做一个引子,主要是想说明一下annotation带给程序的一些方便。
分享到:
相关推荐
本教程将聚焦于如何使用第三方库——xmappr,来快速且高效地解析XML文件。 xmappr是一个Java库,它提供了简洁的API,使得XML到Java对象的映射变得异常简单。相比于传统的DOM、SAX或StAX解析器,xmappr通过其直观的...
官方的xmappr-0.9.3.jar,试试吧!
Xmappr是一个用Java实现的XML处理工具,它可能提供了高效且易于使用的API,帮助开发者更便捷地处理XML文档。 7. **2010年JFreeChart图表的新功能**: JFreeChart,一个流行的Java图表库,发布了新版本,增加了新...
该项目是一款基于freeRTOS操作系统和STM32F103x微控制器的手机远程控制浴室温度系统设计源码,共包含1087个文件,包括580个C语言源文件、269个头文件、45个汇编源文件、36个数据文件、36个目标文件、35个编译规则文件、28个包含文件、27个文本文件、6个源文件、3个归档文件。此系统通过手机远程实现对浴室温度的有效控制,适用于智能浴室环境管理。
labview程序代码参考学习使用,希望对你有所帮助。
labview程序代码参考学习使用,希望对你有所帮助。
labview程序代码参考学习使用,希望对你有所帮助。