0

我们正在开发标准的 Java SE 应用程序,有必要在远程服务器上实现一些逻辑(使用在 OpenShift PaaS 上运行的 Java EE)。我的问题是,在 SE 客户端和 EE 应用程序之间远程调用类/方法的最佳方式是什么?

我的建议:

  • EJB 远程调用:但是,通信是否加密(或可能这样做)?
  • 通过 JAX-RS 公开 EBJ:看起来不错,可以使用 SSL 加密

感谢您的任何建议。

4

1 回答 1

0

这个问题的标题表明Java SE客户端在Spring中。如果提供的 PaaS 允许,您甚至可以选择 Spring。从长远来看,这将对您有所帮助,因为维护您的应用程序的技能将很少。也会提高效率。JAX-RS 是 Spring 提供的特性和 EJB 几乎相同。

假设您一定会使用 EJB,我建议您使用“通过 JAX-RS 公开 EBJ”。

优点 -

  1. 它避免了客户端和服务的紧密耦合。远程调用将使客户端知道 EJB。
  2. 将来,您可以选择将您的技术从 EJB 更改为其他技术,那么客户端受到的影响将降至最低。
  3. 如果你想用 Java 以外的任何其他技术编写客户端,那么它会很顺利。
  4. 节省与 JNDI 设置相关的时间

缺点 -

  1. 编组和取消编组的额外时间。
  2. 客户端和服务器端的请求-响应转换
于 2013-07-24T08:12:16.093 回答