`
fengsushi
  • 浏览: 23834 次
  • 性别: Icon_minigender_2
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

数据库连接工具

阅读更多
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