xml-mapping xml 与 java 对象转换映射框架,像 XStream 一样优雅地读写xml
2024-10-16 16:49:34
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>
配置框架
最新文章
- HangOver
- C#基础--面向对象计算器
- POJ C程序设计进阶 编程题#3:运算符判定
- [转] Python自动单元测试框架
- .NET通用权限系统快速开发框架
- [转贴]C++、C#写的WebService相互调用
- Js中单引号和双引号的区别
- PHP上传图片至阿里云
- UIStepper 缩放:UI的使用
- JavaScript中国象棋程序(5) - Alpha-Beta搜索
- C语言课程设计(成绩管理系统)
- 济南清北学堂游记 Day 7.
- Zend Framework在windows下的安装
- ubuntu apt update failed to fetch
- PHP代码片段
- Random-Forest-Python
- smart contract 知识点
- Java 动态字节码技术
- Nmap备忘单
- 脚本检测CDN节点资源是否与源站资源一致
热门文章
- 设置更改root密码、连接mysql、mysql常用命令
- C语言l-2019秋作业01
- JSON.parse() 报错和一些解决方法
- 把一个控制器的view添加到另外一个控制器
- linux进程间通信之共享内存学习记录
- mysql的两阶段协议(封锁定理,虫洞事务)
- python 计算两个日期间的小时数
- 洛谷 题解 P4613 【[COCI2017-2018#5] Olivander】
- luogu P3152 正整数序列
- react-native 相对项目路径导入组件 ___ babel-plugin-module-resolver