在 Jackson 的 ObjectMapper 中默认使用数组而不是 ArrayList

发布于 2024-10-10 09:55:21 字数 234 浏览 4 评论 0原文

默认情况下,Jackson 的 ObjectMapper 将未知列表反序列化为 ArrayList,是否可以使用 String[] 代替?

class SomeBean {
  Object[] items;
}

例如,此 JSON 导致 items[0] 的类型为 ArrayList:

{"items":[["a", "b"]]}

By default, Jackson's ObjectMapper de-serialises unknown lists as ArrayList, can it be made to use String[] instead?

class SomeBean {
  Object[] items;
}

For example, this JSON results in the type of items[0] being ArrayList:

{"items":[["a", "b"]]}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

迷爱 2024-10-17 09:55:21

目前还没有,但如果您想看到此类功能,您可以通过在 Jackson JIRA (http://jira.codehaus.org/browse/JACKSON) 创建功能请求来建议它。实施应该相当简单;由“DeserializationConfig.Feature.JSON_ARRAYS_AS_JAVA_ARRAYS”(或其他)之类的东西启用。

我在这里假设您希望看到一个 Object[],因为它不能保证内容都是字符串(可能有数字、字符串、布尔值、列表/映射等)。

Not currently, although if you would like to see such feature, you could suggest it by creating a feature request at Jackson JIRA (http://jira.codehaus.org/browse/JACKSON). Implementation should be rather simple; enabled by something like 'DeserializationConfig.Feature.JSON_ARRAYS_AS_JAVA_ARRAYS' (or whatever).

I assume here that you would like to see an Object[], since it can not be guaranteed that contents are all Strings (could have Numbers, Strings, Booleans, lists/maps etc).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文