Tomcat下配置JNDI的三種方式


最近在整理項目上的配置文件,正好看到了數據源配置,想着配置方式有多種,便趁熱打鐵,記錄下常規的Tomcat配置數據源的方式

1.單個工程配置

找到Tomcat下的server.xml文件,在Context節點下,添加一個私有數據源

<Context docBase="TestApp" path="/TestApp" reloadable="true" source="org.eclipse.jst.jee.server:TestApp">  
<Resource  
    name="jdbc/mysql"   
    scope="Shareable"   
    type="javax.sql.DataSource"  
    factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"  
    url="jdbc:mysql://localhost:3306/test"  
    driverClassName ="com.mysql.jdbc.Driver"  
    username="root"  
    password="root"  
/>  
</Context> 

這種配置方式雖然簡單,但是重用性差

2.配置全局JNDI,並應用到單個項目上

第一步,找到Tomcat的server.xml中GlobalNamingResources節點,在該節點中添加一個全局JNDI配置

<Resource  
    name="jdbc/mysql"   
    scope="Shareable"   
    type="javax.sql.DataSource"  
    factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"  
    url="jdbc:mysql://localhost:3306/test"  
    driverClassName ="com.mysql.jdbc.Driver"  
    username="root"  
    password="root"  
/>

第二步,在server.xml中,找到此項目的Context節點,增加對全局數據源的引用Resource

<Context docBase="TestApp" path="/TestApp" reloadable="true">  
    <ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSource" />  
</Context> 

此方法雖然可控,但還是得針對每個項目具體配置

 

3.配置全局JNDI數據源,應用到所有Tomcat下的應用中

第一步:參考第二種的第一步

第二步:在Tomcat的context.xml文件的Context節點下,加一個ResourceLink節點,並對第一步配置的數據源進行引用

<Context>  
    <ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSource" />  
   <WatchedResource>WEB-INF/web.xml</WatchedResource>  
<Context>  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM