簡體   English   中英

連接池返回 null

[英]connection pool is returning null

我是 Java 新手,想看看為什么

 private static PoolConnectionManager pcm = null;
 con = pcm.getConnection();
 ps = con.prepareStatement("SELECT name FROM employee");

返回null,而當我設置

 Class.forName("oracle.jdbc.driver.OracleDriver");      
 con = DriverManager.getConnection(url, username, password);

連接似乎工作正常。

我在弄亂連接的連接池做錯了什么?

變量pcm在您的代碼中初始化為null null是一個不存在的值,這意味着您的 PoolConnectionManager 不存在。 您需要使用實際的 PoolConnectionManager 實例初始化 PoolConnectionManager 才能使用它的任何方法。 您通常會使用new關鍵字來執行此操作,例如private static PoolConnectionManager pcm = new PoolConnectionManager(); ,根據需要填寫構造函數參數。

第二個代碼塊起作用的原因是因為 DriverManager 有一個名為getConnection的靜態方法。 可以從 Class 對象本身訪問靜態方法,而無需創建該類的實例,這就是您在此處所做的。 第一個代碼行實際上並沒有做任何事情。

暫無
暫無

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

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