使用 Java EE 连接器体系结构连接器来访问数据
要从 WebSphere® Application Server 中符合 Java™ EE 连接器体系结构 (JCA) 的应用程序中访问数据,请配置并使用资源适配器和连接工厂。
关于此任务
应用程序组件使用连接工厂来访问连接实例,然后组件使用此实例连接到下层的企业信息系统 (EIS)。连接的示例包括数据库连接、Java 消息服务连接和 SAP R/3 连接。
如 Java EE 连接器体系结构 (JCA) 规范所述,每个企业信息系统 (EIS) 都需要一个资源适配器和一个连接工厂。然后,可以通过以下编程模型来访问此连接工厂。如果您使用 Rational® Application Development 工具,那么将为您生成下列部署描述符和代码中的大部分内容。此示例显示访问 EIS 资源的手动方法。
过程
示例
下列代码段显示了应用程序组件可能会如何创建交互并在 EIS 上实现:
javax.resource.cci.ConnectionFactory connectionFactory = null;
javax.resource.cci.Connection connection = null;
javax.resource.cci.Interaction interaction = null;
javax.resource.cci.InteractionSpec interactionSpec = null;
javax.resource.cci.Record inRec = null;
javax.resource.cci.Record outRec = null;
try {
// Locate the application component and perform a JNDI lookup
javax.naming.InitialContext ctx = new javax.naming.InitialContext();
connectionFactory = (javax.resource.cci.ConnectionFactory)
ctx.lookup("java:comp/env/eis/myConnection");
// create a connection
connection = connectionFactory.getConnection();
// Create Interaction and an InteractionSpec
interaction = connection.createInteraction();
interactionSpec = new InteractionSpec();
interactionSpec.setFunctionName("GET");
// Create input record
inRec = new javax.resource.cci.Record();
// Execute an interaction
interaction.execute(interactionSpec, inRec, outRec);
// Process the output...
} catch (Exception e) {
// Exception Handling
}
finally {
if (interaction != null) {
try {
interaction.close();
}
catch (Exception e) {/* ignore the exception*/}
}
if (connection != null) {
try {
connection.close();
}
catch (Exception e) {/* ignore the exception */}
}
}