一.在tomcat_home\common下放入jdbc的三個驅動程序(一定要的哦),可以在微軟的網站上去下載,安裝的SQLSERVER2k默認的用戶名是sa,密碼是空,但密碼為空并不代表沒有密碼,所以你的url中一定要定義username和 password,最好是重設定一下密碼
二.出現不能引用錯誤的話一般就是路徑沒有寫對,tomcat默認的路徑是tomcat_home\webapps\不過使用5.5.x的話,按下面方法就行,不需要配置路徑,而且也不用在youwebapp\WEB-INF\web.xml文件配置引用
三. tomcat5.5.x版的server.xml配置與tomcat5.0的配置不同,下面列舉三種在tomcat5.5.x的配置方法,如果配置不正確會出現javax.naming.NameNotFoundException: Name is not bound in this Context 錯誤
方式一、全局數據庫連接池
1、通過管理界面配置連接池,或者直接在tomcat\conf\server.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\webapps\myapp\META-INF\context.xml的Context中增加:
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
這樣就可以了。
方式二、全局數據庫連接池
1、同上
2、在tomcat\conf\context.xml的Context中增加:
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
方式三、局部數據庫連接池
只需在tomcat\webapps\myapps\META-INF\context.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 5.5.4下都可以。另外,sql server的jdbc driver是從微軟網站上下載的sql server jdbc (sp3)。
四. 報錯org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.)此是一個小問題,因為我的SQLSERVER2K的服務改成手動的,所以每次啟動后就要手動的啟動SQLSERVER2K,由于一下子不記的啟動了,所以報些錯誤,所以如果你經常要用到SQLSERVER2K的話,最好不要將其改為手動啟動
二.出現不能引用錯誤的話一般就是路徑沒有寫對,tomcat默認的路徑是tomcat_home\webapps\不過使用5.5.x的話,按下面方法就行,不需要配置路徑,而且也不用在youwebapp\WEB-INF\web.xml文件配置引用
三. tomcat5.5.x版的server.xml配置與tomcat5.0的配置不同,下面列舉三種在tomcat5.5.x的配置方法,如果配置不正確會出現javax.naming.NameNotFoundException: Name is not bound in this Context 錯誤
方式一、全局數據庫連接池
1、通過管理界面配置連接池,或者直接在tomcat\conf\server.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\webapps\myapp\META-INF\context.xml的Context中增加:
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
這樣就可以了。
方式二、全局數據庫連接池
1、同上
2、在tomcat\conf\context.xml的Context中增加:
<ResourceLink global="jdbc/mydb" name="jdbc/mydb" type="javax.sql.DataSource"/>
方式三、局部數據庫連接池
只需在tomcat\webapps\myapps\META-INF\context.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 5.5.4下都可以。另外,sql server的jdbc driver是從微軟網站上下載的sql server jdbc (sp3)。
四. 報錯org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.)此是一個小問題,因為我的SQLSERVER2K的服務改成手動的,所以每次啟動后就要手動的啟動SQLSERVER2K,由于一下子不記的啟動了,所以報些錯誤,所以如果你經常要用到SQLSERVER2K的話,最好不要將其改為手動啟動
?
另外:編譯程序在tomcat中重定向配置,D:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\context.xml中添加
<Engine>
?<Host name="zonglai.local" debug="0" appBase="webapps"
???unpackWARs="true" autoDeploy="true"
???xmlValidation="false" xmlNamespaceAwausere="false">
??????? <Context path="" docBase="/zonglaikk" debug="0" />
??</Host>
???unpackWARs="true" autoDeploy="true"
???xmlValidation="false" xmlNamespaceAwausere="false">
??????? <Context path="" docBase="/zonglaikk" debug="0" />
??</Host>
</Engine>
docBase="/zonglaikk"對應項目名稱,name="zonglai.local" 對應本地訪問地址,然后在C:\WINDOWS\system32\drivers\hosts中配置本地路徑
docBase="/zonglaikk"對應項目名稱,name="zonglai.local" 對應本地訪問地址,然后在C:\WINDOWS\system32\drivers\hosts中配置本地路徑
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

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