jaxb 使用之 unmarshall

<?xml version="1.0" encoding="UTF-8"?> <post xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="post.xsd"> <id>0</id> <author>taoge</author> </post>

<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="post" type="postType"/> <xs:complexType name="postType"> <xs:sequence maxOccurs="unbounded"> <xs:element name="id" type="xs:long" minOccurs="0"></xs:element> <xs:element name="tiebaName" type="xs:string" minOccurs="0"></xs:element> <xs:element name="url" type="xs:string" minOccurs="0"></xs:element> <xs:element name="title" type="xs:string" minOccurs="0"></xs:element> <xs:element name="author" type="xs:string" minOccurs="0"></xs:element> </xs:sequence> </xs:complexType> </xs:schema>

public static void unmarshall() throws Exception{ path = URLDecoder.decode(path, "utf-8"); System.out.println(path); JAXBContext factory = JAXBContext.newInstance(Post.class); Schema schema = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI) .newSchema(new File(path,"post.xsd")); Unmarshaller ums = factory.createUnmarshaller(); ums.setSchema(schema); Post post = (Post) ums.unmarshal(new File(path,"post.xml")); System.out.println(post.getAuthor()); }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值