2016-08-19 35 views
0
package com.wipro.book.util; 
import java.sql.*; 

public class DBUtil { 

    public Connection getDBConnection() throws Exception 
    { 
     Connection con = null; 
     String url = "jdbc:mysql://localhost:3306/library"; 
     String driver = "com.mysql.jdbc.Driver"; 
     String username = "root"; 
     String password = ""; 

     try 
     { 
      Class.forName(driver); 
      con = DriverManager.getConnection(url, username, password); 
      System.out.println("connection success"); 
      return con; 
     } 
     catch(ClassNotFoundException e){ 
      System.out.println("something wrong"+e); 
     } 
     return null; 
    } 


} 

這是屬於一個單獨的包的類。我想在另一個類中訪問這個返回的連接對象。我怎樣才能做到這一點?如何訪問從java中的類返回的連接引用對象?

回答

0
public class DBClass { 
private Connection con; 
final String driverClass = "com.mysql.jdbc.Driver"; 
final String url = "jdbc:mysql://localhost:3306/xxxx";  
final String username = "root"; 
final String password = "";   
private static class db_helper 
{ 
    private static final DBClass INSTANCE = new DBClass(); 
} 
public static DBClass getInstance(){ 

    return db_helper.INSTANCE; 
} 


public void makeCon() { 
    try { 
     Class.forName(driverClass); 

     con = DriverManager.getConnection(url, username, password); 
     System.out.println("connection established"); 
    } catch (ClassNotFoundException ex) { 
     ex.printStackTrace(); 
    } catch (SQLException ex) { 
     ex.printStackTrace(); 
    } 
} 

public Connection getCon() throws SQLException { 
    if(con==null) 
    { 
     con = DriverManager.getConnection(url, username, password); 
    } 
    return con; 
} 

public void closeCon() { 
    try { 
     con.close(); 
    } catch (SQLException ex) { 
     ex.printStackTrace(); 
    } 
} 

}

+0

這段代碼可以幫助你。 thic類有兩種方法創建了一個singlton類使用過。當你使用數據庫連接時,你可以使用下面的代碼DBClass db = DBClass.getInstace(); – venkey

1

創建一個DBUtil對象,然後調用上的連接變量getDBConnection()這樣的:

DBUtil dbutilObject= new DBUtil(); 
    //YOUR CONNECTION VARIABLE 
    Connection con1 = dbutilObject.getDBConnection(); 
+0

感謝....公共靜態連接getDBConnection()......如果靜態如何訪問它.. ??? – sathiya

+0

如果它是靜態的,那麼你不需要實例化一個對象來調用它。你可以直接調用它。 –

相關問題