📜  EJB 中的分布式对象(企业Java Bean)——显式与隐式中间件(1)

📅  最后修改于: 2023-12-03 15:14:51.021000             🧑  作者: Mango

EJB中的分布式对象(企业Java Bean)——显式与隐式中间件

企业Java Bean(EJB)是一种Java EE平台的规范,提供了一种服务界面,允许Java应用程序使用分布式计算环境。EJB支持分布式对象,可以在远程机器上访问和使用,分布式对象可以直接从另一个进程中获取到,这使得构建分布式系统变得容易。

有两种类型的分布式对象:显式和隐式中间件。在下面的介绍中,我们将讨论这两种中间件。

显式中间件

显式中间件是明确安装的中间件。这些中间件是独立的,并通过网络进行通信。它们管理分布式对象的存储和检索,这使得对象能够在本地或远程机器上访问。

在EJB中,显式中间件提供了两种不同的分布式对象模型:RMI-IIOP和Java消息服务(JMS)。

RMI-IIOP

RMI-IIOP是一种基于CORBA的协议,允许Java和非Java应用程序之间进行通信。在EJB中,RMI-IIOP允许对象在本地网络之间进行通信。

使用RMI-IIOP时,需要安装一个ORB(对象请求代理)和IIOP(Internet内部对象协议)实现。ORB是一个标准的CORBA实现,它将应用程序代码和IIOP协议之间进行映射。IIOP是一个面向对象的网络协议,允许CORBA对象在网络上进行通信。

JMS

Java消息服务(JMS)是一种分布式消息传递协议。在EJB中,JMS允许分布式对象通过消息传递进行通信,这允许分布式对象在异步方式下进行通信,而不必等待另一个对象的响应。

使用JMS时,需要安装一个消息代理。消息代理是一种中间件,可以管理消息的发送和接收。在EJB中,JMS消息代理用于在应用程序之间进行消息传递和通信。

隐式中间件

隐式中间件是自动安装和配置的中间件。这些中间件被包装在应用程序服务器中,不需要像显式中间件一样明确安装和配置。

在EJB中,应用服务器提供了一些隐式中间件,如JNDI(Java命名和目录接口)和Java数据库连接池(JDBC)。

JNDI

Java命名和目录接口(JNDI)是一种Java平台接口,用于管理Java对象的命名和位置信息。在EJB中,JNDI使得分布式对象能够被定位和访问。

使用JNDI时,需要在应用程序服务器上配置一个JNDI实现。这个实现允许应用程序在注册中心中注册和查找Java对象。在EJB中,JNDI允许分布式对象在应用程序之间进行查找和访问。

JDBC

Java数据库连接池(JDBC)是一个Java API,用于管理和连接数据库。在EJB中,JDBC提供了一个接口,使得分布式对象能够通过数据库存储和检索数据。

使用JDBC时,需要安装并配置一个JDBC驱动程序。这个驱动程序允许Java应用程序连接到数据库服务器,并将数据存储在数据库中。在EJB中,JDBC允许分布式对象在本地或远程机器上访问和存储数据。

结论

EJB提供了一种强大的分布式对象模型,使得分布式系统的构建变得容易。无论是使用显式还是隐式中间件,EJB都提供了一些不同的选择来管理分布式对象的存储和访问。这使得开发人员能够灵活地选择最适合其需要的中间件。