资源引用的优点

WebSphere® Application Server 要求您的代码通过逻辑名引用应用程序服务器资源(例如数据源或 J2C 连接工厂),而不是直接访问 Java™ 命名和目录接口 (JNDI) 名称空间中的资源。这些逻辑名称为资源引用

由于下列原因,Application Server 要求使用资源引用:
  • 如果应用程序代码直接在 JNDI 命名空间中查询数据源,那么该数据源保持的每个连接都将继承应用程序中定义的属性。因此,在将数据源配置为保持多个应用程序之间的共享连接时,可能会生成大量异常。例如,需要不同连接配置的应用程序可能会尝试访问该特定数据源,从而导致应用程序失败。
  • 它使程序员不必了解目标应用程序服务器上实际数据源或连接工厂的名称。
  • 您可以通过资源引用设置数据源的缺省隔离级别。如果没有资源引用,您获得的将是所使用的 JDBC 驱动程序的缺省隔离级别。
以下使用资源引用的示例通过查询方法为数据源创建占位符来调用该数据源。通过使用逻辑名称 jdbc/Section,该代码将占位符存储在 JNDI 子上下文 java:comp/env/ 中;因此,jdbc/Section 变成资源引用。(子上下文 java:comp/env/ 是 WebSphere Application Server 专门为应用程序代码中的对象引用提供的名称空间。)
javax.sql.DataSource specificDataSource  = 
   (javax.sql.DataSource) (new InitialContext()).lookup("java:comp/env/jdbc/Section"); 
//The method InitialContext()).lookup creates the logical name, or resource reference, jdbc/Section. 
通常,实际的数据源会在稍后配置为管理任务。
在应用程序部署描述符中,将逻辑名称 jdbc/Section 正式声明为资源引用。然后,可以采用以下几种方法将资源引用与实际数据源的 JNDI 名称关联:
  • 如果您在组装应用程序时知道数据源 JNDI 名称,那么在资源引用的“绑定”页上指定该名称。
  • 在应用程序部署期间指定数据源 JNDI 名称。
  • 部署后配置应用程序时,将资源引用映射至数据源 JNDI 名称。
这种关联行为称为将资源引用绑定至数据源。

请参阅“应用程序绑定”一文,以获取有关所需的所有类型的资源绑定的信息。


指示主题类型的图标 概念主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cdat_datsorres
文件名:cdat_datsorres.html