【问题标题】:PHP communicating with Java ServerPHP 与 Java 服务器通信
【发布时间】:2009-08-20 08:24:39
【问题描述】:

生日,

我有一个项目,我需要构建一个“实时”Java 应用程序(服务器)来保存有关域对象的状态(它是一个私人拍卖系统)。 Java 服务器将与包含主要后端业务功能的 PHP 类进行通信。 PHP 类将是无状态的。

我需要将域对象与 Java 服务器(来自 PHP)进行通信,以便随着时间的推移管理它们的状态。需要通过调用 Web 服务器上的 PHP 类将域对象的更改保存回数据存储。

我正在考虑使用 XML-RPC 类(例如 Zend_Xmlrpc_Server)包装我的 PHP 类,因为它们将是无状态的。如果/当 java 应用程序需要写入数据存储时(通过调用正确的 PHP 类方法),则需要使用 XML-RPC 客户端库类。

但是,我不确定如何在 java 应用程序中公开功能,以便可以通过 PHP 方法调用来访问它。谁能告诉我在java中最简单的方法......我只是编写一个多线程应用程序并公开一个套接字吗?我正在寻找合适的库类来构建 java 应用程序。

干杯, 保罗

【问题讨论】:

    标签: java php xml-rpc


    【解决方案1】:

    将您的服务器端 Java 代码公开为 Web 服务。

    在 Java 中有无数种方法可以做到这一点,但想到的两种方法是 EJB3 WS AnnotationsApache Axis

    顺便说一句,无论您选择哪种技术,请确保您将其视为一种传输方式,并将实际处理逻辑与其分开。

    【讨论】:

    • 我支持这种方法。您不想将系统的这两个部分紧密耦合,而 Web 服务方法(或基于消息的 REST ...... - 列表无穷无尽)允许您在这两个部分之间建立明确的合同。 Apache 也有 CXF 作为 Axis 的替代品。
    • 谢谢,但我的后端 Java 应用程序需要存储状态 - 所以需要始终在内存中运行。这些方法是否与此兼容?干杯,保罗。
    • 就像我对传输概念所说的那样,确保将其分开,然后您剩下的就是一个 Java 服务器,它肯定允许您以一种或另一种最强大的方式维护状态,并且直接的方法是将其存储在数据库中。
    • @stevendick:+1 用于消息传递或 REST,比 SOAP WS 容易得多。
    【解决方案2】:

    您是否已经尝试过PHP Java Bridge 工具?

    【讨论】:

      猜你喜欢
      • 2013-08-20
      • 1970-01-01
      • 2020-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多