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元素顺序,和保持元素顺序的处理方法啊?
分享到:
相关推荐
本教程将聚焦于如何使用第三方库——xmappr,来快速且高效地解析XML文件。 xmappr是一个Java库,它提供了简洁的API,使得XML到Java对象的映射变得异常简单。相比于传统的DOM、SAX或StAX解析器,xmappr通过其直观的...
- **排序后的XML保存**:对List排序后,可以将其数据保存回XML文件,确保元素按照新的顺序排列。 通过以上方法,C#开发者可以高效地处理XML文档,同时利用List的排序功能对数据进行组织和管理。在实际项目中,这两...
当我们想要计算XML文档中特定元素的所有子元素的总和时,LINQ to XML提供了便捷的方法。 以下是使用C# LINQ to XML进行元素值总计的基本步骤: 1. 引入命名空间:在C#代码中,首先需要引入`System.Xml.Linq`命名...
第6章(\C06) 示例描述:本章介绍LINQ to XML... QueryOrderElement 演示通过XElement对XML元素进行排序。 QuerySubElement 演示通过XElement查询XML元素的子元素。 LoadXMLTree 演示通过XElement加载XML树。
在这个项目中,我们可能需要根据XML文件中特定元素的值对数据进行排序。这涉及到数据结构(如列表或数组)的排序算法。Python内置的`sorted()`函数或列表的`sort()`方法可以实现排序,但需要提供一个比较函数或key...
此外,XML提倡自我描述性,这意味着元素的含义应从其名称和上下文中推断出来,而不是依赖于位置或顺序。 XML文档可以通过DTD(Document Type Definition)或XSD(XML Schema)进行验证,确保文档符合预设的结构规则...
Python自带的ElementTree保存xml时不会保留节点属性的原始顺序,会重新排序。 这里提供一个Monkey Patch使ElementTree保存xml时能够保留节点属性的原始顺序,附有sample。
在本主题“XML分页排序数据岛”中,我们将深入探讨如何利用XML数据岛实现数据的分页和排序功能,特别是在与后台数据源结合的情况下。 首先,理解XML数据岛的概念至关重要。XML是一种结构化数据的标记语言,用于存储...
之前做一个开发项目,要校验xml报文合法性,根据Schema使用javax.xml.validation.Validator倒是能验证XML,但是要求是顺序一致才行,一直没找到合适的排序,就自己写了一个排序代码,根据xsd规范文件给xml排序,有...
对XML元素进行排序,通常需要先将其转换为`XmlNodeList`,然后使用自定义的排序逻辑: ```csharp // 获取元素列表 XmlNodeList elements = doc.SelectNodes("//elementName"); // 自定义排序逻辑 elements.Sort((x,...
XML DOM 定义了所有 XML 元素的对象和属性,以及访问它们的方法(接口)。 换句话说:XML DOM 是用于获取、更改、添加或删除 XML 元素的标准。 模块简介: 1、XMLDOMDocument类: XML对象文档 ->操作创建或读写...
本教程将详细介绍如何在不同的编程语言中读取XML元素值。 1. Python中的XML处理 Python提供了几个库来处理XML,如`xml.etree.ElementTree`。首先,我们需要导入这个库,然后解析XML文件,最后通过元素路径来获取值...
php操作xml入门之xml基本介绍及xml标签元素.doc
然后,用DTD或XSD定义上述元素的规则,确保每个个人介绍的XML文档都符合规范。 接下来,我们可以通过CSS(Cascading Style Sheets)为XML添加样式,使个人介绍以表格形式呈现。XML本身并不包含样式信息,但可以通过...
- 库的主要类包括`XMLDocument`(XML文档对象)、`XMLElement`(XML元素)、`XMLText`(XML文本)、`XMLComment`(XML注释)和`XMLAttribute`(XML属性)等。 2. **解析XML文件** - 使用`XMLDocument::LoadFile()...
3. **DTD(文档类型定义)**:DTD是一种定义XML文档结构的规范,它可以规定元素的类型、顺序和数量。例如,`<!ELEMENT element (child-element)*>`表示`element`元素可以包含零个或多个`child-element`子元素。 4. ...
4. **设置排序**:用户可以设定元素的排序规则,比如按照文件名升序排列,确保XML文件中元素的顺序符合需求。 5. **生成XML**:点击生成按钮,软件将根据设定生成XML文件,其中包含所选文件夹内文件的信息。 6. **...
XML文件由一系列的元素(Element)组成,每个元素可以有属性(Attribute)和子元素。元素通过标签(Tag)定义,例如`<element>`和`</element>`,它们之间的内容被视为元素文本。属性则在元素标签内以`name="value"`...