我想从XMl文件中选择一个特定节点,然后将其解析为java对象
例如我的sample.xml文件如下
<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:GetStudyInfo xmlns:ns2="http://com.study/">
<WSResult>
<ResultCode>eMaven-0000</ResultCode>
<ResultDesc>Ok</ResultDesc>
</WSResult>
<return>
<StudyNumber>Q005</StudyNumber>
<StudyTitle>Stomach</StudyTitle>
<StudyPI></StudyPI>
<eirbNumber></eirbNumber>
<SponsorID></SponsorID>
<SponsorName></SponsorName>
<SponsorContact></SponsorContact>
<OtherInfo></OtherInfo>
<StudyDiv></StudyDiv>
<StudyID>904</StudyID>
<StudyStatus></StudyStatus>
<RevBoard></RevBoard>
<InitalAppDate>01-01-1900</InitalAppDate>
</return>
<return>
<StudyNumber>Q004</StudyNumber>
<StudyTitle>Brain Tumor</StudyTitle>
<StudyPI></StudyPI>
<eirbNumber></eirbNumber>
<SponsorID></SponsorID>
<SponsorName></SponsorName>
<SponsorContact></SponsorContact>
<OtherInfo></OtherInfo>
<StudyDiv>Cardiology</StudyDiv>
<StudyID>891</StudyID>
<StudyStatus>Active/Enrolling</StudyStatus>
<RevBoard></RevBoard>
<InitalAppDate>01-01-1900</InitalAppDate>
</return>
</ns2:GetStudyInfo>
</S:Body>
现在我的要求是采用“返回”节点,然后将其所有元素放在java对象中。
想要使用JAXB注释基础工作。
请帮忙。
由于
答案 0 :(得分:1)
您可以使用以下方法过滤节点: XSL或StaX API。 然后使用JAXB解组对象。
答案 1 :(得分:0)
使用SAX并获取返回,对于JAX-B,您可以从以下链接开始
http://docs.oracle.com/cd/E12840_01/wls/docs103/webserv/data_types.html