单例模式:只能创建一个实例对象。
来看一段代码:
package com.sunlike.util;
import java.sql.*;
public class DBSingleton {
private String url="jdbc:mysql://localhost:3306/shopping";
private String uid="root";
private String pwd="111111";
private static DBSingleton instance=null;//创建数据库实例 必须是静态变量
public static DBSingleton getInstance(){
if(instance==null){
synchronized (DBSingleton.class) {//加锁
if(instance==null){
instance=new DBSingleton();//预处理数据库实例,即调用该方法时才创建该实例,而不是一开始就 在虚拟机里创建实例
}
}
}
return instance;
}
/**
* 连接数据库方法
* @return
*/
public Connection getConn(){
Connection conn=null;
try {
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection(url,uid,pwd);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
}
调用该数据库连接的语句
Connection conn = DBSingleton.getInstance().getConn();