zoukankan      html  css  js  c++  java
  • C3P0数据库连接池使用

    C3P0数据库连接池使用

    1、拷贝jar包:c3p0-0.9.1.2.jar     c3p0-0.9.1.2-jdk1.3.jar    c3p0-oracle-thin-extras-0.9.1.2.jar(oracle须要)

    2、书写配制文件放在src文件夹下:c3p0-config.xml(名字仅仅能是这个)

    3、类C3P0Util

    c3p0-config.xml 内容:

    <?xml version="1.0" encoding="UTF-8"?>
    <c3p0-config>
    	<!-- This is default config! -->
    	<default-config>
    		<property name="initialPoolSize">10</property>
    		<property name="maxIdleTime">30</property>
    		<property name="maxPoolSize">100</property>
    		<property name="minPoolSize">10</property>
    		<property name="maxStatements">200</property>
    	</default-config>
    
    	<!-- This is my config for mysql-->
    	<named-config name="mysql">
    		<property name="driverClass">com.mysql.jdbc.Driver</property>
    		<property name="jdbcUrl">jdbc:mysql://localhost:3306/test</property>
    		<property name="user">root</property>
    		<property name="password"></property>
    		<property name="initialPoolSize">10</property>
    		<property name="maxIdleTime">30</property>
    		<property name="maxPoolSize">100</property>
    		<property name="minPoolSize">10</property>
    		<property name="maxStatements">200</property>
    	</named-config>
    	
    	
    	<!-- This is my config for oracle -->
    	<named-config name="oracle">
    		<property name="driverClass">oracle.jdbc.driver.OracleDriver</property>
    		<property name="jdbcUrl">jdbc:oracle:thin:@localhost:1521:orcl</property>
    		<property name="user">scott</property>
    		<property name="password">liang</property>
    		<property name="initialPoolSize">10</property>
    		<property name="maxIdleTime">30</property>
    		<property name="maxPoolSize">100</property>
    		<property name="minPoolSize">10</property>
    		<property name="maxStatements">200</property>
    	</named-config>
    </c3p0-config>
    

    C3P0Util:

    package com.liang.util;
    
    import java.io.InputStream;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.Properties;
    
    import com.mchange.v2.c3p0.ComboPooledDataSource;
    /**
     * 数据库工具类
     * @author liang
     *
     */
    public class C3P0Util {
    	static ComboPooledDataSource cpds=null;
    	static{
    		//这里有个长处,写好配置文件,想换数据库。简单
    		//cpds = new ComboPooledDataSource("oracle");//这是oracle数据库
    		cpds = new ComboPooledDataSource("mysql");//这是mysql数据库
    	}
    	/**
    	 * 获得数据库连接
    	 * @return   Connection
    	 */
    	public static Connection getConnection(){
    		try {
    			return cpds.getConnection();
    		} catch (SQLException e) {
    			e.printStackTrace();
    			return null;
    		}
    	}
    	
    	/**
    	 * 数据库关闭操作
    	 * @param conn  
    	 * @param st    
    	 * @param pst
    	 * @param rs
    	 */
    	public static void close(Connection conn,PreparedStatement pst,ResultSet rs){
    		if(rs!=null){
    			try {
    				rs.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    		}
    		if(pst!=null){
    			try {
    				pst.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    		}
    
    		if(conn!=null){
    			try {
    				conn.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    		}
    	}
    	/**
    	 * 測试DBUtil类
    	 * @param args
    	 */
    	public static void main(String[] args) {
    		Connection conn=getConnection();
    		System.out.println(conn.getClass().getName());
    		close(conn,null,null);
    	}
    }
    





  • 相关阅读:
    BZOJ 2456 mode
    BZOJ 1041 [HAOI2008]圆上的整点
    东北育才 第6天和第7天
    POJ 3692 Kindergarten(最大团问题)
    KM算法及其应用
    UVA 11582 Colossal Fibonacci Numbers!(循环节打表+幂取模)
    ZOJ 3960 What Kind of Friends Are You?(读题+思维)
    POJ 2349 Arctic Network(最小生成树中第s大的边)
    HDU 1576 A/B(欧几里德算法延伸)
    NYOJ 1013 除法表达式(欧几里德算法+唯一分解定理)
  • 原文地址:https://www.cnblogs.com/mthoutai/p/6811878.html
Copyright © 2011-2022 走看看