JavaEE连接器体系结构-系统契约和公共客户端接口之间的区别



我需要创建一个幻灯片,以一种简单的方式介绍JCA。现在我试着理解整件事,但有些地方我还是卡在那里。我正在阅读IBM教程,在其示例代码中,它不实现交易和安全合同,而是使用交互,InteractionSpec, RecordFactory和IndexedRecords接口/类(我想这是CCI)。

在一个共享中,我发现他们声明需要实现JCA v1规范中的契约,如果我理解正确的话,在这个例子中只使用了"连接管理契约"。

(ConnectionMetaData, ConnectionFactory, Connection)或(ManagedConnectionFactory, ManagedConnection, ManagedConnectionMetaData) <-它们之间的区别是什么,接口前缀是"Managed",即所谓的"ManagedConnection Contract"?

我也不太确定,但CCI只用于创建资源适配器吗?或者我可以将它用作应用程序服务器内的"框架",以便与资源适配器通信。在Bean示例中,它们使用JNDI查找来获取ConnectionFactory的实例,并使用扩展CCI类的重载方法。

我理解合同"做"什么,但我什么时候使用系统合同,什么时候使用CCI。我不明白它的目的。

CCI是我的资源适配器中的某种"API方法",然后我可以在我的应用程序服务器实现中使用吗?

JCA的第一眼是如此复杂。

如何与JBoss中的资源适配器通信,例如Tomcat设置。

是的,JCA是一个相当复杂的机器。由客户端(即EJB、Servlet)操作的对象不是JCA适配器中的内部对象。

据我回忆,这种"分离"的原因之一是连接池由应用程序服务器管理。因此,获取连接是客户机、应用程序服务器和资源适配器内部之间的交互。我很长时间没有使用JCA了,所以我记不清细节了。然而,我在几年前的一篇博客文章中倾倒了我对JCA的理解,也许它会对你有所帮助。

最新更新