tomcat下的jndi的配置

简介:

 jndi(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。命名服务将名称和对象联系起来,使得我们可以用名称

访问对象。目录服务是一种命名服务,在这种服务里,对象不但有名称,还有属性。

 

 第一种:全局配置。

1)在tomcat的conf文件夹下的context.xml配置文件中加入:

 

 
  1. <Resource name="jndi/mybatis"  
  2.             auth="Container"  
  3.             type="javax.sql.DataSource"  
  4.             driverClassName="com.mysql.jdbc.Driver"  
  5.             url="jdbc:mysql://localhost:3306/appdb"  
  6.             username="root"  
  7.             password="123456"  
  8.             maxActive="20"  
  9.             maxIdle="10"  
  10.             maxWait="10000"/>    

2)在项目的web.xml中加入资源引用:

 
  1. <resource-ref> 
  2.   <description>JNDI DataSource</description> 
  3.   <res-ref-name>jndi/mybatis</res-ref-name> 
  4.   <res-type>javax.sql.DataSource</res-type> 
  5.   <res-auth>Container</res-auth> 
  6. </resource-ref> 

其中res-ref-name值要和context.xml的name值一致。

3)jndi测试方法:

 

 
  1. public void testJNDI() throws NamingException, SQLException{ 
  2.     Context ctx = new InitialContext(); 
  3.     DataSource ds = (DataSource) ctx.lookup("java:comp/env/jndi/mybatis"); 
  4.     Connection conn = ds.getConnection(); 
  5.     System.out.println(conn.isClosed()); 
  6.  

说明:我参考的是这篇博文

 

我上传个例子,下载地址:jndi_han

 

========================================================================

name:表示你的连接池的名称也就是你要访问连接池的地址

auth:是连接池管理权属性,Container表示容器管理

type:是对象的类型

driverClassName:是数据库驱动的名称

url:是数据库的地址

username:是登陆数据库的用户名

password:是登陆数据库的密码

 

maxIdle,最大空闲数,数据库连接的最大空闲时间。超过空闲时间,数据库连
接将被标记为不可用,然后被释放。设为0表示无限制。
MaxActive,连接池的最大数据库连接数。设为0表示无限制。
maxWait ,最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示
无限制。

*maxActive:最大连接数据库连接数,设 0 为没有限制 
*maxIdle:最大等待连接中的数量,设 0 为没有限制 
*maxWait:最大等待毫秒数, 单位为 ms, 超过时间会出错误信息

一般把maxActive设置成可能的并发量就行了

maxActive、maxIdle和maxWait参数:


maxActive是最大激活连接数,这里取值为20,表示同时最多有20个数据库连 
接。maxIdle是最大的空闲连接数,这里取值为20,表示即使没有数据库连接时依然可以保持20空闲的

连接,而不被清除,随时处于待命状态。MaxWait是最大等待秒钟数,这里取值-1,表示无限等待,直到

超时为止,也可取值9000,表示9秒后超时。

 

maxWait=5000
maxActive=50
maxIdle=5

 

     本文转自韩立伟 51CTO博客,原文链接:http://blog.51cto.com/hanchaohan/1181214,如需转载请自行联系原作者







相关文章
|
1月前
|
XML 应用服务中间件 Apache
Tomcat AJP连接器配置secretRequired=“true“,但是属性secret确实空或者空字符串,这样的组合是无效的。
Tomcat AJP连接器配置secretRequired=“true“,但是属性secret确实空或者空字符串,这样的组合是无效的。
|
4月前
|
Java 应用服务中间件 Maven
Maven - 两种Tomcat插件的配置
Maven - 两种Tomcat插件的配置
137 0
|
5月前
|
XML 应用服务中间件 数据格式
windows下Tomcat8.0解压版安装并配置环境变量
windows下Tomcat8.0解压版安装并配置环境变量
96 0
|
17天前
|
前端开发 Java 应用服务中间件
Springboot对MVC、tomcat扩展配置
Springboot对MVC、tomcat扩展配置
|
4月前
|
Java 应用服务中间件 容器
SpringBoot配置外部Tomcat并打war包
SpringBoot配置外部Tomcat并打war包
70 0
|
2天前
|
IDE JavaScript Java
如何配置tomcat
【4月更文挑战第15天】如何配置tomcat
11 2
|
10天前
|
运维 Java 应用服务中间件
Tomcat详解(七)——Tomcat使用https配置实战
Tomcat详解(七)——Tomcat使用https配置实战
24 4
|
4月前
|
Java 应用服务中间件
SpringBoot 项目war包部署 配置外置tomcat方法
SpringBoot 项目war包部署 配置外置tomcat方法
71 0
|
25天前
|
Java 应用服务中间件
Springboot启动的时候初始化的线程池默认配置tomcat
Springboot启动的时候初始化的线程池默认配置tomcat
13 1
|
3月前
|
应用服务中间件 Windows
Tomcat安装和配置
Tomcat安装和配置
32 0