我可以使用 Struts作为 Web 应用程序的后端,PHP 作为前端?如果是,可能会产生什么影响。
最佳答案
首先想到的是Quercus (来自 Resin servlet 引擎的制造商),正如 Jordi 提到的。它是 PHP 运行时的 Java 实现,据称允许您直接从 PHP 访问 Java 对象(我的一部分说“是的,终于”)。
另一方面,虽然我一直渴望尝试这种方式的项目,但我可能会保持 Java EE 和 PHP 之间的分离,除非有真正的理由在代码级别进行集成。
相反,你为什么不尝试 SOA方法,您的 PHP“前端”通过 HTTP 上定义的 REST 或 SOAP API(强烈支持 REST)调用 Struts 应用程序。
http://mydomain.com/rest/this-is-a-method-call?parameter1=foo
您可以使用 Struts 构建整个“后端”模型,仅处理业务逻辑和数据,完全忽略表示。当您使用这些 URL 公开 API 时,您基本上正在构建一个 REST API(如果您需要提供对后端的更多访问权限(可能是通过其他客户端应用程序),那么稍后可能会派上用场)。
您的 PHP 应用程序可以单独构建(并且相当精简),调用 REST API(可能使用 Curl),就像调用数据库或某些 native PHP 类库一样。
无论如何,这就是我要做的。但是,如果您确实使用 Quercus,请发布它是如何进行的。
关于PHP 和 Java EE 后端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38948/