您的位置:首页 > 编程语言 > Java开发

利用jaxb进行xml与javabean的数据绑定

2015-08-08 16:17 519 查看
首先编写xml文件,

如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<jtzc>
<pcu_d_model number="2">
...
</pcu>
</pcu_d_model>
<hjcs>
<sdmc>工程隧道</sdmc>
<gldj>1</gldj>
<sjss>100 </sjss>
<ddsxjt>false</ddsxjt>
<haibagd>400</haibagd>
<szqy>96.8581</szqy>
<kqmd>1.1471</kqmd>
<xjqw>30</xjqw>
<hqcs>4</hqcs>
<sddmj>100.1</sddmj>
<sddmzc>40.7</sddmzc>
<pjpd>0.028</pjpd>
<!-- 左洞起点桩号 -->
<zqdlc>50660</zqdlc>
<!-- 左洞末点桩号 -->
<zzdlc>52645</zzdlc>
<!-- 右洞起点桩号 -->
<yqdlc>50680</yqdlc>
<!-- 右洞末点桩号 -->
<yzdlc>52645</yzdlc>
<yytffs>1</yytffs>
<yyzmgy>2</yyzmgy>
<suidaoL>1980</suidaoL>
</hjcs>
</jtzc>


通过trang.jar这个包来生成XML Schema

java -jar trang.jar jtzc.xml jtzc.xsd

生成的jtzc.xsd后通过jaxb2.1插件生成javabean

文件打开:
JAXBContext jaxbContext = JAXBContext.newInstance(Jtzc.class,
Hjcs.class, PcuDModel.class, Pcu.class, Cheliang.class,
Chelianglist.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
jtzc = (Jtzc) jaxbUnmarshaller.unmarshal(file);


文件保存:
JAXBContext context = JAXBContext.newInstance(Jtzc.class,
Hjcs.class, PcuDModel.class, Pcu.class, Cheliang.class,
Chelianglist.class);
Marshaller marshaller = context.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.setProperty(Marshaller.JAXB_ENCODING, "UTF-8");

FileWriter writer = new FileWriter(new File(filename));
marshaller.marshal(jtzcfxpan.getJtzc(), writer);
使用netbeans编程时可以使用netbeans的插件xml-tools,下载rar文件后,通过netbeans中“工具”-->“插件”安装,安装完成后在工具栏出现其快捷操作。
xml-tools的下载地址:http://plugins.netbeans.org/plugin/21893/xml-tools
Binding WSDL to Java with JAXB   https://netbeans.org/kb/74/websvc/jaxb.html[/code]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息