zoukankan      html  css  js  c++  java
  • Tomcat配置JNDI数据源的三种方式-转-http://blog.51cto.com/xficc/1564691

    第一种,单个应用独享数据源

    就一步,找到Tomcat的server.xml找到工程的Context节点,添加一个私有数据源

    Xml代码  收藏代码

    1. <Context docBase="WebApp" path="/WebApp" reloadable="true" source="org.eclipse.jst.jee.server:WebApp">  

    2. <Resource  

    3.     name="jdbc/mysql"   

    4.     scope="Shareable"   

    5.     type="javax.sql.DataSource"  

    6.     factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"  

    7.     url="jdbc:mysql://localhost:3306/test"  

    8.     driverClassName ="com.mysql.jdbc.Driver"  

    9.     username="root"  

    10.     password="root"  

    11. />  

    12. </Context>  

    优点:简单

    缺点:重用性差

    第二种,配置全局JNDI数据源,应用到单个应用

    分两步

    第一步, 找到Tomcat的server.xml中GlobalNamingResources节点,在节点下加一个全局数据源

    Xml代码  收藏代码

    1. <Resource  

    2.     name="jdbc/mysql"   

    3.     scope="Shareable"   

    4.     type="javax.sql.DataSource"  

    5.     factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"  

    6.     url="jdbc:mysql://localhost:3306/test"  

    7.     driverClassName ="com.mysql.jdbc.Driver"  

    8.     username="root"  

    9.     password="root"  

    10. />  

    第二步,找到要应用此JNDI数据源的工程Context节点,增加对全局数据源的引用ResourceLink 

    Xml代码  收藏代码

    1. <Context docBase="WebApp" path="/WebApp" reloadable="true">  

    2.     <ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSource" />  

    3. </Context>  

    优点:重用性,可控性

    缺点:配置相对第三种方法要繁琐一点,每个工程都得配

    第三种,配置全局JNDI数据源,应用到所有Tomcat下部署的应用

    也分两步

    第一步

        参考第二种的第一步

    第二步,找到Tomcat的context.xml,在Context节点下加一个ResourceLink节点对第一步配置的数据源进行引用

    这个XML配置文件的根节点就是<Context>

    Xml代码  收藏代码

    1. <Context>  

    2.     <ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSource" />  

    3.    <WatchedResource>WEB-INF/web.xml</WatchedResource>  

    4. <Context>  

    优点:重用性,一次性到位

    缺点:没有可控性

    Spring对JNDI数据源的引用

    在applicationContext.xml中加一个bean,替代原来的dataSource

    Xml代码  收藏代码

    1. <jee:jndi-lookup id="dataSource" jndi-name="jdbc/mysql" />  

    C3P0数据源的配置

    type和factory的值发生变化

    username=>user

    url=>jdbcUrl

    driverClassName=>driverClass

    Xml代码  收藏代码

    1. <Resource name="jdbc/mysql_c3p0" scope="Shareable"  

    2.     type="com.mchange.v2.c3p0.ComboPooledDataSource"   

    3.     factory="org.apache.naming.factory.BeanFactory"  

    4.     jdbcUrl="jdbc:mysql://localhost:3306/test" driverClass="com.mysql.jdbc.Driver"  

    5.     user="root" password="root" />  

  • 相关阅读:
    AI生万物,新世界的大门已敞开
    荣耀10带来AI版WPS,玩转潮酷新功能
    P20 旅行助手,从未有过的至尊私人导游服务!
    如何成为快手尬舞王?HUAWEI HiAI了解一下!
    golang中的接口实现(二)
    golang中的接口实现(一)
    new~mac os 给终端命令写alias(及其他常用命令)及软连接
    Java面试题精选
    干货 unity小贴士
    js数组插入指定位置元素,删除指定位置元素,查找指定位置元素算法
  • 原文地址:https://www.cnblogs.com/anruy/p/9115150.html
Copyright © 2011-2022 走看看