解析XML和Java对象

问题描述:

我想从一个XML文件中选择一个perticular节点,然后将其解析为一个Java对象解析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注释基础工作。

请大家帮忙。

感谢

可以过滤与例如节点启动XSL或StaX API。 然后使用JAXB解组对象。

使用SAX,并采取了JAX-B的回报和,您可以用以下链接

http://docs.oracle.com/cd/E12840_01/wls/docs103/webserv/data_types.html