`
thinkerAndThinker
  • 浏览: 275959 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

JDBC数据库连接工具类

 
阅读更多

package com.bpcrm.kevin.util.DB_utill.simple_connection;   
/**  
* 常用数据库连接配置信息  
* @author kevin.wangwei  
* Email:wanwei.234@163.com  
* 2009-12-26  
*/  
public final class DBPropertyUtil {   
    /**  
     * 各种常用数据库驱动名称  
     *============mysql Driver====================  
     *com.mysql.jdbc.Driver  
     *  
     *============oracle Driver===================  
     *oracle.jdbc.driver.OracleDriver  
     *  
     *============pointbase Driver================  
     *com.pointbase.jdbc.jdbcUniversalDriver  
     *  
     *============SQL Server Driver===============  
     *com.microsoft.jdbc.sqlserver.SQLServerDriver  
     *  
     *============DB2 Driver======================  
     *com.ibm.db2.jdbc.app.DB2Driver  
     *  
     */  
    public static final String strDB_Driver="com.mysql.jdbc.Driver";   
    /**  
     *数据库连接url格式为:"jdbc:子协议:子协议名称//主机名:端口号/数据库名?属性名=属性值&属性名=属性值"  
     *dbUser和dbPassword也可以通过:属性名=属性值方式传入。  
     *设置数据库的编码格式:useUnicode=true&characterEncoding=GBK  
     *============mysql url=================================================  
     *jdbc:mysql://<machine_name><:port>/dbname  
     *端口号:默认 3306  
     *============oracle url================================================  
     *jdbc:oracle:thin:@<machine_name><:port>:dbname  
     *端口号:默认是 1521  
     *============pointbase url=============================================  
     *jdbc:pointbase:server://<machine_name><:port>/dbname  
     *端口号:默认是 9092  
     *============SQL Server url============================================  
     *jdbc:microsoft:sqlserver://<machine_name><:port>;DatabaseName=<dbname>  
     *端口号:默认是 1433  
     *============DB2 url===================================================  
     *jdbc:db2://<machine_name><:port>/dbname  
     *端口号:默认是 5000  
     */  
    public static  final String DBUrl="jdbc:mysql://127.0.0.1:3306/ajax";   
    /**访问数据库用户*/  
    public static final String DBUser="root";   
    /**访问数据库密码*/  
    public static final String DBPassword="123";   
}  

package com.bpcrm.kevin.util.DB_utill.simple_connection; 
/** 
* 常用数据库连接配置信息 
* @author kevin.wangwei 
* Email:wanwei.234@163.com 
* 2009-12-26 
*/ 
public final class DBPropertyUtil { 
/** 
* 各种常用数据库驱动名称 
*============mysql Driver==================== 
*com.mysql.jdbc.Driver 

*============oracle Driver=================== 
*oracle.jdbc.driver.OracleDriver 

*============pointbase Driver================ 
*com.pointbase.jdbc.jdbcUniversalDriver 

*============SQL Server Driver=============== 
*com.microsoft.jdbc.sqlserver.SQLServerDriver 

*============DB2 Driver====================== 
*com.ibm.db2.jdbc.app.DB2Driver 

*/ 
public static final String strDB_Driver="com.mysql.jdbc.Driver"; 
/** 
*数据库连接url格式为:"jdbc:子协议:子协议名称//主机名:端口号/数据库名?属性名=属性值&属性名=属性值" 
*dbUser和dbPassword也可以通过:属性名=属性值方式传入。 
*设置数据库的编码格式:useUnicode=true&characterEncoding=GBK 
*============mysql url================================================= 
*jdbc:mysql://<machine_name><:port>/dbname 
*端口号:默认 3306 
*============oracle url================================================ 
*jdbc:oracle:thin:@<machine_name><:port>:dbname 
*端口号:默认是 1521 
*============pointbase url============================================= 
*jdbc:pointbase:server://<machine_name><:port>/dbname 
*端口号:默认是 9092 
*============SQL Server url============================================ 
*jdbc:microsoft:sqlserver://<machine_name><:port>;DatabaseName=<dbname> 
*端口号:默认是 1433 
*============DB2 url=================================================== 
*jdbc:db2://<machine_name><:port>/dbname 
*端口号:默认是 5000 
*/ 
public static  final String DBUrl="jdbc:mysql://127.0.0.1:3306/ajax"; 
/**访问数据库用户*/ 
public static final String DBUser="root"; 
/**访问数据库密码*/ 
public static final String DBPassword="123"; 







获得连接工具类: 

Java代码 
package com.bpcrm.kevin.util.DB_utill.simple_connection;   
  
import java.sql.Connection;   
import java.sql.DriverManager;   
import java.sql.ResultSet;   
import java.sql.SQLException;   
import java.sql.Statement;   
/**  
* 简单数据库连接工具类  
* 单例模式  
* @author kevin.wangwei  
* Email:wanwei.234@163.com  
* 2009-12-26  
*/  
public final class JdbcInstanceUtil {   
    /**定义一个私有的构造函数,禁止创建该对象实例*/  
    private  JdbcInstanceUtil(){};   
    /**当前对象引用*/  
    private static JdbcInstanceUtil instance=null;   
       
    static {   
        //注册驱动   
            try {   
                Class.forName(DBPropertyUtil.strDB_Driver);   
            } catch (ClassNotFoundException e) {   
                e.printStackTrace();   
            }   
    }   
    /**  
     * 或得该工具类对象  
     * @return JdbcInstanceUtil对象  
     */  
    public static JdbcInstanceUtil getInstance(){   
        if(instance==null){   
            synchronized(JdbcInstanceUtil.class){   
            if(instance==null){//如果没有这个判断,当两个线程同时访问这个方法会出现创建两个对象   
            instance=new JdbcInstanceUtil();   
            }   
        }   
    }   
        return instance;   
    }   
    /**  
     * 获得数据库连接对象  
     * @return 数据库连接对象  
     * @throws SQLException  
     */  
    public Connection getConnection() throws SQLException{   
        return DriverManager.getConnection(DBPropertyUtil.DBUrl,DBPropertyUtil.DBUser,DBPropertyUtil.DBPassword);   
    }   
    /**  
     * 释放资源   
     * 保证程序在出现任何异常都要关闭连接对象  
     * @param rs 结果集  
     * @param st statement  
     * @param conn 连接  
     */  
    public void free(ResultSet rs,Statement st,Connection conn){   
            if(rs!=null){   
                try {   
                    rs.close();   
                } catch (SQLException e) {   
                    e.printStackTrace();   
                }finally{   
                    if(st!=null){   
                        try {   
                            st.close();   
                        } catch (SQLException e) {   
                            e.printStackTrace();   
                        }finally{   
                            if(conn!=null){   
                                try {   
                                    conn.close();   
                                } catch (SQLException e) {   
                                    e.printStackTrace();   
                                }   
                            }   
                        }   
                    }   
                }   
            }   
           
    }   
}  

package com.bpcrm.kevin.util.DB_utill.simple_connection; 

import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.ResultSet; 
import java.sql.SQLException; 
import java.sql.Statement; 
/** 
* 简单数据库连接工具类 
* 单例模式 
* @author kevin.wangwei 
* Email:wanwei.234@163.com 
* 2009-12-26 
*/ 
public final class JdbcInstanceUtil { 
/**定义一个私有的构造函数,禁止创建该对象实例*/ 
private  JdbcInstanceUtil(){}; 
/**当前对象引用*/ 
private static JdbcInstanceUtil instance=null; 

static { 
//注册驱动 
try { 
Class.forName(DBPropertyUtil.strDB_Driver); 
} catch (ClassNotFoundException e) { 
e.printStackTrace(); 


/** 
* 或得该工具类对象 
* @return JdbcInstanceUtil对象 
*/ 
public static JdbcInstanceUtil getInstance(){ 
if(instance==null){ 
synchronized(JdbcInstanceUtil.class){ 
if(instance==null){//如果没有这个判断,当两个线程同时访问这个方法会出现创建两个对象 
instance=new JdbcInstanceUtil(); 
    } 


return instance; 

/** 
* 获得数据库连接对象 
* @return 数据库连接对象 
* @throws SQLException 
*/ 
public Connection getConnection() throws SQLException{ 
return DriverManager.getConnection(DBPropertyUtil.DBUrl,DBPropertyUtil.DBUser,DBPropertyUtil.DBPassword); 

/** 
* 释放资源 
* 保证程序在出现任何异常都要关闭连接对象 
* @param rs 结果集 
* @param st statement 
* @param conn 连接 
*/ 
public void free(ResultSet rs,Statement st,Connection conn){ 
if(rs!=null){ 
try { 
rs.close(); 
} catch (SQLException e) { 
e.printStackTrace(); 
}finally{ 
if(st!=null){ 
try { 
st.close(); 
} catch (SQLException e) { 
e.printStackTrace(); 
}finally{ 
if(conn!=null){ 
try { 
conn.close(); 
} catch (SQLException e) { 
e.printStackTrace(); 











获得连接工具类(2) 

Java代码 
package com.bpcrm.kevin.util.DB_utill.simple_connection;   
  
import java.sql.Connection;   
import java.sql.DriverManager;   
import java.sql.ResultSet;   
import java.sql.SQLException;   
import java.sql.Statement;   
/**  
* 简单数据库连接工具类  
* @author kevin.wangwei  
* Email:wanwei.234@163.com  
* 2009-12-26  
*/  
public final class JdbcUtil {   
    /**定义一个私有的构造函数,禁止创建该对象实例*/  
    private  JdbcUtil(){};   
    static {   
        //注册驱动   
            try {   
                Class.forName(DBPropertyUtil.strDB_Driver);   
            } catch (ClassNotFoundException e) {   
                e.printStackTrace();   
            }   
    }   
    /**  
     * 获得数据库连接对象  
     * @return 数据库连接对象  
     * @throws SQLException  
     */  
    public static Connection getConnection() throws SQLException{   
        return DriverManager.getConnection(DBPropertyUtil.DBUrl,DBPropertyUtil.DBUser,DBPropertyUtil.DBPassword);   
    }   
    /**  
     * 释放资源   
     * 保证程序在出现任何异常都要关闭连接对象  
     * @param rs 结果集  
     * @param st statement  
     * @param conn 连接  
     */  
    public static void free(ResultSet rs,Statement st,Connection conn){   
            if(rs!=null){   
                try {   
                    rs.close();   
                } catch (SQLException e) {   
                    e.printStackTrace();   
                }finally{   
                    if(st!=null){   
                        try {   
                            st.close();   
                        } catch (SQLException e) {   
                            e.printStackTrace();   
                        }finally{   
                            if(conn!=null){   
                                try {   
                                    conn.close();   
                                } catch (SQLException e) {   
                                    e.printStackTrace();   
                                }   
                            }   
                        }   
                    }   
                }   
            }   
           
    }   
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics