日期:2014-05-20  浏览次数:20883 次

如何用java解析下面这个xml文件,获取各个节点的值,并映射到bean中

<?xml version="1.0" encoding="UTF-8"?>
<ROOT xmlns="http://www.ctzj.com/crm/xmlBean/vbc/orderlinestatusquery" IntObjectName="CTZJ Order Line Status IO for VBC" IntObjectFormat="Siebel 

Hierarchical">
<SERVICE>
<ResultData>
<ResultSet name="resultset1" totalcount="1">
//主单
<BillInfo1>
<SrcMainSN>710113112118636242</SrcMainSN>
<MainSN>2013112133482194</MainSN>
<Title>电话 新装A</Title>
<UrgentFlag>0</UrgentFlag>
<SpecialtyName>电话</SpecialtyName>
<FirstReceptTime>2013-11-21 16:59:31</FirstReceptTime>
<DispatchTime>2013-11-21 18:06:20</DispatchTime>----到单时间
<RepairOperName>杭州本地网管理员(小灵通:1231243242)(移动电话:123124124)</RepairOperName>
<RepairPostName>杭州本地网管理员岗</RepairPostName>
<RepairUnitName>杭州分公司</RepairUnitName>
<ProcessFlag>待回单</ProcessFlag>
//子单
<DispQueue1>
<DispatchSN>20131158377723</DispatchSN>
<DispatchTime>2013-11-21 18:06:19.0</DispatchTime>
<EnterTime>2013-11-21 18:06:19.0</EnterTime>
<DispOperName>SysPc</DispOperName>
<RepairOperName>杭州本地网管理员(小灵通:1231243242)(移动电话:123124124)</RepairOperName>
<RepairPostName>杭州分公司</RepairPostName>
<RepairUnitName>杭州分公司</RepairUnitName>
<StepLimitTime>0</StepLimitTime>
<StepBefalarmTime>1900-01-01 00:00:00.000</StepBefalarmTime>
<StepReqEndTime>1900-01-01 00:00:00.000</StepReqEndTime>
<ChangeDispNum>0</ChangeDispNum>
<ChgLimitNum>0</ChgLimitNum>
</DispQueue1>
</BillInfo1>
</ResultSet>
</ResultData>
<ReturnCode>0</ReturnCode>
<Message>成功查找到工单</Message>
</SERVICE>
</ROOT>
java解析xml

------解决方案--------------------
楼主先百度一下DOM4J解析XML例子,这样你就能从XML里拿到值了。
然后再百度一下JAVA反射例子,这样你就可以把值复到BEAN里了。
------解决方案--------------------
搞对象的思想:SERVICE是一个类,有属性ReturnCode、Message、ResultData;ResultData又是一个对象。以此类推,搞下去。
方法?就按1L说的,一点点解析好了。
------解决方案--------------------
结构很清晰,会解析了,然后一个个塞进去。