xml-mapping xml 與 java 對象轉換映射框架,像 XStream 同樣優雅地讀寫xml

xml

xml 是 java 實現的 xml 框架。php

但願以最優雅的方式進行 xml 和 java 之間的轉換處理,一行代碼搞定一切。java

特色

  • 對象的和 xml 的互相映射git

  • 支持註解 @Alias 指定別名github

  • 支持註解 @Ignore 指定忽略的字段json

變動日誌

CHANGE_LOGapp

快速開始

準備

jdk 1.7+框架

maven 3.x+maven

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 字符串內容。spa

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>
複製代碼

配置框架

json

property

csv

xml

相關文章
相關標籤/搜索