W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Order對(duì)象中包含Product對(duì)象,這在項(xiàng)目中是常見(jiàn)情形。
public void test1() throws JAXBException {
Product p = new Product();
p.setId("1100");
p.setName("Apple");
Order order = new Order();
order.setId("1101");
order.setPrice(23.45);
order.setProduct(p);
JAXBContext context = JAXBContext.newInstance(Order.class);
Marshaller marshaller = context.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.marshal(order, System.out);
}
Order對(duì)象的第三個(gè)屬性是個(gè)復(fù)雜的數(shù)據(jù)類(lèi)型。
@XmlRootElement(name = "Order")
public class Order {
private String id;
private Double price;
private Product product;
//setters, getters
}
被嵌套的 Product 不需要使用 @XmlRootElement
注解,使用注解 @XmlAccessorType
是因?yàn)槲蚁矚g將注解標(biāo)注在字段Filed
上面。
@XmlAccessorType(XmlAccessType.FIELD)
public class Product {
@XmlAttribute
private String id;
private String name;
//setters, getters
}
生成的XML含有兩個(gè)層級(jí)。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Order>
<id>1101</id>
<price>23.45</price>
<product id="1100">
<name>Apple</name>
</product>
</Order>
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: