关闭MySQL(Java)单例连接模式的连接

时间:2016-04-23 21:22:20

标签: java mysql database connection singleton

我想知道我的DBConnecter类中是否需要closeConnection()方法。我知道你通常会在使用它时关闭你的连接,但是连接是一个单独的我不完全确定。

这是我的DBConnecter类:

public static String driver = "com.mysql.jdbc.Driver";
public static String URL = "jdbc:mysql://localhost/polygondb";
public static String ID = "root";
public static String PW = "root";
private static Connection connection = null;

public static Connection getConnection() {
    if (connection == null) {
        try {
            Class.forName(driver);
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(DBConnector.class.getName()).log(Level.SEVERE, null, ex);
        }
        try {
            connection = DriverManager.getConnection(URL, ID, PW);
        } catch (SQLException ex) {
            Logger.getLogger(DBConnector.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
    return connection;
}

这可能不是什么大问题,但我想确保这是一个考试的学校项目(:

1 个答案:

答案 0 :(得分:1)

打开与数据库的连接是一个昂贵的过程。由于您正在使用单例并假设此对象正在处理所有数据库交互,因此我建议保持连接处于活动状态。但是,您需要在退出应用程序之前关闭连接。

如果您希望同时发生许多查询,您可能需要查看连接池,但是因为这是一个学校项目,我认为情况并非如此。

相关问题