1

我正在使用我的应用程序处理服务器响应。我把这些东西作为字符串的响应。

<Body>
  <HotelRQ xmlns="urn:Hotel_Search">
<POS>
         <Source Username='USERNAME' Password='PASSWORD' PropertyID='PROPERTYID' />
</POS>
<AvailRequests>
     <AvailRequest>
      <StayDateRange Start='2009-09-05T12:00:00' End='2009-09-06T12:00:00'/>
      <RoomStays>
            <RoomStay> <!—for Room 1->
                <GuestCounts>
                    <GuestCount Count='2'/>
                </GuestCounts>
                <ChildCounts> 
                    <ChildAge Age='10'/>
                    <ChildAge Age='09'/>
                </ChildCounts>
            </RoomStay>

          </RoomStays>
          <SearchCriteria>
        <Criterion>
        <HotelRef HotelCityName='CITY' HotelName='' Area='' Attraction='' Rating=''/>
        <Sorting Preference='2'/>
                                             <ResponseType Compact="Y"/>
        </Criterion>
          </SearchCriteria>
        </AvailRequest>
      </AvailRequests>
    </HotelRQ>
</Body>

我可以为此使用 jaxb 吗?

我正在使用这个文件来解析我得到的服务器响应。我需要做什么来使用 JAXB 解析它。我以字符串格式获取它。我如何直接映射到 java 类变量或 bean?谢谢。

4

1 回答 1

0

你可以看到这个问题:How do I load an org.w3c.dom.Document from XML in a string?

在将 XML 字符串加载到 DOM 文档中之后,您可以调用该方法getElementsByTagName来检索特定标签,然后对其进行迭代,getNodeValue用于提取标签内的值并getAttribute提取属性。

您不能在运行时轻松地将其映射到具有需求字段的 Java 类,但是您可以使用简单的方法将元素的解析和提取包装在一个类中,例如 getRooms()

于 2012-12-01T11:31:19.607 回答