JDK環(huán)境變量設(shè)置:
假如你的jdk裝在了d:\jdk下
設(shè)置JAVA_HOME d:\jdk
設(shè)置classpath=.;d:\jdk\lib\tools.jar;d:\jdk\lib\dt.jar; 另一種設(shè)法為:classpath=.;d:\jdk\jre\lib\rt.jar;d:\jdk\lib\tools.jar;
設(shè)置path path=d:\jdk\bin 告訴操作系統(tǒng)如何來尋找java的jvm
------------------------------------------------------------------------
設(shè)置tomcat的環(huán)境變量:
假如你的tomcat直接解壓到d:\tomcat下
設(shè)置TOMCAT_HOME d:\tomcat
設(shè)置CATALINA_HOME d:\tomcat (tomcat_home 和catalina_home二者之中最少要一個)
-----------------------------------------------------------------------------
設(shè)置tomcat的數(shù)據(jù)庫連接池
修改tomcat的conf下的server.xml文件
在 <GlobalNamingResources>和 </GlobalNamingResources>之間加入以下內(nèi)容:
<Resource name="jdbc/connectDB" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/connectDB"> <!-- 這里為數(shù)據(jù)源名稱為jdbc/connectDB-->
<parameter>
<name>url</name> <!--這里為連接數(shù)據(jù)庫url-->
<value>jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=hcibe</value>
</parameter>
<parameter>
<name>maxIdle</name> <!--數(shù)據(jù)庫連接的最大空閑時間。超過此空閑時間,數(shù)據(jù)庫連接將被標記為不可用然后被釋放。設(shè)為0表示無限制。-->
<value>30</value>
</parameter>
<parameter>
<name>maxActive</name> <!--最大連接線程-->
<value>100</value>
</parameter>
<parameter>
<name>driverClassName</name> <!--jdbc連接類的名稱-->
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</parameter>
<parameter>
<name>maxWait</name> <!--最大的等待時間為5秒-->
<value>5000</value>
</parameter>
<parameter>
<name>removeAbandoned</name><!--參數(shù)removeAbandoned來保證刪除被遺棄的連接使其可以被重新利用-->
<value>true</value>
</parameter>
<parameter>
<name>username</name> <!--這里為登陸數(shù)據(jù)庫的用戶名-->
<value>test</value>
</parameter>
<parameter>
<name>removeAbandonedTimeout</name> <!--設(shè)置被遺棄的連接的超時的時間,即當一個連接連接被遺棄的時間超過設(shè)置的時間時 那么它會自動轉(zhuǎn)換成可利用的連接。默認的超時時間是300秒。-->
<value>60</value>
</parameter>
<parameter>
<name>password</name> <!--這里為登陸數(shù)據(jù)庫的密碼-->
<value>test</value>
</parameter>
</ResourceParams>
-------------------------------------------------------------------------------------------------------------------------
設(shè)置了數(shù)據(jù)庫連接池要在你的應(yīng)用程序下的WEB-INF目錄下的web.xml文件加入以下內(nèi)容
<resource-ref>
<description>connectDB hcibe</description>
<res-ref-name>jdbc/connectDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
--------------------------------------------------------------------------------------------------------------
在tomcat下的\conf\Catalina\localhost文件夾下面一定要建站點的XML,比如你的項目的名稱是Test,
那么在下面的話可以建一個Test.xml文件,這樣的話就有可能不會出錯的!如果不建的話,可能會
出現(xiàn)Cannot create JDBC driver of class '' for connect URL 'null'的錯誤!
------------------------------------------------------------------------------------------------------------
4) maxActive 連接池的最大數(shù)據(jù)庫連接數(shù)。設(shè)為0表示無限制。
5) maxIdle 數(shù)據(jù)庫連接的最大空閑時間。超過此空閑時間,數(shù)據(jù)庫連接將被標記為不可用,然后被釋放。設(shè)為0表示無限制。
6) maxWait 最大建立連接等待時間。如果超過此時間將接到異常。設(shè)為-1表示無限制。
7) removeAbandoned 回收被遺棄的(一般是忘了釋放的)數(shù)據(jù)庫連接到連接池中。
8) removeAbandonedTimeout 數(shù)據(jù)庫連接過多長時間不用將被視為被遺棄而收回連接池中。
9) logAbandoned 將被遺棄的數(shù)據(jù)庫連接的回收記入日志。
10) driverClassName JDBC驅(qū)動程序。
11) url 數(shù)據(jù)庫連接字符串
下面是一下參數(shù)的必要說明:
1) description 對被引用的資源的描述。
2) res-ref-name 資源名稱。見上面的<ResourceParams name="jdbc/connectDB">
3) res-type 資源類型。見上面的<Resource name="jdbc/connectDB" auth="Container" type="javax.sql.DataSource"/>
在寫個調(diào)用的類
import java.util.*;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
/**
* <p>Title: 數(shù)據(jù)庫池連接</p>
*
* <p>Description: 數(shù)據(jù)庫訪問時調(diào)用該層獲取數(shù)據(jù)庫連接</p>
*
* <p>Copyright: Copyright (c) 2005</p>
*
* <p>Company: </p>
*
* @author jlin not attributable
* @version 1.0
*/
public class DbConn{
private Context ctx;
private Connection conn;
public DbConn(){
}
public Connection getConn(){
try{
ctx = new InitialContext();
if (ctx == null)
throw new Exception("沒有匹配的環(huán)境");
DataSource ds = (DataSource) ctx.lookup(
"java:comp/env/jdbc/connectDB");
if (ds == null)
throw new Exception("沒有匹配數(shù)據(jù)庫");
conn = ds.getConnection();
}
catch(Exception e){
System.out.println("無法獲取數(shù)據(jù)庫連接:"+e.toString());
}
return conn;
}
public void close(){
try{
if(conn!=null)
conn.close();
if(ctx!=null)
ctx.close();
if(!conn.isClosed())
System.out.println("dbconn連接沒關(guān)閉.....");
}
catch(Exception e){
System.out.println("關(guān)閉連接或Context異常:"+e.toString());
}
}
}
posted on 2006-07-08 09:29
fly 閱讀(603)
評論(0) 編輯 收藏 所屬分類:
java學(xué)習(xí)