jspark
星星之火、可以燎原
BlogJava
首頁
新隨筆
聯系
聚合
管理
隨筆-16 評論-54 文章-0 trackbacks-0
tomcat5.0與tomcat5.5的數據庫連接池jndi配置區別
在tomcat5.5版本以前,可以說jndi配置相對是比較復雜的,而且據網友說用tomcat5.0的控制臺配置數據庫連接池經常有問題,而且文檔寫得又不詳細。
tomcat5.5出來后,jndi的配置方法是大大地節省,而且很簡潔,個人覺得比以前的版本好很多。這里大概給出一個配置例子。tomcat數據庫連接池jndi配置有兩種,一種是全局的,一種是context的,下面主要是講全局的,并且以一個實例jdbc/byisdb為例子
???
一、tomcat5.0配置方法
1、首先在server.xml里面配置,找到下面的配置
? <!-- Global JNDI resources -->
? <GlobalNamingResources>
?</GlobalNamingResources>
2、在里面增加一個Resource
??????
<
Resource?name
=
"
jdbc/byisdb
"
???????????????auth
=
"
Container
"
???????????????type
=
"
javax.sql.DataSource
"
/>
3、在下面增加屬性
??
<
ResourceParams?name
=
"
jdbc/byisdb
"
>
????
<
parameter
>
??????
<
name
>
factory
</
name
>
??????
<
value
>
org.apache.commons.dbcp.BasicDataSourceFactory
</
value
>
????
</
parameter
>
????
<!--
?Maximum?number?of?dB?connections?in?pool.?Make?sure?you
?????????configure?your?mysqld?max_connections?large?enough?to?handle
?????????all?of?your?db?connections.?Set?to?
0
?
for
?no?limit.
?????????
-->
????
<
parameter
>
??????
<
name
>
maxActive
</
name
>
??????
<
value
>
100
</
value
>
????
</
parameter
>
????
<!--
?Maximum?number?of?idle?dB?connections?to?retain?in?pool.
?????????Set?to?
-
1
?
for
?no?limit.??See?also?the?DBCP?documentation?on?
this
?????????and?the?minEvictableIdleTimeMillis?configuration?parameter.
?????????
-->
????
<
parameter
>
??????
<
name
>
maxIdle
</
name
>
??????
<
value
>
30
</
value
>
????
</
parameter
>
????
<!--
?Maximum?time?to?wait?
for
?a?dB?connection?to?become?available
?????????in?ms,?in?
this
?example?
10
?seconds.?An?Exception?is?thrown?
if
?????????
this
?timeout?is?exceeded.??Set?to?
-
1
?to?wait?indefinitely.
?????????
-->
????
<
parameter
>
??????
<
name
>
maxWait
</
name
>
??????
<
value
>
10000
</
value
>
????
</
parameter
>
????
<!--
?MySQL?dB?username?and?password?
for
?dB?connections??
-->
????
<
parameter
>
?????
<
name
>
username
</
name
>
?????
<
value
>
una_oa
</
value
>
????
</
parameter
>
????
<
parameter
>
?????
<
name
>
password
</
name
>
?????
<
value
>
una_oa
</
value
>
????
</
parameter
>
????
<!--
?Class?name?
for
?the?old?mm.mysql?JDBC?driver?
-
?uncomment?
this
?entry?and?comment?next
?????????
if
?you?want?to?use?
this
?driver?
-
?we?recommend?using?Connector
/
J?though
????
<
parameter
>
???????
<
name
>
driverClassName
</
name
>
???????
<
value
>
org.gjt.mm.mysql.Driver
</
value
>
????
</
parameter
>
?????
-->
????
????
<!--
?Class?name?
for
?the?official?MySQL?Connector
/
J?driver?
-->
????
<
parameter
>
???????
<
name
>
driverClassName
</
name
>
???????
<
value
>
oracle.jdbc.driver.OracleDriver
</
value
>
????
</
parameter
>
????
????
<!--
?The?JDBC?connection?url?
for
?connecting?to?your?MySQL?dB.
?????????The?autoReconnect
=
true
?argument?to?the?url?makes?sure?that?the
?????????mm.mysql?JDBC?Driver?will?automatically?reconnect?
if
?mysqld?closed?the
?????????connection.??mysqld?by?
default
?closes?idle?connections?after?
8
?hours.
?????????
-->
????
<
parameter
>
??????
<
name
>
url
</
name
>
??????
<
value
>
jdbc:oracle:thin:@
192.168
.
1.210
:
1521
:byisdb
</
value
>
????
</
parameter
>
??
</
ResourceParams
>
4、在你的應用的web.xml里面增加
<
resource
-
ref
>
?
<
description
>
postgreSQL?Datasource?example
</
description
>
?
<
res
-
ref
-
name
>
jdbc
/
byisdb
</
res
-
ref
-
name
>
?
<
res
-
type
>
javax.sql.DataSource
</
res
-
type
>
?
<
res
-
auth
>
Container
</
res
-
auth
>
</
resource
-
ref
>
OK,到此配置完畢,可以用下面的幾段代碼進行測試
Context?initContext?
=
?
new
?InitialContext();
Context?envContext??
=
?(Context)initContext.lookup(
"
java:/comp/env
"
);
DataSource?ds?
=
?(DataSource)envContext.lookup(
"
jdbc/byisdb
"
);
Connection?conn?
=
?ds.getConnection();
out.println(
"
conn?is:
"
+
conn);
二、tomcat5.5配置
1、打開conf/context.xml里面
? 添加下面的配置
????
<
Resource?
name
="jdbc/byisdb"
?auth
="Container"
?type
="javax.sql.DataSource"
?driverClassName
="oracle.jdbc.driver.OracleDriver"
?url
="jdbc:oracle:thin:@192.168.1.210:1521:byisdb"
?username
="una_oa"
?password
="una_oa"
?maxActive
="20"
?maxIdle
="10"
?maxWait
="10000"
/>
?
2在你的應用的web.xml里面增加
<
resource
-
ref
>
?
<
description
>
postgreSQL?Datasource?example
</
description
>
?
<
res
-
ref
-
name
>
jdbc
/
byisdb
</
res
-
ref
-
name
>
?
<
res
-
type
>
javax.sql.DataSource
</
res
-
type
>
?
<
res
-
auth
>
Container
</
res
-
auth
>
</
resource
-
ref
>
同樣,可以用上面的代碼進行測試。
posted on 2006-08-11 14:03
jspark
閱讀(2953)
評論(1)
編輯
收藏
評論:
#
re: tomcat5.0與tomcat5.5的數據庫連接池jndi配置區別[未登錄]
2008-06-12 15:46 |
dd
你好,我有個問題,關于tomcat5.0配置的第4步,一定要在web.xml中添加嗎?這里添加的作用是什么?不添加這段web.xml代碼似乎也可以訪問到。
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
<
2008年6月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(5)
給我留言
查看公開留言
查看私人留言
隨筆檔案
2008年10月 (3)
2006年11月 (4)
2006年8月 (4)
2006年7月 (5)
搜索
最新評論
1.?re: ThreadLocal的幾種誤區[未登錄]
評論內容較長,點擊標題查看
--deepblue
2.?re: ThreadLocal的幾種誤區
@lina
非static 的private成員變量屬于每個對象,ThreadLocal只有一個對象吧
--leealways887
3.?re: 關于Spring AOP和BeanNameAutoProxyCreator[未登錄]
啥JB玩意兒!!
--111111
4.?re: ThreadLocal的幾種誤區
HibernateUtil工具類中一般都有寫closeSession的方法.
將線程對應的變量ThreadLocal中的session置為null.
這樣歸還線程池后又是干凈的了.
--redcoatjk
5.?re: 關于Spring AOP和BeanNameAutoProxyCreator
確實比較不知所云@我
--zhengb
閱讀排行榜
1.?ThreadLocal的幾種誤區(30754)
2.?如何更方便地進行CSV格式文件讀寫(11810)
3.?代碼混淆方法之二(tomcat下面代碼加密)(9082)
4.?代碼混淆器的使用(7920)
5.?csv reader的使用(6565)
評論排行榜
1.?代碼混淆方法之二(tomcat下面代碼加密)(13)
2.?ThreadLocal的幾種誤區(12)
3.?關于Spring AOP和BeanNameAutoProxyCreator(11)
4.?代碼混淆器的使用(6)
5.?開通個人blog,開心!(4)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 jspark
主站蜘蛛池模板:
海伦市
|
玉门市
|
洪雅县
|
砚山县
|
曲松县
|
普洱
|
芒康县
|
永兴县
|
清徐县
|
鸡泽县
|
海伦市
|
漯河市
|
广河县
|
五大连池市
|
和龙市
|
滨海县
|
上虞市
|
溆浦县
|
尉氏县
|
从江县
|
临武县
|
安阳县
|
伊金霍洛旗
|
通海县
|
常德市
|
弋阳县
|
湘阴县
|
古交市
|
涿州市
|
宜城市
|
康平县
|
蒙山县
|
虎林市
|
龙陵县
|
樟树市
|
娱乐
|
武义县
|
高州市
|
天津市
|
晋江市
|
县级市
|