【问题标题】:Is there a need in JAXB implementation for Android?Android 是否需要 JAXB 实现?
【发布时间】:2013-04-16 18:37:45
【问题描述】:

据我所知,目前还没有适用于 Android 平台的 JAXB 实现。

我想问一个简单的问题 - Android 上是否需要 JAXB?

作为一名 JAXB 爱好者,我考虑为 Android 编写一个 JAXB 实现。我可能不会移植 JAXB RI,因为它对于移动应用程序来说有点太胖了,我宁愿从头开始编写它。我写了一个JAXB port for JavaScript,所以我知道这是可以管理的。

但是你们需要吗?或者您对 SimpleXML 等其他工具是否满意?

【问题讨论】:

    标签: android jaxb jaxb2


    【解决方案1】:

    lexicore 在 android 上需要 JAXB,SimpleXML 很棒,在某些方面我更喜欢它而不是 JAXB,但是 JAXB 是一种标准并且被广泛使用。

    一个非常有用的例子是,如果一个 Android 应用可以与一个 EE 应用共享一个装满 JAXB POJO 的 jar,并将这些与 EE 应用的 RESTful 调用一起使用。

    【讨论】:

    【解决方案2】:

    作为一名在我开发的几乎每个应用程序中都进行大量 XML 和 JSON 解析和框架的 Android 开发人员,我的回答是:不,Android 上不需要 JAXB。其他工具完全符合要求。要么这样,要么我们 Android 开发人员已经习惯了 JAXB 的缺失,我们每个人都已经习惯了其中一种替代方案。

    在我的例子中,我什至通过在 服务器 上用我最喜欢的 Android XML 序列化库替换 JAXB 来实现代码重用。

    【讨论】:

    • 如果您使用需要 JAXB 的库怎么办?我们也应该重写那个库吗?并在库发布安全漏洞修复程序时让我们的分支保持最新?我有更多有用的问题需要用我的编程时间来解决。
    【解决方案3】:

    JAXB 似乎几乎是 Android 上的一个东西。至少,如果this question thread 的内容是可信的。

    似乎需求量很大,因为 Dalvik VM 无法支持依赖反射的 JAXB 组件。所以,也许这毕竟是有用的。 :)

    【讨论】:

    • 我认为该线程指出 JAXB 实际上在 Android 上支持,还是我弄错了?
    • 它没有预装 Android,但线程表明您可以将其滑入您的 APK。复杂性:再往下,在整个 Google 中,Dalvik VM 无法处理反射组件的投诉多种多样。所以,再想一想:即使标准库以某种能力使用,至少一个教程和一个在Android中工作的罐头实现似乎是非常需要的。 :)
    • 请参阅docx4java.org/blog/2012/05/jaxb-can-be-made-to-run-on-android,了解您需要执行哪些操作才能使参考实现在 Android 上运行。
    【解决方案4】:

    事实证明,Android 本身并不支持 JAXB。另一种方法是包含该库并使用它,但这会浪费大量资源(JAXB 库非常大)。

    在快速搜索中,IBM Developerworks 发现了一篇有趣的文章。我浏览了文档。我不认为该库像 JAXB 那样强大或多才多艺,但它应该适合大多数意图和目的。此外,它是由 Android 原生支持的,因此应该相当高效。

    该文档的链接是: http://www.ibm.com/developerworks/opensource/library/x-android/

    还有很多人强烈推荐的另一个库。 顺丰链接为:http://sourceforge.net/projects/simple/ zip 包仅重 2.5M,这意味着它的重量非常轻。

    【讨论】:

    • 我并不是真的在寻找 JAXB 替代品。我的问题是,具体来说,Andorid 的 JAXB 实现是否是人们希望拥有的东西。
    【解决方案5】:

    JAXB 参考实现需要大约 3.5MB 的空间,并使用 Android 中缺少的功能。因此,与 Android 兼容的实现会更大,因为它需要额外提供这些功能的实现。

    许多 Android 手机的内部存储空间都配备了 40MB 或更少的可用空间。这就是 OEM 版本,在网络通过添加额外的应用程序和无法卸载的免费试用版来“定制”它们之前。因此,只要您希望拥有这些手机的人安装您的应用程序,您就不想让它变得那么大。大多数应用程序开发人员希望他们的应用程序尽可能广泛地使用。因此,在我看来,对 Android 大型库的实现感兴趣的人数将非常有限。

    【讨论】:

    • 我的 JavaScript 的 JAXB 端口是 ca。 140kb。注释和反射绝对是一个问题,但我认为它可以通过特殊的 XJC 插件来解决。一般来说,我刚刚得出的结论是,这种努力是不值得的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-06
    • 2019-07-24
    • 2011-02-09
    • 2016-01-02
    • 2013-02-12
    • 1970-01-01
    • 2017-05-09
    相关资源
    最近更新 更多