[英]JDBC connection pool occasionally becomes unavailable (not registered) through JNDI
[英]Differences of connection pool, jdbc and jndi
我需要知道我對上述內容的理解是否正確。
在連接池中,使用java.sql.Datasource設置多個連接。
在jdbc中,我們直接指定連接url和oracle.jdbc.driver.OracleDriver,它始終是一個連接,其中另一個請求必須等到連接完成處理。
使用JNDI,它類似於直接jdbc,我們通過名稱引用jdbc設置,以便我們可以在應用程序服務器中指定連接URL和其他設置,而不是將它們綁定到應用程序,對吧?
這些是兩件不同的事情。
JDBC是Java數據庫連接API,而JNDI是Java命名和目錄接口API。
這里的主要內容是,在JNDI目錄中,您實際上存儲的是JDBC DataSource,因此,您只需使用JDBC通過JNDI查找來獲取Connection。
簡而言之:JDBC是數據庫領域,JNDI允許您將對象存儲在虛擬上下文(目錄)中,可以是本地的,遠程的(實現細節通常無關緊要)。
您可以通過名稱訪問此上下文,獲取存儲的對象,最好在不同模塊之間共享內容。
應用服務器通常有一個JNDI上下文用於在不同的應用程序之間共享全局對象,連接Poolers恰好是為什么通過JNDI共享的最明顯的例子之一(定義1個連接池,在幾個webapps之間共享)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.