datasourcepool.java

来自「数据库远程同步软件NetBeans项目源文件 项目采用Jdesktop集成组件」· Java 代码 · 共 112 行

JAVA
112
字号
package com.qixuan.jdbc;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;

import org.apache.commons.dbcp.BasicDataSource;

/****************************
 * 使用 APACHE 开源组织提供的数据源实现:
 * 依赖于两个JAR 文件:
 * 		commons-dbcp-1.2.jar
 * 		commons-pool-1.3.jar
 *
 * @author mjw917
 *
 */
public class DataSourcePool {

	private static BasicDataSource bds ;
	private static String filePath = "conf/dbconfig.properties";
	private static Properties info = new Properties();
	public static final String DRIVER = "driverClass";
	public static final String URL = "url";
	public static final String USER = "user";
	public static final String PWD = "password";


	//配置一个 数据源
	static {
		InputStream in = null;
		try {
			//获取输入流
			in = Thread
					.currentThread()
					.getContextClassLoader()
					.getResourceAsStream(filePath);
			info.load(in);

		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if(in != null)
				try {
					in.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
		}
		bds = new BasicDataSource();
		//一个数据源必需的几个要素:
		//驱动类名
		bds.setDriverClassName(info.getProperty(DRIVER));
		//URL
		bds.setUrl(info.getProperty(URL));
		//USER
		bds.setUsername(info.getProperty(USER));
		//PASSWD
		bds.setPassword(info.getProperty(PWD));

		//当前连接最大维护几个连接
		bds.setMaxActive(10);
		//
		bds.setMaxIdle(6);
		//最大等待时间:3秒
		bds.setMaxWait(3000);

	}

	public static Connection getConnection() {
		Connection con = null;

			try {
				con = bds.getConnection();
				System.out.println(con);

			} catch (SQLException e) {
				e.printStackTrace();
			}
			return con;

	}

	public static String getFilePath() {
		return filePath;
	}

	public static void setFilePath(String filePath) {
		DataSourcePool.filePath = filePath;
	}

	public static String getDRIVER() {
		return DRIVER;
	}

	public static String getURL() {
		return URL;
	}

	public static String getUSER() {
		return USER;
	}

	public static String getPWD() {
		return PWD;
	}


}

⌨️ 快捷键说明

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