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

Spring jndi连接数据库相关推荐

  1. 用JNDI连接数据库

    之前说到了利用Java中的Properties类读取properties配置文件,连接数据库,现在说另一种方法,他们的目的和作用都是一样的,都是为了提高代码的复用性,解决了更改数据库 时还要更改代码的 ...

  2. SpEL表达式注入、Spring JNDI注入

    一. SpEL表达式:(Spring Expression Language),即Spring表达式语言,是比JSP的EL更强大的一种表达式语言.SpEL有三种用法,一种是在注解@Value中:一种是 ...

  3. java jndi使用_Java项目中使用JNDI连接数据库

    因为写的大作业经常用到数据库连接 所以自己写了个数据库连接的类 package DB_Link_info;/* * 数据库链接信息 */public class DB_link_Info {publi ...

  4. java配置jndi连接数_JavaWeb:Tomcat下配置数据源(JNDI)连接数据库 | 学步园

    ---------------------------------------------------------------------------------------------------- ...

  5. spring boot连接数据库

    applicat.yml spring:datasource:username: rootpassword:url: jdbc:mysql://localhost:3306/test?useUnico ...

  6. Java Application 直接通过jndi连接数据库

    来源:http://www.ej38.com/showinfo/java-132636.html 使用jar包:  commons-pool-1.5.3.jar,tomcat-naming-commo ...

  7. JNDI(datasource)在tomcat,JBOSS下的spring+quartz配置

    由于项目中多个小应用(类似插件)需要使用数据库连接池,不能为每一个应用中配置连接池.故采用JNDI的模式进行配置. 我们使用的web服务器有tomcat和jboss两种.分别介绍其在这两种服务器下并且 ...

  8. 如何在Tomcat中设置JNDI数据库连接池-Spring教程示例

    在Spring和Tomcat中设置JNDI数据库连接池非常容易. Tomcat服务器文档提供了有关如何在Tomcat 5.6或7中设置连接池的足够信息.在这里,我们将结合使用Tomcat 7和Spri ...

  9. 使用Spring JDBC时遇到的Software caused connection abort: recv failed问题

    在使用Spring jdbc连接数据库时遇到一个头疼的问题:程序启动以后,如果长时间不访问调用,当再次调用时会报错: 引用 org.springframework.dao.DataAccessReso ...

最新文章

  1. 基本电路元件和特性(2)电容器和电容vs.电感器和电感
  2. Python编程基础:第五十五节 map函数Map
  3. java中多线程的创建方式一:
  4. NumPy Beginner's Guide 2e 带注释源码 五、处理 NumPy 矩阵和 ufunc
  5. 最大熵模型介绍及实现
  6. MYSQL获取自增ID的四种方法
  7. 【工具推荐】光影魔术手
  8. 苹果运营商中移动苹果互盼“在一起” 最快Q3推4G移动版iPhone
  9. VMWARE下UBUNTU扩展磁盘空间的办法
  10. PyQt在qrc文件中添加自定义字体并使用
  11. 淘宝客赚钱方式及怎么入门和推广引流详解
  12. GitHub简单入门
  13. BitTorrent协议分析一
  14. 解决使用shutil.rmtree无法删除文件夹的方案
  15. 操作系统 - Lightdm
  16. 从前后端分离到前后端整合的“退步”(一)项目结构
  17. jmeter与lr区别
  18. golang 将EBCDIC转成ASCII
  19. version magic ‘5.15.0 SMP mod_unload aarch64‘ should be ‘5.15.0-xilinx-v2022.2 SMP mod_unload aarch6
  20. Scala 之 Map 操作大全

热门文章

  1. Python3自带HTTP文件传输服务(局域网文件共享)
  2. 简易数字时钟软件详细制作过程
  3. Intellij idea 出现错误 error:java: 无效的源发行版: 11解决方法
  4. php5..6中文帮助,6.5. IDE integration
  5. MyEclipes 设置代码自动提示
  6. oracle tsn 数据库,【Oracle数据库恢复】ORA-00600[25027]错误解析
  7. 西安理工大学计算机研究生名单,西安理工大学2019年硕士研究生拟录取名单
  8. 移除apt源_apt提示处理归档 (--unpack)时出错的解决办法
  9. python包和目录有什么不同_python模块和包的区别
  10. 电脑温度检测软件哪个好_重装电脑,用哪个软件重装系统比较好?