package com.trisun.util;

import java.io.InputStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;

import javax.sql.DataSource;

import org.apache.commons.dbcp.BasicDataSourceFactory;

/**
 * @author tgl 
 * jdbc连接
 */
public class JdbcUtils {

	private static DataSource myDataSource = null;

	private JdbcUtils() {
		// 因为无须被构造,设为私有
	}

	static {// 设为static,使它只注册一次
		try {
			Properties prop = new Properties();
			InputStream is = JdbcUtils.class.getClassLoader().getResourceAsStream("dbcpconfig.properties");
			prop.load(is);
			myDataSource = BasicDataSourceFactory.createDataSource(prop);
		} catch (Exception e) {
			e.printStackTrace();
			throw new ExceptionInInitializerError(e);
		}
	}

	public static DataSource getDataSource() {
		return myDataSource;
	}

	public static Connection getConnection() throws SQLException {
		return myDataSource.getConnection();// 用连接池建立连接
	}

	public static void free(ResultSet rs, Statement st, Connection conn) {
		try {
			if (rs != null) rs.close();
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {// finally保证无论抛出什么异常,finally里面包含的代码都会被执行
			try {
				if (st != null) st.close();
			} catch (SQLException e) {
				e.printStackTrace();
			} finally {
				try {
					if (conn != null) conn.close();
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		}
	}
}
最近下载更多
1358849392  LV21 2022年10月25日
kaiwen123  LV2 2018年10月12日
xxljxgz  LV21 2018年6月9日
wyx065747  LV67 2017年6月28日
wwwdawn  LV14 2017年4月24日
jinkuake  LV2 2016年6月21日
青春回来  LV20 2016年3月29日
ybbghdiu  LV27 2014年10月6日
okliu123456  LV24 2014年8月12日
AXIN  LV36 2014年1月21日
最近浏览更多
1358849392  LV21 2022年10月25日
素还真  LV1 2022年8月23日
annazhang  LV29 2022年2月19日
fengzhou888  LV5 2021年12月6日
yuzhiyuan1977  LV2 2021年8月2日
kong.yee  LV40 2020年6月19日
Rommel  LV27 2020年4月18日
wei112233  LV15 2020年2月2日
liangliang2049  LV2 2019年10月14日
小灰灰520  LV5 2019年7月22日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友