Spring jndi连接数据库

Spring jndi连接数据库

JNDI 即Java命名目录接口 Java Naming Dictory Interface

Spring.xml配置文件

<bean name="dbsource1" class="org.springframework.jdbc.core.JdbcTemplate">
    <property name="jndi" value="java:comp/env/jdbc/db1"/>
</bean>
<bean name="dbsource2" class="org.springframework.jdbc.core.JdbcTemplate">
    <property name="jndi" value="java:comp/env/jdbc/db2"/>
</bean>

context.xml配置

​ 在tomcat中配置context.xml文件

<!--配置jndi : name 与 spring配置文件中对应,容器会根据name去加载对应的配置文件-->
<!--由容器进行授权及管理,指的用户名和密码是否可以在容器上生效-->
<!---->
<!--type: 此名称所代表的类型
    driverClassName: 数据库连接的驱动程序
    usrname: 数据库连接的用户名
    maxActive: 表示一个数据库在此服务器上能打开的最大连接数
    maxIdle: 表示数据库在此服务器上维持的最小连接数
    minIdle: 连接池最小空闲
    maxWait: 最大等待时间,单位为毫秒
    validationQuery: 测试链接的sql
    password="数据库的密码"
    testOnBorrow: 申请连接时执行validationQuery检测连接是否有效, 启用这个配置会降低性能
    testOnReturn: 归还连接时执行validationQuery检测连接是否有效,启用这个配置会降低性能
    testWhileIdle: 建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis, 
            执行validationQuery检测连接是否有效。
    timeBetweenEvictionRunsMillis: 间隔多久进行一次检测,检测哪些需要关闭的空闲连接
    minEvictableIdleTimeMillis: 连接在池中的最小生产时间
    removeAbandoned:  打开/关闭removeAbandoned功能
    removeAbandonedTimeout: 指定连接建立后的强制关闭时间,单位为秒
    logAbandoned: 闭abanded连接时输出错误日志,指定发生removeabandoned的时候,是否记录当前线程的堆栈信息到日志中 
    filters: 监控统计数据库(mergeStat)
    url: 数据库所在地址
    -->
<Resource name="jdbc/db1" auth="Container"

  type="javax.sql.DataSource"

  driverClassName="oracle.jdbc.OracleDriver"

  username="test"

  maxActive="20"

  minIdle="0"

  maxWait="60000"

  validationQuery = "select 1 from dual"

  password="test$2018"

  testOnBorrow="false"

  testOnReturn="false"

  testWhileIdle="true"

  timeBetweenEvictionRunsMillis="60000"

  minEvictableIdleTimeMillis="25200000"

  removeAbandoned="true"

  removeAbandonedTimeout="1800"

  logAbandoned="true"

  filters="mergeStat"

  url="jdbc:oracle:thin:@127.0.0.1:1521:oral"/>

参考

https://www.cnblogs.com/guanym/p/5411561.html

https://blog.csdn.net/u013960139/article/details/51830050

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值