happyxml
项目地址:https://github.com/yuancihang/happyxml
短小精悍的xml操作封装, 只有几百行代码. 支持注解绑定到对象
public static void sampleQuery() { Dom root = Dom.parse(Paths.get("src/main/resources", "person.xml").toAbsolutePath()); System.out.println(root.childText("firstname")); Dom lastnameDom = root.findChild("lastname"); System.out.println(lastnameDom.text()); Dom phoneDom = root.findChild("phone"); System.out.println(phoneDom.childText("code")); System.out.println(phoneDom.childText("number")); Dom faxDom = root.findChild("fax"); System.out.println(faxDom.attr("code")); System.out.println(faxDom.attr("number")); List<Dom> friendDomList = root.findChild("friends").findChildren("friend"); for(Dom friendDom : friendDomList){ System.out.println(friendDom.text()); } } public static void sampleUpdate() { Dom root = Dom.newDom("person"); root.addChild("firstname", "Joe"); Dom lastnameDom = root.addChild("lastname"); lastnameDom.text("Walnes"); Dom phoneDom = root.addChild("phone"); phoneDom.addChild("code", "123"); phoneDom.addChild("number", "1234-456"); Dom faxDom = root.addChild("fax"); faxDom.attr("code", "123"); faxDom.attr("number", "9999-999"); Dom friendsDom = root.addChild("friends"); friendsDom.addChild("friend", "zhang"); friendsDom.addChild("friend", "wang"); System.out.println(root.toString()); } public static void sampleBindObject(){ try { String xml = readResources("user_buyer_get_response.xml"); UserBuyerResponse response = Jaxb.parse(UserBuyerResponse.class, xml); response.getUserList().forEach(System.out::println); } catch (IOException e) { e.printStackTrace(); } } private static String readResources(String name) throws IOException{ Path path = Paths.get("src/main/resources", name).toAbsolutePath(); return new String(Files.readAllBytes(path), StandardCharsets.UTF_8); }
person.xml
<?xml version="1.0" encoding="UTF-8"?> <person> <firstname>Joe</firstname> <lastname>Walnes</lastname> <phone> <code>123</code> <number>1234-456</number> </phone> <fax code="123" number="9999-999" /> <friends> <friend>zhang</friend> <friend>wang</friend> </friends> </person>
user_buyer_get_response.xml
<user_buyer_get_response> <user> <nick>hz0799</nick> <sex>m</sex> <avatar>http://assets.taobaocdn.com/app/sns/img/default/avatar-120.png</avatar> </user> </user_buyer_get_response>
maven
<dependency> <groupId>com.github.yuancihang</groupId> <artifactId>happyxml</artifactId> <version>1.1</version> </dependency>
gradle
compile 'com.github.yuancihang:happyxml:1.1'
相关推荐
4. **实验性质项目**:开发者用于尝试新技术或新想法的小型项目。 ### 四、如何有效利用Unity开源项目 1. **评估项目质量**:在开始学习之前,先大致浏览项目,了解其结构和功能,判断是否符合自己的需求。 2. **...
QT开源项目源码是软件开发领域中的宝贵资源,尤其对于想要深入理解图形用户界面(GUI)编程、跨平台应用开发以及C++编程实践的开发者来说,具有极高的学习价值。QT是一个广泛使用的开源框架,由Qt公司开发并维护,它...
项目名称:Smart Mall - 基于Python Django的在线商城开源项目 技术栈:主要采用Python编程语言,结合HTML和JavaScript实现前端交互。 项目构成:总计24个文件,具体包括: - Python源文件(.py):16个,涵盖了...
蓝湖移动端辅助工具是一款专为开发者设计的开源项目,旨在简化移动端开发过程中控件属性的复制和粘贴操作。此工具的最新版本为v1.0.2,它能够极大地提高开发效率,尤其是在处理iOS和Android平台上的布局时。通过一键...
项目概述:基于Python Flask的在线成绩发布学习平台是一个开源项目,...该项目旨在为广大用户提供一个便捷的在线学习环境,集中管理和发布学生的成绩信息,其开源性质允许并鼓励用户根据自身需求进行定制化修改和扩展。
Android开源项目汇总 Android 开源项目软件apk Android 开源项目软件apk=============最全的自定义控件等等===========
在Java的生态系统中,存在诸多著名的开源项目,这些项目各有特色,为Java开发人员提供了丰富的开发工具和应用架构。以下是对一些Java著名开源项目的详细介绍,它们分别在不同的开发领域中扮演着重要角色。 首先,...
在 IT 领域,开源项目一直扮演着重要的角色,它们不仅推动了技术的发展,也为开发者提供了学习和实践的平台。对于游戏爱好者来说,GitHub 上有许多有趣的开源游戏项目,能够让我们深入了解游戏开发的过程,甚至参与...
【标题】"经典开源项目1"揭示了我们讨论的主题,这是一个关于开源软件的集合,特别是针对安卓平台。开源项目在IT行业中占据着重要的位置,它们促进了技术创新,为开发者提供了学习和改进现有技术的机会。这些项目...
黄敬群是一位活跃于开源社区的开发者和创业者,参与并贡献了多个开源项目,其中包括轻量级桌面环境LXDE、为Java定制的GCC工具链、Android开源项目、Linaro以及Linux国际化项目SCIM等。在他的经验分享中,黄敬群强调...
Vue相关开源项目库汇总
开源项目代码是软件开发领域中的一个重要组成部分,它代表了开发者们共享、协作和改进软件的开放精神。在本文中,我们将深入探讨开源项目代码的相关知识点,包括其定义、优势、参与方式、常用平台以及如何有效地利用...
原来的网上的开源项目很多都跑不起来,这个项目,经本人修改,经测试在android4.0系统上运行已经没问题,研究了下,发现对需要做视频通话的人来讲还是有很大帮助,特此贡献出来,供大家研究学习,压缩文件是在linux...
数字人开源项目_(Digital_human_project)_MiniMeta
GitHub开源项目SlidingMenu的类库,导入之后可以直接使用 教程地址:http://blog.csdn.net/yangyu20121224/article/details/9255829
教你如何用Github找开源项目(保姆级教程)教你如何用Github找开源项目(保姆级教程)教你如何用Github找开源项目(保姆级教程)教你如何用Github找开源项目(保姆级教程)教你如何用Github找开源项目(保姆级教程)教你...
Java项目HTTPDNSLib开源源码Java项目HTTPDNSLib开源源码Java项目HTTPDNSLib开源源码Java项目HTTPDNSLib开源源码Java项目HTTPDNSLib开源源码Java项目HTTPDNSLib开源源码Java项目HTTPDNSLib开源源码Java项目HTTPDNSLib...
【标题】"Android开源项目"涉及的是Android操作系统平台上的开源代码项目,这通常指的是开发者公开分享的源代码,供其他开发者学习、使用或改进。在Android开发领域,开源项目不仅有助于提升开发效率,还能促进技术...
17届全国大学生智能汽车竞赛无线充电组开源项目 17届全国大学生智能汽车竞赛无线充电组开源项目 17届全国大学生智能汽车竞赛无线充电组开源项目 17届全国大学生智能汽车竞赛无线充电组开源项目 17届全国大学生智能...
panda开源项目,panda开源项目,panda开源项目