程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> 攻破JNDI連接池(Tomcat5.5下通過管理界面配置連接池)

攻破JNDI連接池(Tomcat5.5下通過管理界面配置連接池)

編輯:關於JSP

攻破JNDI連接池- -
                                      
經過幾天的努力,終於可以連接上連接池了,其中參考了很多大俠關於這方面的貼子,現在將這幾天出現的幾個問題寫在這裡:
一.在tomcat(一個很好用的JSP運行平台)_homecommon下放入jdbc的三個驅動程序(一定要的哦),可以在微軟的網站上去下載,安裝的SQLSERVER2k默認的用戶名是sa,密碼是空,但密碼為空並不代表沒有密碼,所以你的url中一定要定義username和password,最好是重設定一下密碼
二.出現不能引用錯誤的話一般就是路徑沒有寫對,tomcat(一個很好用的JSP運行平台)默認的路徑是tomcat(一個很好用的JSP運行平台)_homewebapps不過使用5.5.x的話,按下面方法就行,不需要配置路徑,而且也不用在youwebappWEB-INFweb.xml(標准化越來越近了)文件配置引用
三.tomcat(一個很好用的JSP運行平台)5.5.x版的server.xml(標准化越來越近了)配置與tomcat(一個很好用的JSP運行平台)5.0的配置不同,下面列舉三種在tomcat(一個很好用的JSP運行平台)5.5.x的配置方法,如果配置不正確會出現javax.naming.NameNotFoundException: Name is not bound in this Context 錯誤
方式一、全局數據庫連接池
1、通過管理界面配置連接池,或者直接在tomcat(一個很好用的JSP運行平台)confserver.xml(標准化越來越近了)的GlobalNamingResources中增加
<Resource name="jdbc/mydb" type="javax.sql.DataSource" password="mypwd" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" maxIdle="2" maxWait="5000" validationQuery="select 1" username="sa" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb" maxActive="4"/>
2、在tomcat(一個很好用的JSP運行平台)webappsmyappMETA-INFcontext.xml(標准化越來越近了)的Context中增加:
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
這樣就可以了。
方式二、全局數據庫連接池
1、同上
2、在tomcat(一個很好用的JSP運行平台)confcontext.xml(標准化越來越近了)的Context中增加:
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
方式三、局部數據庫連接池
只需在tomcat(一個很好用的JSP運行平台)webappsmyappsMETA-INFcontext.xml(標准化越來越近了)的Context中增加:
<Resource name="jdbc/mydb" type="javax.sql.DataSource" password="mypwd" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" maxIdle="2" maxWait="5000" validationQuery="select 1" username="sa" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb" maxActive="4"/>
參數說明:
driveClassName:JDBC驅動類的完整的名稱;
maxActive:同時能夠從連接池中被分配的可用實例的最大數;
maxIdle:可以同時閒置在連接池中的連接的最大數;
maxWait:最大超時時間,以毫秒計;
password:用戶密碼;
url:到JDBC的URL連接;
user:用戶名稱;
validationQuery:用來查詢池中空閒的連接。
以上三種方式在tomcat(一個很好用的JSP運行平台) 5.5.4下都可以。另外,sql server(WINDOWS平台上強大的數據庫平台)的jdbc driver是從微軟網站上下載的sql server(WINDOWS平台上強大的數據庫平台) jdbc (sp3)。
四.報錯org.apache(Unix平台最流行的WEB服務器平台).tomcat(一個很好用的JSP運行平台).dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.)此是一個小問題,因為我的SQLSERVER2K的服務改成手動的,所以每次啟動後就要手動的啟動SQLSERVER2K,由於一下子不記的啟動了,所以報些錯誤,所以如果你經常要用到SQLSERVER2K的話,最好不要將其改為手動啟動

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved