1.在工程目录的META-INF 下创建context.xml文件,并设置一下内容:
<?xml version="1.0" encoding="UTF-8"?>
<Context debug= "99" reloadable="true" crossContext="true" verbosity="debug">
<Resource name="jdbc/mysql"
auth="Container" type="javax.sql.DataSource"
password="eric"
driverClassName="com.mysql.jdbc.Driver"
maxIdle="2" maxWait="5000"
username="root"
url="jdbc:mysql://localhost:3306/test?autoReconnect=true"
maxActive="4"/>
</Context>
测试代码:
DataSource ds = null;
if (ds == null) {
try {
Context initContext = new InitialContext();
if (initContext == null)
System.out.println("............");
Context envContext = (Context) initContext
.lookup("java:comp/env");
ds = (DataSource) envContext.lookup("jdbc/mysql");
System.out.println(ds);
} catch (NamingException e) {
e.printStackTrace();
}
}
2.在tomcat/config/server.xml中添加一下代码(在host)之间
<Context path="/jndi" docBase="D:\workspace\jndi\WebRoot" debug="0" reloadable="true" crossContext="true"/>
<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_quality_log." suffix=".txt" timestamp="true"/>
<Resource
name="jdbc/test"
type="javax.sql.DataSource"
password="eric"
driverClassName="com.mysql.jdbc.Driver"
maxIdle="2"
maxWait="5000"
username="root"
url="mysql://localhost:3306/test"
maxActive="4" />
<ResourceParams name="jdbc/test">
<parameter>
<name>removeAbandoned</name>
<!-- Abandoned DB connections are removed and recycled -->
<value>true</value>
</parameter>
<parameter>
<name>removeAbandonedTimeout</name>
<!-- Use the removeAbandonedTimeout parameter to set the number of seconds a DB connection has been idle before it is considered abandoned. -->
<value>60</value>
</parameter>
<parameter>
<name>logAbandoned</name>
<!-- Log a stack trace of the code which abandoned -->
<value>false</value>
</parameter>
<parameter>
<name>factory</name>
<!--DBCP Basic Datasource Factory -->
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
</ResourceParams>
并在工程目录的web.xml中添加一下代码
<resource-ref>
<res-ref-name>jdbc/test</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
3.在\conf\Catalina\localhost目录下创建跟工程同名的xml文件,并在web.xml中添加一下代码
<resource-ref>
<res-ref-name>jdbc/test</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
另外,看到网上有如下关系tomcat连接池的说法:
1.用户释放连接后,连接被回收到连接池,这个连接仍然是可用的。
如果一个连接等待了一段时间(连接池的最大空闲时间,可设置)仍然没有
人来请求连接,那么它将被彻底释放。当然,如果连接池中的连接个数已经
等于连接池的最小连接数(可设置),那么它不会被释放。
2.以tomcat连接池为例,tomcat启动后,假设我设置的最小连接数为5,那么这时候(此Tomcat下的程序没有启动)Tomcat是否和后台地数据库建立5条连线(session)呢?答案:不是.
分享到:
相关推荐
在Tomcat中,可以通过JNDI配置数据源,使得Web应用能够通过JNDI名称来查找和访问数据源。在本文档中,JNDI名称设置为“jdbc/test”。 4. Servlet编程: Servlet是一种Java类,用于扩展服务器的功能,处理客户端请求...
本文将详细介绍如何在Tomcat 6环境中配置MySQL数据源的两种常见方法,并提供具体的配置示例。 #### 二、配置方法一:直接在server.xml文件中定义数据源 **1. 配置步骤** - **编辑server.xml文件**: - 打开`%...
本文将详细讲解在Tomcat中配置数据库连接池的几种常见方法,帮助开发者实现高效、稳定的数据库访问。 一、Apache Commons DBCP Apache Commons DBCP是Apache组织提供的一款开源数据库连接池组件,它基于Jakarta-...
本文将详细介绍如何在Tomcat服务器中配置数据源,并结合实际案例深入探讨其背后的原理。 #### 二、JDBC概述 JDBC是Java平台上的一种用于访问关系型数据库的标准API。它提供了一组用于与数据库交互的抽象类和接口,...
本文将详细介绍如何在Tomcat中配置数据源,以便能够高效地管理数据库连接。 #### 二、JNDI 概述 JNDI 是 Java 命名和目录接口 (Java Naming and Directory Interface) 的缩写,它提供了一套标准的API,用于查找和...
4. **连接参数**:配置数据源时,需要提供数据库URL、用户名、密码、驱动类名等信息。例如,对于MySQL,驱动类名可能是`com.mysql.jdbc.Driver`,数据库URL可能是`jdbc:mysql://localhost:3306/mydatabase`。 5. **...
### Tomcat配置MySQL连接池详解 #### 一、前言 在Java Web开发中,Tomcat作为一款广泛使用的轻量级应用服务器,被大量应用于Web应用程序的部署与运行环境中。而数据库连接池作为提高数据库访问效率的重要手段,在...
在Tomcat服务器下配置数据源连接数据库,主要涉及到以下几个技术知识点: 1. **Tomcat配置文件**:Tomcat作为Servlet容器,其配置主要位于conf目录下的server.xml文件以及每个Web应用的META-INF/context.xml文件中...
本教程将详细讲解如何在Tomcat 6.0中配置数据源(DBCP)以及如何利用JNDI(Java Naming and Directory Interface)进行服务查找。首先,我们需要了解这两个概念的基础知识。 DBCP(Database Connection Pool)是...
1. **创建 `EmbeddedServletContainerFactory` 实例**:该实例用于配置 Tomcat 的连接器,并添加安全约束。 ```java @Bean public EmbeddedServletContainerFactory servletContainer() { ...
1. **服务器配置(server.xml)**:这是Tomcat的主要配置文件,定义了服务器的端口、数据源、虚拟主机等信息。 2. **Context配置**:在`conf/Catalina/localhost`目录下创建XML文件,或者在`webapps`目录下的应用...
Tomcat配置SQL数据库涉及的关键知识点包括以下几个方面: 1. **Tomcat**:Tomcat是一款开源的Java Servlet容器,主要用于运行Java Web应用程序。在本配置中,版本为Tomcat 5.0.28。它遵循Java EE规范,支持Servlet...
配置数据库连接池在Tomcat中有两种方式:局部数据源和全局数据源。 1. **局部数据源**:适用于只在特定Web工程中使用的场景。在Web工程的`META-INF`目录下创建`context.xml`文件,配置数据源信息,包括JDBC名、认证...
Spring Boot默认支持几种流行的数据库连接池,如HikariCP、Druid、Tomcat JDBC等。这些连接池都提供了高效的连接管理和资源优化。HikariCP以其高性能和低内存占用被广泛采用,而Druid则以其丰富的监控功能受到青睐。...
部署Java Web应用到Tomcat有几种方式:一是将WAR文件(Web应用的归档文件)直接放在Tomcat的webapps目录下,Tomcat会自动解压并部署;二是通过管理工具如Tomcat Manager进行在线部署;三是修改`conf/server.xml`中的...
配置数据源的步骤通常包括以下几步: 1. **选择连接池**:根据应用的需求和性能要求,选择合适的连接池实现。 2. **添加JDBC驱动**:确保你的项目类路径包含对应数据库的JDBC驱动JAR。 3. **配置数据源**:在应用...
DataSource,即数据源,是Java中用于管理数据库连接的对象,它提供了一种更加高效且方便的方式来管理和获取数据库连接。相比于传统的DriverManager方式,DataSource有以下优点: 1. **无需硬编码数据库驱动**:...
1. **配置数据源**:在Tomcat的`conf/server.xml`文件中,添加或修改`<Resource>`标签,定义数据源。例如: ``` type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://...
本文将详细介绍几种常用的数据源解决方案及其配置方法,包括JNDI方式创建`DataSource`、Apache提供的简单连接池创建数据源、C3P0方式创建数据源、Proxool方式创建数据源以及BoneCP方式创建数据源。 #### JNDI 方式...