[英]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.