1. 程式人生 > >JDBC連線資料庫----------資料來源與連線池

JDBC連線資料庫----------資料來源與連線池

1.資料來源與連線池技術
資料來源在JDBC擴充套件包中定義了javax.sql.DataSource 介面,負責建立與資料庫的連線,在訪問資料庫的時候不必編寫連線資料庫的程式碼,可以直接從資料來源中獲得與資料庫的連線。
資料來源DataSource事先建立多個數據庫連線儲存在連線池中,資料來源的作用是獲取資料庫的連線,連線池對已經建立好的連線物件進行管理。
(例項中連線池使用Tomcat)
2.資料來源的配置
在Tomcat配置檔案conf/context.xml中新增配置資訊:

<Resource name="jdbc/kgcnews"(名稱自取)
	       auth="Container" type="javax.sql.DataSource" maxActive="100"
		  maxIdle="30" maxWait="10000" username="root" password="123456"(使用者名稱密碼)
	     driverClassName="com.mysql.jdbc.Driver"   (資料庫的驅動載入)
	     url="jdbc:mysql://localhost:3306/kgcnews"/>(資料庫的連線)

3.JNDI讀取資料來源
JNDI(java命名與目錄介面),為開發人員提供了查詢和訪問各種命名和目錄服務的通用,統一的介面

//通過資料來源連線資料庫
    public void D_sql() {
    	 //獲得上下文物件
    	try {
			Context  context=new InitialContext();
			//獲得context.xml檔案中資料來源
			DataSource ds=(DataSource)context.lookup("java:comp/env/jdbc/kgcnews");
			//"java:comp/env/ 字首為java語法要求
			//獲得資料庫的連線
			con=ds.getConnection();
		} catch (NamingException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}
    }

在呼叫資料來源得到連線時,例項化獲取資料來源方法的類,呼叫獲取資料來源的方法。在jsp頁面中呼叫。

<body>
    <%
       jdbcDoem doem=new jdbcDoem();
       doem.jdbc_select();
     %>
  </body>