【问题标题】:JacksonXML simple list of Strings serialization and desirializationJackson XML 简单字符串序列化和反序列化列表
【发布时间】:2021-02-23 10:57:16
【问题描述】:

我有这个 xml

<DeviceSettings>
        <Messages>
            <Message>1</Message>
            <Message>2</Message>
            <Message>3</Message>
        </Messages>
</DeviceSettings>

我的 Kotlin 数据类:

data class DeviceSettings(
    @JacksonXmlElementWrapper(localName = "Messages")
    @JacksonXmlProperty(localName = "Messages")
    val  messages: List<String>
)

这看起来工作正常,但我真的不明白为什么当序列化对象时它会变成这样

<DeviceSettings>
<Messages>
<Messages>1</Messages>
<Messages>2</Messages>
<Messages>3</Messages>
</Messages>
</DeviceSettings>

我也想要这样的结构:

data class DeviceSettings(
    @JacksonXmlProperty(localName = "Messages")
    val  messages: List<Message>
)

data class Message(
    val value: String,
)

但是上面的错误类型错误

【问题讨论】:

    标签: java android kotlin jackson-dataformat-xml


    【解决方案1】:

    通过

    解决
    data class DeviceConfig(
        @JacksonXmlProperty(localName = "Messages")
        val  messages: Messages
    )
    
    data class Messages(
        @JacksonXmlElementWrapper(localName = "Messages" ,useWrapping = false)
        @JacksonXmlProperty(localName = "Message")
        val messages: List<String>
    )
    

    【讨论】:

      猜你喜欢
      • 2020-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-11
      • 2016-12-11
      • 1970-01-01
      • 2018-07-18
      • 2023-03-23
      相关资源
      最近更新 更多