• Tomcat8.0配置JNDI多数据源


    jndi配置 :此种配置需要在Tomcat的server.xml中和context.xml中配置数据源,在项目中引用。 

    需要在tomcat下加入数据库连接的jar包,相关包(ojdbc14;c3p0数据源)

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

     1 <!-- Global JNDI resources
     2        Documentation at /docs/jndi-resources-howto.html
     3   -->
     4   <GlobalNamingResources>
     5     <!-- Editable user database that can also be used by
     6          UserDatabaseRealm to authenticate users
     7     -->
     8     <Resource name="UserDatabase" auth="Container"
     9               type="org.apache.catalina.UserDatabase"
    10               description="User database that can be updated and saved"
    11               factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
    12               pathname="conf/tomcat-users.xml" />
    13 <Resource name="UserDatabase" auth="Container"
    14               type="org.apache.catalina.UserDatabase"
    15               description="User database that can be updated and saved"
    16               factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
    17               pathname="conf/tomcat-users.xml" />
    18 
    19 
    20 <Resource auth="Container" 
    21              description="DB Connection" 
    22              driverClass="oracle.jdbc.driver.OracleDriver" 
    23              maxPoolSize="20" 
    24              minPoolSize="5" 
    25              acquireIncrement="5" 
    26              maxIdleTime="300"
    27              idleConnectionTestPeriod="60"
    28              automaticTestTable="Test"
    29              acquireRetryAttempts="30"
    30              breakAfterAcquireFailure="true"
    31              name="jdbc/ADbSource"
    32              user="A" 
    33              password="A" 
    34              factory="org.apache.naming.factory.BeanFactory" 
    35              type="com.mchange.v2.c3p0.ComboPooledDataSource" 
    36              jdbcUrl="jdbc:oracle:thin:@ip1:port1:DBname1" />
    37 
    38 
    39 <Resource auth="Container" 
    40              description="DB Connection" 
    41              driverClass="oracle.jdbc.driver.OracleDriver" 
    42              maxPoolSize="20" 
    43              minPoolSize="5" 
    44              acquireIncrement="5" 
    45              maxIdleTime="300"
    46              idleConnectionTestPeriod="60"
    47              automaticTestTable="Test"
    48              acquireRetryAttempts="30"
    49              breakAfterAcquireFailure="true"
    50              name="jdbc/BDbSource"
    51              user="B" 
    52              password="B" 
    53              factory="org.apache.naming.factory.BeanFactory" 
    54              type="com.mchange.v2.c3p0.ComboPooledDataSource" 
    55              jdbcUrl="jdbc:oracle:thin:@ip2:post2:DBname2" />
    56 
    57   </GlobalNamingResources>

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

     1 <!-- The contents of this file will be loaded for each web application -->
     2 <Context>
     3     <!-- Default set of monitored resources. If one of these changes, the    -->
     4     <!-- web application will be reloaded.                                   -->
     5     <WatchedResource>WEB-INF/web.xml</WatchedResource>
     6     <WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
     7     <!-- Uncomment this to disable session persistence across Tomcat restarts -->
     8     <!--
     9     <Manager pathname="" />
    10     -->
    11 
    12 <ResourceLink name="jdbc/ADbSource" global="jdbc/ADbSource" type="javax.sql.DataSource"/>
    13 <ResourceLink name="jdbc/BDbSource" global="jdbc/BDbSource" type="javax.sql.DataSource"/>
    14 </Context>

    ③、在项目中对配置的数据源进行引用

    1 adb.jndi.name=java:comp/env/jdbc/ADbSource
    2 bdb.jndi.name=java:comp/env/jdbc/BDbSource
    3 root.jndi.name=java:comp/env/jdbc/ADbSource
    4 null.jndi.name=java:comp/env/jdbc/dataSourceDB
  • 相关阅读:
    linux学习之linux的hostname修改详解《转》
    不想作死系列--win7远程linux桌面之vncserver
    不想作死系列---virtualbox最小化安装centos6.5
    基于支持向量机的车牌识别-- opencv2.4.7+vs2012环境搭建
    python文件的中文处理以及个人思路
    haskell学习笔记<1>--基本语法
    提醒
    C语言矩阵传递给函数的方法
    0x01数据结构——C语言实现(二叉查找树)
    0x01数据结构——C语言实现(二叉树)
  • 原文地址:https://www.cnblogs.com/wdpnodecodes/p/7820331.html
Copyright © 2020-2023  润新知