`
binyan17
  • 浏览: 203294 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

在Tomcat7中JNDI方式使用tomcat-jdbc连接池

阅读更多

 

在tomcat中,jndi方式默认使用的是tomcat-dbcp连接池,这个已经广受诟病,而tomcat-jdbc因其优异的性能,现正逐步取代dbcp,今天我们就讲讲在tomcat7中如何配置:

 

在作如下配置之前,请先将对应数据库的JDBC驱动包放到tomcat/lib 目录中,避免启动时找不到驱动.

 

1 修改tomcat/conf/context.xml文件,添加如下内容:

<?xml version='1.0' encoding='utf-8'?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<!-- The contents of this file will be loaded for each web application -->
<Context>

    <!-- Default set of monitored resources -->
    <WatchedResource>WEB-INF/web.xml</WatchedResource>

     
   <Resource name="jdbc/pdcourt"
      auth="Container"
      type="javax.sql.DataSource"
      factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
      testWhileIdle="true"
      testOnBorrow="true"
      testOnReturn="false"
      validationQuery="SELECT 1 from dual"
      validationInterval="3000"
      timeBetweenEvictionRunsMillis="3000"
      maxActive="300"
      minIdle="10"
      maxWait="10000"
      initialSize="10"
      removeAbandonedTimeout="60"
      removeAbandoned="true"
      logAbandoned="true"
      minEvictableIdleTimeMillis="30000"
      jmxEnabled="true"
      jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer"
      driverClassName="oracle.jdbc.OracleDriver"
      url="jdbc:oracle:thin:@127.0.0.1:1521:test"
      username="test" 
      password="test"/>
</Context>

 

2 在应用的web.xml文件中添加如下:

	<resource-ref>
		<!-- 描述信息 -->
		<description>Connection Pool</description>
		<!-- 数据源名字 和上面配置中数据源的名字一致 -->
		<res-ref-name>jdbc/test</res-ref-name>
		<!-- 数据源类型 -->
		<res-type>javax.sql.PooledConnection</res-type>
		<res-auth>Container</res-auth>
		<res-sharing-scope>Shareable</res-sharing-scope>
	</resource-ref>

 

3 如果是使用Spring,则修改原数据库连接池

	<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
		<property name="jndiName">
			<value>java:comp/env/jdbc/test</value>
		</property>
	</bean>

 

4 其它的使用方式可以在网上搜索,通过配置后,就可以把数据库连接池迁移到tomcat上管理

  当然,也可以把连接池配置到应用中.

 

 

参考:

http://kingxss.iteye.com/blog/1481872

http://www.cnblogs.com/lihuiyy/archive/2012/02/14/2351768.html

http://www.oschina.net/question/12_36910

分享到:
评论

相关推荐

    tomcat-jdbc数据源所需jar包tomcat-jdbc.jar+tomcat-juli.jar

    这个数据源是Tomcat内建的一种连接池,它在性能和内存管理上比标准的Java JDBC连接池更优秀,尤其适用于高并发的Web应用。 标题中提到的"tomcat-jdbc.jar"和"tomcat-juli.jar"是使用Tomcat-jdbc数据源所必需的两个...

    tomcat-jdbc-7.0.42.jar

    在Java Web开发中,数据库连接管理是至关重要的部分,而Tomcat JDBC连接池(也称为Tomcat JNDI DataSource Provider)则是一个高效、轻量级且功能丰富的连接池实现。这个连接池组件在Spring Boot框架中被广泛使用,...

    tomcat8 JNDI数据源加密

    TOMCAT8 JNDI对用户名和密码加密

    tomcat6+jndi+c3p0配置数据库连接池

    首先,C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,提供了对JDBC3规范和JDBC2的标准扩展的支持。使用C3P0能够有效地管理和重用数据库连接,避免频繁创建和销毁连接导致的性能损耗。 在Tomcat6中配置C3P...

    java-jdbc.rar_java tomcat jdbc_tomcat jdbc

    Tomcat中的JDBC连接池(通常称为Tomcat JDBC或Commons DBCP)支持多种不同的数据库,包括MySQL、Oracle、PostgreSQL等,这对于开发跨平台的应用程序非常有用。 在标签“java_tomcat_jdbc tomcat_jdbc”中,"tomcat_...

    Tomcat通过JNDI方式连接SqlServer数据库

    然后,我们可以在JSP页面中使用JNDI来连接数据库。 在本文中,我们将详细介绍如何使用Tomcat通过JNDI方式连接SqlServer数据库的步骤。 一、配置Tomcat 首先,我们需要安装Tomcat和SqlServer数据库。然后,我们...

    tomcat6.0 配置jndi

    在Tomcat6.0中配置JNDI,主要是为了实现应用中的数据源管理,使得多个应用可以共享一个数据库连接池,提高资源利用率和系统性能。 **一、JNDI的基本概念** JNDI提供了一个统一的接口,让开发者可以查找和绑定各种...

    Tomcat6配置连接池

    本文将详细介绍如何在Tomcat 6中配置数据库连接池,并通过实际案例进行演示。 #### 二、配置步骤详解 ##### 2.1 修改`server.xml`文件 首先,我们需要打开Tomcat安装目录下的`conf`文件夹,找到`server.xml`文件...

    tomcat6.0连接通过JNDI连接mysql实例

    我们需要在 `META-INF/context.xml` 文件中配置 JNDI 资源,并在 Java 代码中使用 `InitialContext` 对象来查找 JNDI 资源。同时,我们还需要在 `WEB-INF/web.xml` 文件中添加资源环境引用和资源引用,以便连接到 ...

    JOTM 分布式事务初探(JNDI,Tomcat 7 JDBC Pool连接池)

    NULL 博文链接:https://jackyin5918.iteye.com/blog/1922379

    tomcat配置jndi

    这种方式的好处是,数据源可以管理连接池,提高性能并简化数据库连接的管理。 4. **示例项目** `jnditest` 压缩包中的`jnditest`项目很可能包含了一个简单的Web应用程序,演示了如何在实际项目中配置和使用JNDI...

    Tomcat6.0配置JNDI数据源完整例子(5.5与此配置相同)

    在上述配置中,`name`属性定义了JNDI名称,`auth`指定认证方式,`type`是数据源类型,`maxActive`等属性控制连接池大小,`username`和`password`是数据库连接的凭证,`driverClassName`是数据库驱动类名,`url`是...

    Tomcat连接池配置

    **描述**: Tomcat连接池配置涉及到在Apache Tomcat服务器中设置数据源,以便高效地管理和复用数据库连接。这包括对Oracle和MSSQL Server这两种不同类型的数据库进行配置,并在Java应用程序中引用这些连接池。提供的...

    TOMCAT连接池

    三、配置Tomcat-jdbc连接池 1. 添加依赖:在你的项目中,需要添加Tomcat-jdbc的依赖库,通常在`pom.xml`(Maven)或`build.gradle`(Gradle)文件中添加。 ```xml &lt;!-- Maven --&gt; &lt;groupId&gt;org.apache.tomcat ...

    tomcat连接池的使用

    Tomcat连接池是Java应用程序中用于管理数据库连接的重要组件,它允许高效地重用数据库连接,从而提高系统性能并减少资源消耗。对于Java初学者来说,理解如何设置和使用Tomcat连接池是至关重要的。 首先,为了使用...

    tomcat配置JNDI数据源

    【描述】:“在Tomcat服务器上配置JNDI数据源,特别是通过DBCP连接池的方式” 【标签】:“tomcat,配置,JNDI数据源” 【内容】:配置JNDI数据源在Java Web应用程序中是一个重要的任务,它允许应用与数据库之间的...

Global site tag (gtag.js) - Google Analytics