jndi mysql数据库_Tomcat中配置mysql/oracle jndi数据库连接

开发使用的weblogic,使用的jndi数据源,不想改配置就学习了下在tomcat中配置jndi数据源

单个应用独享数据源

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

mysql版

name="db_mysql"

scope="Shareable"

type="javax.sql.DataSource"

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

url="jdbc:mysql://127.0.0.1:3306/test"

driverClassName ="com.mysql.jdbc.Driver"

username="root"

password="123456"

/>

oracle版

maxActive="2"

maxIdle="1"

maxWait="5000"

name="db_oracle"

username="username"

password="123456"

type="javax.sql.DataSource"

url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.45)(PORT=1521))(FAILOVER=on)(LOAD_BALANCE=on))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=数据库的SID)))"

/>

优点:简单

缺点:重用性差

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

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

maxActive="2"

maxIdle="1"

maxWait="5000"

name="db_oracle"

username="username"

password="123456"

type="javax.sql.DataSource"

url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.45)(PORT=1521))(FAILOVER=on)(LOAD_BALANCE=on))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=数据库的SID)))"

/>

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

优点:重用性,可控性

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

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

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

maxActive="2"

maxIdle="1"

maxWait="5000"

name="db_oracle"

username="username"

password="123456"

type="javax.sql.DataSource"

url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.45)(PORT=1521))(FAILOVER=on)(LOAD_BALANCE=on))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=数据库的SID)))"

/>

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

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

WEB-INF/web.xml

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

缺点:没有可控性

两个服务器做数据库负载均衡时配置

maxActive="2"

maxIdle="1"

maxWait="5000"

name="db_oracle"

username="username"

password="123456"

type="javax.sql.DataSource"

url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.46)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.45)(PORT=1521))(FAILOVER=on)(LOAD_BALANCE=on))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=数据库的SID)))" />

Spring对JNDI数据源的引用

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值