Tomcat資料來源配置方法_JBuilder中

來源:互聯網
上載者:User

其實tomcat中配置資料來源有好幾中方式,很靈活,所以也容易相互整竄,個人認為比較簡單的方法就是在tomcat下的conf檔案夾下的server.xml增加 複製代碼 代碼如下:<Context path="/test" docBase="test"
debug= "99" reloadable="true" crossContext="true" verbosity="DEBUG">
<Resource name="jdbc/***" auth="Container"
type="javax.sql.DataSource" password="****"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
maxIdle="2"
maxWait="5000"
username="sa"
url="jdbc:microsoft:sqlserver://192.168.*.*:1433;DatabaseName=***"
maxActive="4"/>
</Context>

注意它是加在</host>前的,另外由於採用的tomcat5.5.9,所以資料來源的配置資訊採用屬性的形式寫,不能用結點的形式,tomcat5.0.X好象可以。
改了tomcat的server.xml檔案後,剩下一個要改的地方就是在你的web項目中的web.xml中加入引用 複製代碼 代碼如下:<resource-ref>
<description>Resource reference to a factory for java.sql.Connection
instances that may be used for talking to a particular
database that is configured in the server.xml file.</description>
<res-ref-name>jdbc/***</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>

僅僅需要改這兩個地方就能在web程式中使用tomcat提供的資料來源,但這樣做,你可以將你產生的war包放在容器下運行,卻不能在jbuilder中啟動項目,因為jbuilder啟動web項目時是不會去讀你指定的tomcat中的server.xml的,這樣的話資料來源就不可用了,如果我們不能在jbuilder中啟動項目,我門就不能在調試狀態下來運行了,這樣對我們來寫程式就沒有太大意義了(當然我們可以在外面啟動tomcat,採用遠端偵錯的方法,這樣即可以使用資料來源,也可以調試修改程式,但這個有點殺雞用牛刀的意思,不推薦),實際上jbuilder在啟動web項目時它會在工程目錄下建立一個tomcat檔案架,它會去讀conf下的server8080.xml檔案(8080為你為tomcat設定的連接埠),所以我們要想在jbuilder中啟動資料來源,必須要在該設定檔中加上資料來源資訊),具體的是將server8080.xml中的一條注釋刪掉,(否則它仍然會是臨時檔案,會被覆蓋的)在<host>結點中加上 複製代碼 代碼如下:<Resource name="jdbc/***" auth="Container"
type="javax.sql.DataSource" password="****"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
maxIdle="2"
maxWait="5000"
username="sa"
url="jdbc:microsoft:sqlserver://192.168.*.*:1433;DatabaseName=***"
maxActive="4"/>

注意這裡<context>結點可用它自身的,不要修改,重啟項目,這時你就可以使用資料來源了。之所以在jbuilder中啟動web項目有點麻煩,是它沒有把項目發布到tomcat的webapp下面去,而是把tomcat的一些東西拿過來了(相當於),象eclispe或idea就沒有這種問題了。
以上所說的配置資料來源是在tomcat5.5.9下實驗的,估計5.5.x應該都沒啥問題,要是別的tomcat的版本就不保了,誰叫咱用的開源的東東了,版本的相容就不能恭維了!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.