簡體   English   中英

ejb中的資源注入

[英]resource injection in ejb

我不明白@Resource批注的lookup參數和name參數之間的區別。 我閱讀了有關注釋及其字段等的所有文檔。

我知道如何使用name來注入或綁定資源,但是問題是沒有找到任何示例來解釋lookupname之間的區別。

誰能給我一個這樣的例子,或者告訴我他們之間的區別?

namejava:comp/env命名空間中的“虛擬”引用名稱。 在某種程度上,該引用需要指向已定義的“物理”資源。 執行此操作的標准方法是使用lookup屬性,但是產品也將具有“綁定”資源引用的方法,因此在許多產品中,特定於產品的綁定在功能上等同於名稱。 (特定於產品的綁定仍然很重要,因為您不想依靠開發人員從操作環境中硬編碼數據源名稱,等等。)

例如,您可能具有@Reference(name="jdbc/myDS", lookup="jdbc/oracleDS") ,這意味着java:comp/env/myDS將被定義為對以下數據庫的jdbc/oracleDS數據源的間接查找:被綁定到默認的JNDI名稱空間。

再舉一個例子,您可能具有@DataSourceDefinition(name="derbyDS")@Resource(name="jdbc/myDS", lookup="java:comp/env/derbyDS") 前者定義了實際的數據源(再次相對於java:comp ),而后者定義了對它的間​​接查找。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM