亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

tomcat5配置常見數據庫連接池的例子.

系統 1990 0

?

環境: 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,并在此文件的下添入代碼:

<ResourceLink name="jdbc/oracle" global="jdbc/oracle" type="javax.sql.DataSourcer"/>

?

?

????????? 3、? 修改web.xml和%TOMCAT_HOME%\conf\Catalina\localhost下對應你的引用的配置文件

打開%TOMCAT_HOME%\conf\web.xml,在</web-app>的前面添加以下內容:

????? <resource-ref>

??? <description>oraDB Connection</description>

??? <res-ref-name>jdbc/ora</res-ref-name>

??? <res-type>javax.sql.DataSource</res-type>

??? <res-auth>Container</res-auth>

????? </resource-ref>


???? 注意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,并在此文件的下添入代碼:

<ResourceLink name="jdbc/sqlserver" global="jdbc/sqlserver" type="javax.sql.DataSourcer"/>

?

?

????????? 3、? 修改web.xml和%TOMCAT_HOME%\conf\Catalina\localhost下對應你的引用的配置文件

打開%TOMCAT_HOME%\conf\web.xml,在</web-app>的前面添加以下內容:

????? <resource-ref>

??? <description>sqlserverDB Connection</description>

??? <res-ref-name>jdbc/sqlserver</res-ref-name>

??? <res-type>javax.sql.DataSource</res-type>

??? <res-auth>Container</res-auth>

????? </resource-ref>


???? 注意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,并在此文件的下添入代碼:

<ResourceLink name="jdbc/mysql" global="jdbc/mysql" type="javax.sql.DataSourcer"/>

?

?

????????? 3、? 修改web.xml和%TOMCAT_HOME%\conf\Catalina\localhost下對應你的引用的配置文件

打開%TOMCAT_HOME%\conf\web.xml,在</web-app>的前面添加以下內容:

????? <resource-ref>

??? <description>mysqlDB Connection</description>

??? <res-ref-name>jdbc/sqlmysql</res-ref-name>

??? <res-type>javax.sql.DataSource</res-type>

??? <res-auth>Container</res-auth>

????? </resource-ref>


???? 注意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 文件 的配置部分
???? <GlobalNamingResources>
??? <Environment name="simpleValue" type="java.lang.Integer" value="30"/>
??? <Resource auth="Container" description="User database that can be updated and saved" name="UserDatabase" type="org.apache.catalina.UserDatabase"/>
??? <Resource name="jdbc/mysql" type="javax.sql.DataSource"/>
??? <Resource name="jdbc/oracle" type="javax.sql.DataSource"/>
??? <Resource name="jdbc/sqlserver" type="javax.sql.DataSource"/>
??? <ResourceParams name="UserDatabase">
????? <parameter>
??????? <name>factory</name>
??????? <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
????? </parameter>
????? <parameter>
??????? <name>pathname</name>
??????? <value>conf/tomcat-users.xml</value>
????? </parameter>
??? </ResourceParams>
??? <ResourceParams name="jdbc/mysql">
????? <parameter>
??????? <name>maxWait</name>
??????? <value>5000</value>
????? </parameter>
????? <parameter>
??????? <name>maxActive</name>
??????? <value>20</value>
????? </parameter>
????? <parameter>
??????? <name>password</name>
??????? <value>mysqlconn</value>
????? </parameter>
????? <parameter>
??????? <name>url</name>
??????? <value>jdbc:mysql://192.168.0.18/mysqldb</value>
????? </parameter>
????? <parameter>
??????? <name>driverClassName</name>
??????? <value>com.mysql.jdbc.Driver</value>
????? </parameter>
????? <parameter>
??????? <name>maxIdle</name>
??????? <value>10</value>
????? </parameter>
????? <parameter>
??????? <name>username</name>
??????? <value>mysqlconn</value>
????? </parameter>
??? </ResourceParams>
??? <ResourceParams name="jdbc/oracle">
????? <parameter>
??????? <name>maxWait</name>
??????? <value>5000</value>
????? </parameter>
????? <parameter>
??????? <name>maxActive</name>
??????? <value>20</value>
????? </parameter>
????? <parameter>
??????? <name>password</name>
??????? <value>oraconn</value>
????? </parameter>
????? <parameter>
??????? <name>url</name>
??????? <value>jdbc:oracle:thin:@192.168.0.18:1521:oradb</value>
????? </parameter>
????? <parameter>
??????? <name>driverClassName</name>
??????? <value>oracle.jdbc.driver.OracleDriver</value>
????? </parameter>
????? <parameter>
??????? <name>maxIdle</name>
??????? <value>10</value>
????? </parameter>
????? <parameter>
??????? <name>username</name>
??????? <value>oraconn</value>
????? </parameter>
??? </ResourceParams>
??? <ResourceParams name="jdbc/sqlserver">
????? <parameter>
??????? <name>maxWait</name>
??????? <value>5000</value>
????? </parameter>
????? <parameter>
??????? <name>maxActive</name>
??????? <value>20</value>
????? </parameter>
????? <parameter>
??????? <name>password</name>
??????? <value>sqlconn</value>
????? </parameter>
????? <parameter>
??????? <name>url</name>
??????? <value>jdbc:microsoft:sqlserver://192.168.0.18:1433;DatabaseName=sqldb</value>
????? </parameter>
????? <parameter>
??????? <name>driverClassName</name>
??????? <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
????? </parameter>
????? <parameter>
??????? <name>maxIdle</name>
??????? <value>10</value>
????? </parameter>
????? <parameter>
??????? <name>username</name>
??????? <value>sqlconn</value>
????? </parameter>
??? </ResourceParams>
? </GlobalNamingResources>

