⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 connectionmanager.java

📁 Java程序设计实用案例教程源代码
💻 JAVA
字号:
package database;
import java.sql.Connection;

public class ConnectionManager {
	private static final int TIME_BETWEEN_RETRIES = 500; // 0.5 秒

	static private ConnectionManager instance = null;

	private DBConnectionPool pool = null;

	// 私有构造方法,初始化数据库的连接
	private ConnectionManager() {
		DBParam param = new DBParam();
		String driverClassName = param.getDriverClassName();
		try {
			Class.forName(driverClassName).newInstance();
		} catch (Exception e) {
			System.out.println(e.getMessage());
		}
		String url = param.getDatabaseURL();
		String user = param.getDatabaseUser();
		String pwd = param.getDatabasePwd();
		int maxConnection = param.getMaxConnection();
		pool = new DBConnectionPool(url, user, pwd, maxConnection);
	}

	// 返回一个单独的实例,如果这个方法是第一次被调用就创建一个新的实例
	public static synchronized ConnectionManager getInstance() {
		if (instance == null) {
			instance = new ConnectionManager();
		}
		return instance;
	}

	// 返回一个连接,调用DBConnectionPool对象的getConnection()方法
	Connection getConnection() {
		return pool.getConnection();
	}

	// 返回一个连接,调用DBConnectionPool对象的
	//getConnection(long timeout)方法
	Connection getConnection(long time) {
		return pool.getConnectin(time);
	}

	// 关闭所有连接
	boolean release() {
		return pool.release();
	}
//	 关闭conn所指连接
	void release(Connection conn) {
		pool.freeConnection(conn);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -