2016-08-19 25 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

如果它是静态的,那么你不需要实例化一个对象来调用它。你可以直接调用它。 –

相关问题