1. 程式人生 > >使用jdbc驅動和.properties配置檔案獲取資料來源的程式碼(註釋詳細,值得一看)

使用jdbc驅動和.properties配置檔案獲取資料來源的程式碼(註釋詳細,值得一看)

package util;

import java.io.InputStream;
import java.util.Properties;

import javax.sql.DataSource;

import org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory;

public class DBCPUtil {
 
 private static DataSource dataSource;//資料庫物件


 //static靜態塊,程式執行後該塊存在於方法區,且只執行一次,可被其它執行緒共享
 //此作用是節省記憶體開銷
 static{


  try{


   //Class.forName("內路徑")返回的是一個類,詳情請參考http://www.cnblogs.com/springcsc/archive/2010/03/03/1676977.html
    Class.forName("com.mysql.jdbc.Driver").newInstance();//載入jdbc資料庫驅動


    //使用DBCPUtil的類載入器(每個類都有一個class物件)獲得物件,獲得讀入流,讀取檔案
    InputStream in = DBCPUtil.class.getClassLoader().getResourceAsStream("jdbc.properties");


    //獲取properties物件(已key,value形式存在的物件)
    Properties prop = new Properties();


    prop.load(in);//裝載讀取到的properties檔案資訊


    //獲取資料來源
    dataSource = BasicDataSourceFactory.createDataSource(prop);


  }catch(Exception e){
   try {
    throw new Exception("獲取資料來源失敗");
   } catch (Exception e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
   }
  }
 }
 
 //返回資料來源
 //應為static靜態塊是在類初始化時載入的,所以只要執行成功一次,該資料來源
 //就一直連線著資料庫,直到程式結束
 public static DataSource getDataSource(){
  return dataSource;
 }
}