環境: w2kp sp4, jsdk1.4.2_8; tomcat5.0.2.8; oracle817, sqlserver2000 sp3 , mysql5 beta 總的來說在tomcat配置一個資料源有4項工作要做. 1. 在server.xml 裡配置資料源連接配接池參數。 可以手動,也可以通過tomcat admin工具。 2. 在 %CATALINA_HOME%/conf/Catalina/localhost/ 下 , 對用你自己的webapp使用者 yourapp.xml 配置 對資料源的聲明. 3. 在自定義的webapp 下WEB-INFO/web.xml 下配置對資料源的引用。 4. 在特定資料庫的jdbc 驅動copy 到%CATALINA_HOME%/common/lib/ 下 其他應用伺服器可能要配置classpath 等. oracle 資料源配置. 1.進入 http://localhost:8080/admin/ conf檔案夾下的tomcat-users.xml有管理者的使用者名密碼等資訊。 選擇Resources-Data sources進入配置資料源界面,選擇Data Source Actions ->選擇Create New Data Source,進入配置詳細資訊界面,内容如下: JNDI Name: jdbc/oracle Data Source URL: jdbc:oracle:thin:@192.168.0.18:1521:oradb JDBC Driver Class: oracle.jdbc.driver.OracleDriver User Name: oraconn Password: oraconn Max. Active Connections: 20 Max. Idle Connections: 10 Max. Wait for Connection: 5000 Validation Query: 其中oradb 是oracle資料庫的SID. oraconn 為oracle可用的使用者名密碼. 2.進入%TOMCAT_HOME%/conf/Catalina/localhost下,找到你的web應用對應的.xml檔案(下面有我的web的目錄結構),如 test.xml,并在此檔案的下添入代碼: 3、 修改web.xml和%TOMCAT_HOME%/conf/Catalina/localhost下對應你的引用的配置檔案 打開%TOMCAT_HOME%/conf/web.xml,在的前面添加以下内容: oraDB Connection jdbc/ora javax.sql.DataSource Container 注意res-ref-name填寫的内容要與在上文提到的JNDI Name名稱一緻。 4. 在%oracle_home%/ora81/jdbc/lib 下有一個classes12.zip, 和nls_charset12.zip 把這兩個檔案解壓的一個臨時目錄下例如d:/work/temp/classes12 和 d:/work/temp/nls_charset12 進入這兩個目錄 d:> cd work/temp/classes12 用 jar -cvf classes12.jar * 建立classes12.jar 同樣建立 nls_cahrset12.jar 把這兩個jar檔案copy 到 %tomcat_home% /common/lib 下。 oracle 資料庫配置完畢。 sqlserver2000 1.進入 http://localhost:8080/admin/ conf檔案夾下的tomcat-users.xml有管理者的使用者名密碼等資訊。 選擇Resources-Data sources進入配置資料源界面,選擇Data Source Actions ->選擇Create New Data Source,進入配置詳細資訊界面,内容如下: JNDI Name: jdbc/sqlserver Data Source URL: jdbc:microsoft:sqlserver://192.168.0.18:1433;DatabaseName=sqldb JDBC Driver Class: com.microsoft.jdbc.sqlserver.SQLServerDriver User Name: sqlconn Password: sqlconn Max. Active Connections: 20 Max. Idle Connections: 10 Max. Wait for Connection: 5000 Validation Query: 其中sqldb 是sqldb資料庫名稱. sqlconn 為sqlserver可用的使用者名密碼. 2.進入%TOMCAT_HOME%/conf/Catalina/localhost下,找到你的web應用對應的.xml檔案(下面有我的web的目錄結構),如 test.xml,并在此檔案的下添入代碼: 3、 修改web.xml和%TOMCAT_HOME%/conf/Catalina/localhost下對應你的引用的配置檔案 打開%TOMCAT_HOME%/conf/web.xml,在的前面添加以下内容: sqlserverDB Connection jdbc/sqlserver javax.sql.DataSource Container 注意res-ref-name填寫的内容要與在上文提到的JNDI Name名稱一緻。 4. 下載下傳sqlserver2000 jdbc 驅動 http://download.microsoft.com/download/SQLSVR2000/Install/2.2.0022/UNIX/EN-US/mssqlserver.tar 解壓後找到如下jar包 msbase.jar , mssqlserver.jar, msutil.jar 把這3個jar包copy 到 %tomcat_home% /common/lib 下。 sqlserver 配置完畢 mysql5 beta 資料源配置 1.進入 http://localhost:8080/admin/ conf檔案夾下的tomcat-users.xml有管理者的使用者名密碼等資訊。 選擇Resources-Data sources進入配置資料源界面,選擇Data Source Actions ->選擇Create New Data Source,進入配置詳細資訊界面,内容如下: JNDI Name: jdbc/mysql Data Source URL: jdbc:mysql://192.168.0.18/mysqldb JDBC Driver Class: com.mysql.jdbc.Driver User Name: mysqlconn Password: mysqlconn Max. Active Connections: 20 Max. Idle Connections: 10 Max. Wait for Connection: 5000 Validation Query: 其中sqldb 是sqldb資料庫名稱. mysqlconn 為sqlserver可用的使用者名密碼. 2.進入%TOMCAT_HOME%/conf/Catalina/localhost下,找到你的web應用對應的.xml檔案(下面有我的web的目錄結構),如 test.xml,并在此檔案的下添入代碼: 3、 修改web.xml和%TOMCAT_HOME%/conf/Catalina/localhost下對應你的引用的配置檔案 打開%TOMCAT_HOME%/conf/web.xml,在的前面添加以下内容: mysqlDB Connection jdbc/sqlmysql javax.sql.DataSource Container 注意res-ref-name填寫的内容要與在上文提到的JNDI Name名稱一緻。 4. 下載下傳mysql jdbc 驅動 mysql-connector-java-3.1.9.zip 解壓後找到如下jar包 mysql-connector-java-3.1.9-bin.jar 這個jar包copy 到 %tomcat_home% /common/lib 下。 mysql 配置完畢 這是conf 下 server.xml 檔案 的配置部分 factory org.apache.catalina.users.MemoryUserDatabaseFactory pathname conf/tomcat-users.xml maxWait 5000 maxActive 20 password mysqlconn url jdbc:mysql://192.168.0.18/mysqldb driverClassName com.mysql.jdbc.Driver maxIdle 10 username mysqlconn maxWait 5000 maxActive 20 password oraconn url jdbc:oracle:thin:@192.168.0.18:1521:oradb driverClassName oracle.jdbc.driver.OracleDriver maxIdle 10 username oraconn maxWait 5000 maxActive 20 password sqlconn url jdbc:microsoft:sqlserver://192.168.0.18:1433;DatabaseName=sqldb driverClassName com.microsoft.jdbc.sqlserver.SQLServerDriver maxIdle 10 username sqlconn 其中192.168.0.18為資料庫伺服器IP . 下面是 %CATALINA_HOME%/conf/Catalina/localhost 對應的 xml 檔案。 我的應用是test.xml 以下是test webapp 下的WEB-INFO web.xml檔案 PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> My Web Application A application for test. mysqlDB Connection jdbc/mysql javax.sql.DataSource Container sqlserverDB Connection jdbc/sqlserver javax.sql.DataSource Container oracleDB Connection jdbc/oracle javax.sql.DataSource Container Set Character Encoding filters.SetCharacterEncodingFilter encoding GB2312 Set Character Encoding /* 在oracle , sqlserver , mysql 建立3個類似的簡單表來測試 mysql create table test_user ( NAME VARCHAR(50) ) oracle create table test_user ( NAME VARCHAR2(50) ) sqlserver create table test_user ( NAME VARCHAR(50) ) ok 配置工作已經完成。 讓我們寫3個JSP來測試。 testDSoracle.jsp檔案 ================================================================================================= testDSsqlserver.jsp檔案 ======================================================================================================= testDSmysql.jsp檔案 |