JAXB

依赖

<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency> <dependency>
<groupId>javax.xml</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.1</version>
</dependency> <dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>

读取xml配置

User类
@XmlRootElement
public class User{
private Integer id;
private String name;
// gettters and setters
} xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user>
<id>1</id>
<name>叶</name>
</user> 获取配置
User user = JAXB.unmarshal(new File("C:\\Users\\26401\\Desktop\\demo.xml"), User.class);

写配置

User user = new User();
user.setName("小叶");
user.setId(2);
JAXB.marshal(user, new File("C:\\Users\\26401\\Desktop\\demo.xml")); 结果
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user>
<id>2</id>
<name>小叶</name>
</user>

自定义写配置

@XmlAccessorType(XmlAccessType.NONE)
public class User{ @XmlElement
private Integer id; @XmlElement(name="username")
private String name; @XmlAttribute
private String nameDescribe; @XmlTransient
private Integer age; @XmlElement
public Integer getPassAge() {
return age;
} public void setPassAge(Integer val) {} public User(){} public User(Integer id, String name, String nameDescribe, Integer age) {
this.id = id;
this.name = name;
this.nameDescribe = nameDescribe;
this.age = age;
}
} 写数据
User user = new User(1, "叶家伟", "用户姓名", 18);
JAXB.marshal(user, new File("C:\\Users\\26401\\Desktop\\demo.xml")); 结果
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user nameDescribe="用户姓名">
<id>1</id>
<username>叶家伟</username>
<passAge>18</passAge>
</user>

结语

本文章是java成神的系列文章之一

如果你想知道,但是本文没有的,请下方留言

我会第一时间总结出来并发布填充到本文

最新文章

  1. 【Swift学习】Swift编程之旅---析构方法(十九)
  2. HTTP Status Code [RFC]
  3. Nodejs编码转化问题
  4. 优秀js插件收藏
  5. sid超过8个字符处理步骤
  6. centos6.4-x86-64系统更新系统自带Apache Http Server
  7. UVA - 11637 Garbage Remembering Exam (组合+可能性)
  8. struts2(二) 表单参数自动封装和参数类型自动转换
  9. Pycon 2017: Python可视化库大全
  10. headfirst设计模式(3)—装饰者模式
  11. LeetCode之“字符串”:最短回文子串
  12. TPshop之短信注册配置(阿里云)
  13. js原生动态创建表格
  14. FastJSON、Gson和Jackson性能对比
  15. XFF的学习+修改源码--Are you in class
  16. C++ 求最长递增子序列(动态规划)
  17. bootstrap 后台模板
  18. 批量初始化数组和memset函数
  19. 移动端 h5开发相关内容总结——CSS篇
  20. windows下 删除指定文件夹里面一周前的所有文件和文件夹的bat

热门文章

  1. 【lightoj-1063】Ant Hills(求割点)
  2. Prism5.0新内容(纯汉语版)
  3. LeetCode OJ:Permutations II(排列II)
  4. OC-文件操作
  5. Tinymce group plugin
  6. 偶然遇到的samba服务器权限问题
  7. Golang 编译成 DLL 文件
  8. (二)Nginx反向代理与负载均衡的实现
  9. 重温CLR(二)生成、部署以及程序集
  10. Oracle临时表和SQL Server临时表的不同点对比