Jsp中使用數據庫連接池.


1. 在tomcat服務器目錄下面的conf中找到一個叫Context.xml的配置文件,在其中加入以下代碼

 

< Resource  name ="jdbc/books"  
       auth
="Container" type ="javax.sql.DataSource"   maxActive ="100"   
       maxIdle
="30"  maxWait ="10000"    username ="sa"    password ="120010"  
      driverClassName
="com.microsoft.sqlserver.jdbc.SQLServerDriver"   
     url
="jdbc:sqlserver://localhost:1433;DatabaseName=news" />

參數含義: JNDI (java naming and directory interface): Java 命名和目錄接口

name
指定 Resource JNDI 名稱
auth
指定管理 Resource Manager Container :由容器創 建和管理| Application :由 Web 應用創建和管理)
type
指定 Resource 所屬的 Java
maxActive
指定連接池中處於活動狀態的數據庫連接的最大數目
maxIdle
指定連接池中處於空閑狀態的數據庫連接的最大數目
maxWait
指定連接池中的連接處於空閑的最長時間,超過這個 時間會拋出異常,取值為-1,表示可以無限期等待
 

2. 第二步將 數據驅動.jar 放入tomcat目錄下的lib或common\lib下面

 

3. 第三步,打開應用程序的 Web.xml文件,添加以下配置

 

< resource-ref >
   < res-ref-name >jdbc/books </ res-ref-name >
   < res-type >javax.sql.DataSource </ res-type >
   < res-auth >Container </ res-auth >
  </ resource-ref >

節點數據來源於Context.xml里面設置的數據

 

4. 在java文件中先導入以下包

import javax.sql.DataSource;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;

將原來的數據庫連接操作

Class.forName("oracle.jdbc.driver.OracleDriver");
if( conn ==  null || conn.isClosed() ) 
 conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL",
 "system",
 "accp");


換成

 

Context c =  new InitialContext();
DataSource ds = (DataSource)c.lookup("java:comp/env/jdbc/books");
conn = ds.getConnection();

記得要捕獲 NamingException 與 SQLException 異常

使用連接池的好處是

數據庫操作性能得到提升
通過連接池管理數據庫的連接與釋放、提高了系統資源的使用效率

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM