设计模式之单例模式一般应用在在数据库操作里,数据库操作就要经常创建实例,然后进行数据库操作,所有就可以
将数据库操作的方法,进行封装,然后采用单例模式进行设计,然后采用单例模式之后,就可以节约系统资源,对于
一些需要频繁创建和销毁的对象单例模式无疑可以提高系统的性能。
先编写数据库配置文件sql.properties
DRIVER=com.mysql.jdbc.Driver
URL=jdbc:mysql://localhost:3306/user
USERNAME=root
PASSWORD=123456
DBCon.java:
package DB;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
import java.util.PropertyResourceBundle;
import com.mysql.jdbc.CallableStatement;
import com.mysql.jdbc.PreparedStatement;
@SuppressWarnings("unused")
public class DBCon {
private static DBCon instance = new DBCon();
private DBCon() {
}
public static DBCon getInstance() {
if(instance == null){
synchronized (DBCon.class){
if(instance == null){
instance = new DBCon();
}
}
}
return instance;
}
public static Connection connection;
// ����sql����ִ�ж���
public static PreparedStatement pstmt;
// �����ѯ���صĽ���
public static ResultSet resultSet;
// ʵ����������Ĺ���
public Statement stmt;
public Connection getConnection() throws IOException, InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException {
InputStream in=getClass().getClassLoader().getResourceAsStream("DB/sql.properties");
String jdbcDriver = null;
//主机
String jdbcUrl=null;
//数据库用户名
String USERNAME=null;
String PASSWORD=null;
Properties properties=new Properties();
properties.load(in);
jdbcDriver=properties.getProperty("DRIVER");
jdbcUrl=properties.getProperty("URL");
USERNAME=properties.getProperty("USERNAME");
PASSWORD=properties.getProperty("PASSWORD");
Class.forName(jdbcDriver);
connection = DriverManager.getConnection(jdbcUrl, USERNAME, PASSWORD);
return connection;
}
}