java - 不带模式解码 xml

标签 java xml jaxb schema

我正在使用 JAXB 将 xml 转换为对象。我正在手动创建类,因为 WS 供应商不向我们提供架构。

XML 是:-

<com:DayAndTimeAvailability>
    <com:DayTypes>
        <com:MondayToSunday />
    </com:DayTypes>
    <com:OpeningHours>
        <com:TwentyFourHours />
    </com:OpeningHours>
</com:DayAndTimeAvailability>

我对“DayTypes”元素感到困惑。它可以有值 <com:MondayToFriday/>,<com:Weekend/>,<com:MondayToSunday/>, <com:Monday/>,<com:Tuesday/>, <com:Wednesday/>,<com:Thursday/>, <com:Friday/>,<com:Saturday/>, <com:Sunday/> 。 我想要一个字符串变量,其值基于上面提到的元素。就像我得到 <com:MondayToFriday/>在 xml 中,然后我需要将值 Monday - Friday 24 Hours a Day 保存在字符串中。

有人可以帮助我吗?

最佳答案

如果你有xml,那么就不需要手动创建类。 为该 xml 创建 xsd,然后使用 xjc 命令可以生成 POJO。 要将 xml 映射到对象,请使用此,

    JAXBContext context = JAXBContext.newInstance(YourMainClass.class);
            Unmarshaller u = context.createUnmarshaller();
            yourMainClassObject= (YourMainClass) u.unmarshal(new StringReader(xml));

关于java - 不带模式解码 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28669433/

相关文章:

python - 避免在 python 中将 < 字符写入 XML

xml - 异常 : src-resolve. 4.2:解析 xsd 中的组件时出错

java - 如何通过 Maven 覆盖默认的 JAXB 版本?

java - 整数类对象

java - 如何在HQL中连接多个表

java - 无法使用 Apache POI 3.13 解析 CTDataModel

java - 使用 JAXB 解码/编码 List<String>

java - @XmlJavaTypeAdapter 带继承

java - 通用方法调用

java - 从 JSONObject 获取键和值