?? 其中192.168.0.18為數據庫服務器IP
.??
?? 下面是 %CATALINA_HOME%\conf\Catalina\localhost 對應的 xml 文件。? 我的應用是test.xml

??? <?xml versi encoding='utf-8'?>
<Context displayName="My Web Application" docBase="test" path="/test" workDir="work\Catalina\localhost\test">
? <ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSourcer"/>
? <ResourceLink global="jdbc/sqlserver" name="jdbc/sqlserver" type="javax.sql.DataSourcer"/>
? <ResourceLink global="jdbc/oracle" name="jdbc/oracle" type="javax.sql.DataSourcer"/>
</Context>

?? 以下是test webapp 下的WEB-INFO web.xml文件

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
" http://java.sun.com/dtd/web-app_2_3.dtd ">
<web-app>
<display-name>My Web Application</display-name>
<description>
??????? A application for test.
</description>
<!--Mysql Database Config start -->
<resource-ref>

??? <description>mysqlDB Connection</description>

??? <res-ref-name>jdbc/mysql</res-ref-name>

??? <res-type>javax.sql.DataSource</res-type>

??? <res-auth>Container</res-auth>

</resource-ref>

<!-- Mysql Database Config end -->

<!-- Sqlserver Database Config start -->
<resource-ref>
??????? <description>sqlserverDB Connection</description>

??????? <res-ref-name>jdbc/sqlserver</res-ref-name>

??????? <res-type>javax.sql.DataSource</res-type>

??????? <res-auth>Container</res-auth>
</resource-ref>
<!-- Sqlserver Database Config end -->

<!-- oracle Database Config start -->
<resource-ref>

??? <description>oracleDB Connection</description>

??? <res-ref-name>jdbc/oracle</res-ref-name>

??? <res-type>javax.sql.DataSource</res-type>

??? <res-auth>Container</res-auth>

</resource-ref>
<!-- oracle Database Config end -->

?

? <!-- Example filter to set character encoding on each request -->
??? <filter>
??????? <filter-name>Set Character Encoding</filter-name>
??????? <filter-class>filters.SetCharacterEncodingFilter</filter-class>
??????? <init-param>
??????????? <param-name>encoding</param-name>
??????????? <param-value>GB2312</param-value>
??????? </init-param>
??? </filter>

