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'
相关推荐
看过awesome-go项目, 汇总了很多go开源项目。 但是awesome-go收集了太全了, 而且每个项目没有详细描述。 因此我自己根据go语言中文社区提供的资料,还有互联网企业架构设计中的常见组件分类, 共精心挑选了100多个...
qt的开源项目源码qt的开源项目源码qt的开源项目源码qt的开源项目源码
。net开源项目。net开源项目。net开源项目。net开源项目。net开源项目。net开源项目。net开源项目
C#开源项目信息汇总
基于VC++和MFC的一些优秀开源项目列表 包括7-Zip,eMule,FileZilla,MiKTeX,Nokia Composer等优秀项目,有兴趣的同行可以参考参考。
本教程描述了Java领域最著名的开源项目
android开源项目.rarandroid开源项目.rarandroid开源项目.rarandroid开源项目.rarandroid开源项目.rarandroid开源项目.rar
分享6个国内优秀Java后台管理框架的开源项目,建议收藏!.docx分享6个国内优秀Java后台管理框架的开源项目,建议收藏!.docx分享6个国内优秀Java后台管理框架的开源项目,建议收藏!.docx分享6个国内优秀Java后台管理框架...
android开源项目源码,完整商城项目源码(服务端+客户端) 内附开发文档,以及商城效果图 ECServer_D为服务端,ECClient_D为客户端
目录 Qt官网下载/文档 Qt知名社区 Qt技术博客1 Qt开源框架 KDE/Qt Qt Github精品收藏1 -- IDE ...Qt sourceforge精品项目 Qt Git Client GUI Qt开发的大型开源软件 Qt开发环境搭建: Qt基础知识: C++学习书籍推荐:
20个Java开源项目源码打包下载,Java 是一种面向对象的编程语言,用于构建移动、桌面、Web 和嵌入式应用程序。
Android开源项目汇总 Android 开源项目软件apk Android 开源项目软件apk=============最全的自定义控件等等===========
自己收藏的几十个开源项目(28G设计资料),适用于毕业设计.docx自己收藏的几十个开源项目(28G设计资料),适用于毕业设计.docx自己收藏的几十个开源项目(28G设计资料),适用于毕业设计.docx自己收藏的几十个开源项目(28G...
百度云自取,里面有90几套项目开源资源,没有整理过。
常用阿里开源项目合集
Activiti7的开源项目,用于二次开发!
.Android开源项目分类汇总,汇总了大部分的开源项目,欢迎大家下载学习。
Java开源项目Hibernate包作用详解 Java开源项目Hibernate包作用详解 Java开源项目Hibernate包作用详解 Java开源项目Hibernate包作用详解Java开源项目Hibernate包作用详解
“流行的c++语言开源项目”中列举了当下比较流行的c++开源项目,想开源码提升自己的可以看看。