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图表库,发布了新版本,增加了新...
街道级行政区划shp矢量数据,wgs84坐标系,下载直接使用
街道级行政区划shp数据,wgs84坐标系,直接下载使用。
街道级行政区划shp矢量数据,wgs84坐标系,下载直接使用
轻量级密码算法LBlock的FPGA优化实现.docx
街道级行政区划shp矢量数据,wgs84坐标系,下载直接使用
Git 资料 progit-zh-v2.1.1.pdf
街道级行政区划shp数据,wgs84坐标系,直接下载使用。
篮球计分器FPGA附程序..doc
街道级行政区划shp数据,wgs84坐标系,直接下载使用。
内容概要:本文档全面介绍了Linux开发的基础知识、应用场景、环境搭建、常用命令、Shell脚本编程以及C/C++和Python开发等内容。首先阐述了Linux开发的重要性及其在服务器端开发、嵌入式开发和系统运维等领域的广泛应用。接着详细讲解了如何选择合适的Linux发行版并安装系统,配置开发环境,包括安装必要的开发工具和配置SSH服务。文档还深入讲解了Linux基础命令,如文件和目录操作、文件内容查看与编辑、进程管理和权限管理。此外,介绍了Shell脚本编程的基本语法,包括变量、条件语句、循环语句和函数定义。针对C/C++和Python开发,文档分别讲解了编译器安装、程序编写与编译、调试方法及使用虚拟环境等内容。最后,简要介绍了Linux内核开发的相关知识,包括下载编译内核、内核模块开发等,并推荐了相关学习资源。 适合人群:对Linux开发感兴趣的初学者及有一定经验的研发人员,尤其是希望深入掌握Linux开发技能的开发者。 使用场景及目标:①掌握Linux开发环境的搭建与配置;②熟悉Linux基础命令和Shell脚本编程;③学习C/C++和Python在Linux下的开发流程;④了解Linux内核开发的基本概念和技术。 阅读建议:此文档内容丰富,涵盖面广,建议读者根据自身需求选择性阅读,并结合实际操作进行练习。特别是对于初学者,应先掌握基础命令和开发环境的搭建,再逐步深入到编程语言和内核开发的学习。
街道级行政区划shp数据,wgs84坐标系,直接下载使用。
街道级行政区划shp数据,wgs84坐标系,直接下载使用。
街道级行政区划shp数据,wgs84坐标系,直接使用。
内容概要:本文档《word练习题.docx》是一份详细的Word操作练习指南,涵盖了从基础到高级的各种功能。文档分为三个主要部分:内容编辑、页面布局和高效文档。内容编辑部分包括文本格式化、段落设置、项目编号、制表位、边框与底纹等练习;页面布局部分涉及分节符、分栏、页眉页脚、水印等设置;高效文档部分则聚焦于样式管理、导航窗格、题注、书签、超级链接、脚注与尾注、交叉引用等功能。每个练习都有具体的操作步骤,帮助用户掌握Word的各种实用技巧。 适合人群:适用于Word初学者及希望提高Word技能的中级用户,尤其是需要频繁使用Word进行文档编辑和排版的办公人员。 使用场景及目标:①帮助用户熟悉Word的基本操作,如文本编辑、格式设置等;②提升用户的文档排版能力,学会设置复杂的页面布局;③提高工作效率,掌握高效文档管理技巧,如样式应用、题注和交叉引用等。 其他说明:此文档不仅提供了具体的练习题目,还附带了详细的步骤说明,用户可以根据指引逐步完成每个练习。此外,文档中的一些练习涉及到智能文档和Office智能客户端的应用,有助于用户了解Word在企业级应用中的潜力。建议用户按照章节顺序逐步学习,实践每一个练习,以达到最佳的学习效果。
街道级行政区划shp数据,wgs84坐标系,直接下载使用。
全球腐败感知数据(2000-2023)——3000行 33个指标 关于数据集 该数据集包含3000行和33列,涵盖了2000年至2023年的腐败感知指数(CPI)数据和各种治理指标。它包括国家排名、分数和其他指标,如公共部门腐败、司法腐败、贿赂指数、商业道德、民主指数、法治、政府效率、经济指标和人类发展指数。 这些数据可用于: 腐败趋势分析 腐败对GDP、人类发展指数和治理的影响 跨国比较 数据可视化和机器学习模型 该数据集对研究人员、数据分析师、政策制定者和对研究全球腐败趋势非常有用。
毕业设计(论文) 基于FPGA的数字频率计设计.doc