<filter-mapping>
??????? <filter-name>Set Character Encoding</filter-name>
??????? <url-pattern>/*</url-pattern>
</filter-mapping>

</web-app>
在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文件
???? <%@ page contentType="text/html;charset=gb2312" %>

<%@ page import="java.sql.*"%>

<%@ page import="javax.sql.*"%>

<%@ page import="javax.naming.*"%>

<%@ page session="false" %>

<html>

<head>

?

<title></title>

<%

?? out.print("我的測試開始"+"<br/>");

?? DataSource ds = null;

?? try{

?? InitialContext ctx=new InitialContext();

?? ds=(DataSource)ctx.lookup("java:comp/env/jdbc/oracle");

?? Connection conn = ds.getConnection();

?? Statement stmt = conn.createStatement();

??

?? String strSql = " select * from test_user";

?? ResultSet rs = stmt.executeQuery(strSql);

?? while(rs.next()){

????? out.print(rs.getString(1)+"<br/>");????????????????

???? }
??????? rs.close();
??????? stmt.close();
??????? conn.close();
out.print("我的測試結束");

?? }

?? catch(Exception ex){

?????? out.print("出現例外,信息是:"+ex.getMessage());

??? ex.printStackTrace();

?? }

%>

</head>

<body>

</body>

</html>


=================================================================================================
???? testDSsqlserver.jsp文件
???? <%@ page contentType="text/html;charset=gb2312" %>

<%@ page import="java.sql.*"%>

<%@ page import="javax.sql.*"%>

<%@ page import="javax.naming.*"%>

<%@ page session="false" %>

<html>

<head>

?

<title></title>

<%

?? out.print("我的測試開始"+"<br/>");

?? DataSource ds = null;

?? try{

?? InitialContext ctx=new InitialContext();

?? ds=(DataSource)ctx.lookup("java:comp/env/jdbc/sqlserver");

?? Connection conn = ds.getConnection();

?? Statement stmt = conn.createStatement();

??

?? String strSql = " select * from test_user";

?? ResultSet rs = stmt.executeQuery(strSql);

?? while(rs.next()){

????? out.print(rs.getString(1)+"<br/>");????????????????

???? }
??????? rs.close();
??????? stmt.close();
??????? conn.close();
out.print("我的測試結束");

?? }

?? catch(Exception ex){

?????? out.print("出現例外,信息是:"+ex.getMessage());

??? ex.printStackTrace();

?? }

%>

</head>

<body>

</body>

</html>


=======================================================================================================


???? testDSmysql.jsp文件
???? <%@ page contentType="text/html;charset=gb2312" %>

<%@ page import="java.sql.*"%>

<%@ page import="javax.sql.*"%>

<%@ page import="javax.naming.*"%>

<%@ page session="false" %>

<html>

<head>

?

<title></title>

<%

?? out.print("我的測試開始"+"<br/>");

?? DataSource ds = null;

?? try{

?? InitialContext ctx=new InitialContext();

?? ds=(DataSource)ctx.lookup("java:comp/env/jdbc/mysql");

?? Connection conn = ds.getConnection();

?? Statement stmt = conn.createStatement();

??

?? String strSql = " select * from test_user";

?? ResultSet rs = stmt.executeQuery(strSql);

?? while(rs.next()){

????? out.print(rs.getString(1)+"<br/>");????????????????

???? }
??????? rs.close();
??????? stmt.close();
??????? conn.close();
out.print("我的測試結束");

?? }

?? catch(Exception ex){

?????? out.print("出現例外,信息是:"+ex.getMessage());

??? ex.printStackTrace();

?? }

%>

</head>

<body>

</body>

</html>

tomcat5配置常見數據庫連接池的例子.


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 九天玄帝诀免费完整观看 | 一本久久道 | 狠狠久久久久综合网 | 四虎影院永久在线观看 | 天天干天天曰 | 一级一片 | 99久久网| 久久精品国产亚洲香蕉 | 一本大道加勒比久久综合 | 成人免费在线视频 | 国产性精品 | 99久久99久久精品免费看子伦 | 日韩一区二区不卡中文字幕 | 中文日本在线 | 色婷婷久久合月综 | 久久草在线观看视频 | 欧美成人h版影片在线观看 欧美成人h精品网站 | 狠狠亚洲婷婷综合色香 | 国产精品99r8在线观看 | 亚洲精品综合网 | 欧美专区在线播放 | 一级a毛片免费观看久久精品 | 在线日产一区二区 | 国产日产久久高清欧美一区 | 国产一级特黄老妇女大片免费 | 99在线影院| 久久毛片免费 | 黄色影院免费看 | 深夜福利网站在线观看 | 国产综合一区二区 | 日韩美在线| 中文字幕亚洲综合久久菠萝蜜 | 日韩成人免费视频 | 午夜在线视频一区二区三区 | 在线手机福利免费福利院 | 亚洲精品久久精品h成人 | 国产精品精品国产一区二区 | 四虎影视成人永久在线观看 | 又粗又大的机巴好爽视频视频 | 天天操天天搞 | 国产成人一区二区三区高清 |