xml-mapping xml 与 java 对象转换映射框架,像 XStream 一样优雅地读写xml
xml
xml 是 java 实现的 xml 框架。
希望以最优雅的方式进行 xml 和 java 之间的转换处理,一行代码搞定一切。
特点
对象的和 xml 的互相映射
支持注解
@Alias指定别名支持注解
@Ignore指定忽略的字段
变更日志
快速开始
准备
jdk 1.7+
maven 3.x+
maven 引入
<dependency>
<groupId>com.github.houbb</groupId>
<artifactId>xml-mapping</artifactId>
<version>0.0.3</version>
</dependency>
转换为 xml
User user = defaultUser();
String xml = XmlMappingBs.newInstance().toXml(user);
User 参见类 User.java
转换为 java 对象
XML 为对应的 xml 字符串内容。
User user = XmlMappingBs.newInstance().toBean(XML, User.class);
指定别名
注解说明
@Alias 可以放在指定类和字段上,用于指定我们想要的别称信息。
使用案例
- 对象定义
@Alias("user")
public class AliasUser {
@Alias("nickname")
private String name;
private String hobby;
}
- 测试代码
AliasUser user = defaultAliasUser();
String xml = XmlMappingBs.newInstance().toXml(user);
详情参见 XmlMappingBsAliasTest.java
- 生成效果
<?xml version="1.0" encoding="UTF-8"?>
<user>
<nickname>hello</nickname>
<hobby>world</hobby>
</user>
忽略指定字段
说明
有时候我们希望某些字段不参与 xml 的转换,那么可以通过 @Ignore 指定忽略的字段。
使用案例
- 对象定义
public class IgnoreUser {
private String name;
@Ignore
private String hobby;
}
- 测试代码
和原来使用完全相同,详情参见 XmlMappingBsIgnoreTest.java
IgnoreUser user = defaultIgnoreUser();
String xml = XmlMappingBs.newInstance().toXml(user);
结果
<?xml version="1.0" encoding="UTF-8"?>
<IgnoreUser>
<name>hello</name>
</IgnoreUser>
配置框架
xml-mapping xml 与 java 对象转换映射框架,像 XStream 一样优雅地读写xml的更多相关文章
- 总结学习! xml与java对象转换 --- JDK自带的JAXB(Java Architecture for XML Binding)
JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术.该过程中,JAXB也提供了将XML实例文档反向 ...
- Java对象转换成xml对象和Java对象转换成JSON对象
1.把Java对象转换成JSON对象 apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串.也可以把JavaBean转换成JSON字符串. json-lib的核心 ...
- Java&Xml教程(十一)JAXB实现XML与Java对象转换
JAXB是Java Architecture for XML Binding的缩写,用于在Java类与XML之间建立映射,能够帮助开发者很方便的將XML和Java对象进行相互转换. 本文以一个简单的例 ...
- Java&Xml教程(十一)JAXB实现XML与Java对象转换
JAXB是Java Architecture for XML Binding的缩写,用于在Java类与XML之间建立映射,可以帮助开发人员非常方便的將XML和Java对象进行相互转换. 本文以一个简单 ...
- JAVA对象转换JSON
1. 把java 对象列表转换为json对象数组,并转为字符串 复制代码 代码如下: JSONArray array = JSONArray.fromObject(userlist); String ...
- cassandra 数据到Java对象的映射绑定
类似Hibernate和MyBatis的关系映射,自动帮你将查询数据或是修改的参数进行数据映射和绑定. 支持查询后返回数据ResultSet到Java对象的映射,支持修改.删除.查询之前参数的绑定. ...
- Hibernate(开放源代码的对象关系映射框架)
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自 ...
- JavaEE之Hibernate(开放源代码的对象关系映射框架)
Hibernate(开放源代码的对象关系映射框架) 1.简介 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全 ...
- android对象关系映射框架ormlite之一对多(OneToMany)
前两天,用ormlite对单张表进行了基本的操作,但是,我们知道通常情况对于单张表格进行操作在实际情况中很前两天不现实,那么ormlite能否像Hibenate那样实现多张表之间的一对多,多对多(即O ...
随机推荐
- Spring IOC容器装配Bean_基于XML配置方式
开发所需jar包 实例化Bean的四种方式 1.无参数构造器 (最常用) <?xml version="1.0" encoding="UTF-8"?> ...
- 前后台分离的 NET Core 通用权限管理系统
前言 从事软件开发这个行业现在已经有十几年了,项目无论大小权限认证.授权模块总是或多或少有功能需求的,这一块费时费力但是又存在于后台,使用最多的可能是运维人员所以处于出力不讨好的尴尬地位,每次有新的项 ...
- MySQL必知必会(创建计算字段(field))
#字段(field)基本上和列(column)的意思相同 SELECT Concat(vend_name, ' (', vend_country, ')') FROM vendors ORDER BY ...
- CoderForces-375D
You have a rooted tree consisting of n vertices. Each vertex of the tree has some color. We will ass ...
- CodeForces1000A- Codehorses T-shirts
A. Codehorses T-shirts time limit per test 2 seconds memory limit per test 256 megabytes input stand ...
- AI Boot Camp 分享之 ML.NET 机器学习指南
今天在中国七城联动,全球134场的AI BootCamp胜利落幕,广州由卢建晖老师组织,我参与分享了一个主题<ML.NET 机器学习指南和Azure Kinect .NET SDK概要>, ...
- vs2017/vs2019 去掉 单击aspx文件预览页面
初次安装vs2017或者vs2019,新建的项目中,每次单击项目文件时,文件自动打开了 然后 打开 工具->选项->环境->选项卡和窗口->预览选项卡->勾掉" ...
- Python3 循环和判断小练习
设计一个函数, 在桌面上创建10个文本, 以数字给它们命名 def text_creation(): path = r'C:\Users\Black\Desktop\test\\' for name ...
- 深入学习CSS3-flexbox布局
学习博客:https://css-tricks.com/snippets/css/a-guide-to-flexbox/ 学习博客:http://caibaojian.com/demo/flexbox ...
- Ubuntu19.10安装
# 有一说一,UI好看多了 正文开始 # 1.做U盘 # 2.修改BIOS选择U盘引导 底下有提示,F5/F6切换项目 # 3.进入引导盘 这个界面多了比19.10之前的版本多了两个选项, ...