Jackson XML简单列表之Strings序列化与反序列化
JacksonXML simple list of Strings serialization and desirialization
我有这个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,
)
但是上面显示了错误类型的错误
通过
解决
data class DeviceConfig(
@JacksonXmlProperty(localName = "Messages")
val messages: Messages
)
data class Messages(
@JacksonXmlElementWrapper(localName = "Messages" ,useWrapping = false)
@JacksonXmlProperty(localName = "Message")
val messages: List<String>
)
我有这个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,
)
但是上面显示了错误类型的错误
通过
解决data class DeviceConfig(
@JacksonXmlProperty(localName = "Messages")
val messages: Messages
)
data class Messages(
@JacksonXmlElementWrapper(localName = "Messages" ,useWrapping = false)
@JacksonXmlProperty(localName = "Message")
val messages: List<String>
)