XML - JAXB示例
来源:互联网 发布:慧心莲禅服 淘宝 编辑:程序博客网 时间:2024/05/22 04:56
一、简介
JAXB 即 Java Architecture for XML Binding,它提供一个绑定的编译器和一个运行时框架用来支持 XML 和 Java 对象的双向映射。
二、示例
1、marshaller
代码:
JAXBContext ctx = JAXBContext.newInstance(User.class);Marshaller marshaller = ctx.createMarshaller();User user = new User(1, "admin", new Role(1, "System", "System Management"));marshaller.marshal(user, System.out);结果:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><user><id>1</id><name>admin</name><role><id>1</id><name>System</name><note>System Management</note></role></user>
2、unmarshaller
代码:
JAXBContext ctx = JAXBContext.newInstance(User.class);Unmarshaller unmarshaller = ctx.createUnmarshaller();String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>" + "<user>" +"<id>1</id>" +"<name>admin</name>" +"<role>" +"<id>1</id>" +"<name>System</name>" +"<note>System Management</note>" +"</role>" +"</user>"; User user = (User) unmarshaller.unmarshal(new StringReader(xml));System.out.println(user);
结果:
User [id=1, name=admin, role=Role [id=1, name=System, note=System Management]]
import javax.xml.bind.annotation.XmlRootElement;/** * 实体, 需注解@XmlRootElement,否则异常javax.xml.bind.MarshalException */@XmlRootElementpublic class User {private int id;private String name;private Role role; /** getter and setter **/}
public class Role {private int id;private String name;private String note; /** getter and setter **/}
0 0
- XML - JAXB示例
- java使用jaxb操作xml示例
- JAXB注解小示例
- JAXB解析xml
- JAXB解析XML
- JAXB (1) xml<->Java
- JAXB解析xml
- JAXB解析XML
- xml篇-JAXB
- XML JAXB样例
- JAXB解析xml
- xsd、xml、jaxb
- JAXB与XML
- JAXB:XML to JavaBean
- jaxb解析xml
- 使用JAXB创建XML
- JAXB解析xml实例
- JAXB -java<->xml
- [BZOJ 1012][JSOI2008]最大数maxnumber
- poj2184 Cow Exhibition(p-01背包的灵活运用)
- 特殊符号
- dumpbin的使用
- linux获取系统时间
- XML - JAXB示例
- [十进制小数] 与 [二进制小数] 互相转换
- form表单的onsubmit()不起作用的问题
- PAT1072. Gas Station
- 教你如何将hadoop Eclipse 整合
- 购物网站中购物车的简单实现
- ecshop二次开发之商品属性选择性遍历
- Git历险记(四)
- RandomAccessFile【1】