【问题标题】:JSON server suggestion on linux platformslinux 平台上的 JSON 服务器建议
【发布时间】:2012-09-15 11:58:04
【问题描述】:

我需要为我的移动应用程序创建一个 JSON 服务,以便从 Linux 上的本地和远程 http/https 服务器获取和发布数据。 -我使用 MySQL 作为数据库引擎- 我尝试使用 Glassfish EJB/JSP(我喜欢 Java),但这有点令人沮丧,因为我的 linux 开发机器(mint 13)对 Oracle Glassfish 的支持很差。

在您看来,在该环境中创建远程 JSON 服务器的最佳方式是什么?我有哪些选择?

【问题讨论】:

    标签: linux json rest mobile


    【解决方案1】:

    如果您想接受并发送回 JSON,您需要一个基于 JAX-RS 的服务,而不是 JSP 服务。

    您很可能会使用 JerseyRESTEasyCXF 或 JAX-RS 规范的类似实现。

    从 JAX-RS 实现发回 JSON 很简单;这就是 JAX-RS 的设计目的。一般来说,JSP 用于 Web 应用程序(返回 HTML、CSS、图像和 JavaScript),而 JAX-RS 用于 RESTful Web 服务,返回 JSON、XML 和 YAML。您可以使用 JSP 生成 JSON,但这并不常见。

    就您的整体架构而言,任何网络服务器(Apache、Tomcat 等)都可以,您可以使用 Springframework 或完整的应用服务器,如 JBoss 或 Glassfish。 Springframework 有自己的 REST 支持,但我已经多次使用 JAX-RS 和 Spring,它运行良好。由于您已经在使用 Glassfish,因此集成 JAX-RS 实现应该很简单。 This article from Oracle 告诉你怎么做。

    【讨论】:

    • 听起来不错。是否有任何支持 JAX-RS 的开源 http 服务器?我认为 Java EE 6 文档是基于 glassfish 的,我无法在 linux 上安装它。
    • 是的,我使用过 Tomcat(网络服务器)+ Spring(应用程序框架)+ Jersey(JAX-RS)。全部开源。我在回答中提到了 Glassfish,因为您似乎对它很熟悉,但我会推荐 Spring :)
    【解决方案2】:

    嗯,我想你需要找到一个让你有信心的好框架。

    我使用 Zend PHP + Doctrine 为我的应用程序提供服务。为什么?我只是在像 Zend 这样的优秀 MVC 中创建简单的控制器,并使用 Doctrine 的所有功能来处理查询。好的,但是为什么呢?因为我在上面开发了快速整洁的代码。

    最好的

    【讨论】:

    • 我有一段时间想改用 PHP。我知道优点。我想我会在下一个项目中给它一个机会。谢谢。