簡體   English   中英

用Java建立與數據庫的持久連接

[英]Establishing persistent connection to a database in Java

我在網上瀏覽了幾個示例,發現每次我需要數據庫中的東西時,我都應該編寫以下代碼:

try
{
  // Step 1: Load the JDBC driver. 
  Class.forName("mysql_driver_name"); 
  // Step 2: Establish the connection to the database. 
  String url = "jdbc:string_to_mysql_server"; 
  Connection conn = DriverManager.getConnection(url,"user1","password");

  // fetch from the DB ...

}
catch (Exception e)
{
  System.err.println("Got an exception! "); 
  System.err.println(e.getMessage()); 
}

每當我想要從數據庫中獲取某些代碼時,都會很煩人,所以問題是-有沒有辦法在開始時以某種方式將我所有的應用程序一次全部連接到數據庫,避免復制粘貼所提到的代碼,然后能夠使用DB 做我想做的所有事情

我快速瀏覽了NetBeans的“項目”菜單,但沒有找到有關如何配置與所選數據庫的持久連接的任何線索。

如果重要的話,我正在編寫一個純粹的桌面應用程序,即使用Java SE。 另外,值得一提的是,我是Java的初學者。

有很多連接池選項可供選擇,我建議您嘗試使用Apache Common Db連接池http://commons.apache.org/dbcp/

連接池的想法可能是最好的總體解決方案。 但是在ypur案例中有一種更簡單的方法。

在您的代碼中,conn超出了其創建方法的范圍。 不需要這樣做。 您可以創建一個方法,該方法包括所有代碼,直到一個包含分配給conn的行。 然后將該conn變量傳遞給程序的其他部分,並將其用於數據庫工作。

您可以按照這種建立對接方法

  1. 創建一個Singleton類,可幫助您創建連接
  2. 在您的DAO或任何幫助程序類中,調用此具有連接的Single實例
  3. 一旦獲得連接,請編寫要在數據庫上執行的操作。
  4. 關閉連接,這將完全填滿您的連接。

這將避免使用您在查詢中編寫的代碼。 並且這種樣式將增加可讀性並降低可維護性。

如果您想讓我知道任何示例代碼,我可以為您提供

暫無
暫無

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

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