今天还解决了另外一个问题,就是tomcat在配置了连接池之后,获取数据源时报
org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '
' for connect URL 'null', cause: No suitable driver
这个错误,在网上查阅了不少资料,终于找到答案了。
先看一下tomcat5.0默认的连接池配置代码:
<Context path="" docBase="." debug="0" reloadable="true" crossContext="true">
<Resource name="jndi名称" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jndi名称">
<parameter> <name>factory</name> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> </parameter>
<parameter> <name>driverClassName</name> <value>驱动名称</value> </parameter>
<parameter> <name>url</name> <value>数据库url</value> </parameter>
<parameter> <name>username</name> <value>用户名</value> </parameter>
<parameter> <name>password</name> <value>密码</value> </parameter>
<parameter> <name>maxActive</name> <value>5000</value> </parameter>
<parameter> <name>maxIdle</name> <value>10</value> </parameter>
<parameter> <name>maxWait</name> <value>-1</value> </parameter>
<parameter> <name>removeAbandoned</name><value>true</value> </parameter>
<parameter> <name>removeAbandonedTimeout</name> <value>60</value> </parameter>
</ResourceParams>
</Context>
按照这样的一个模板配置了连接池之后,并且把相应的数据库驱动放入tomcat_home下的common\lib\文件夹下,启动tomcat,获取数据源时会报了
org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '
' for connect URL 'null', cause: No suitable driver
这个错误。
原因是根据这样的一个连接池配置,tomcat找不到对应的驱动。那现在就要怎么想办法让tomcat找到驱动程序。
有网友说把驱动放入classPath中,这个方法我没有验证,但感觉不好。
还有一个办法就是在连接池配置中指定连接池应用的项目。即:
<Context path="/你的项目" docBase="你的项目" debug="0" reloadable="true" crossContext="true">
前提是你的host设置为
<Host name="localhost" debug="1" appBase="/webapps"
unpackWARs="true" autoDeploy="false">
然后把数据库驱动放入你的项目的lib目录。
或者你也可以这么设置
<Host name="localhost" debug="1" appBase="/webapps/你的项目"
unpackWARs="true" autoDeploy="false">
<Context path" docBase="." debug="0" reloadable="true" crossContext="true">
这个解决办法虽然比第一解决办法好一点,但是如果一个tomcat下跑好几个项目怎么办?配置多份
<Context path="/你的项目" docBase="你的项目" debug="0" reloadable="true" crossContext="true">
???
记录一下我的配置代码:
server.xml配置
<Context path="/xzzf" docBase="xzzf" debug="1" reloadable="flase" crossContext="true">
<Resource name="jdbc/devDS" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/devDS">
<parameter> <name>factory</name> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> </parameter>
<parameter> <name>driverClassName</name> <value>oracle.jdbc.driver.OracleDriver</value> </parameter>
<parameter> <name>url</name> <value>jdbc:oracle:thin:@192.168.0.38:1521:orcl</value> </parameter>
<parameter> <name>username</name> <value>xzzf</value> </parameter>
<parameter> <name>password</name> <value>xzzf</value> </parameter>
<parameter> <name>maxActive</name> <value>100</value> </parameter>
<parameter> <name>maxIdle</name> <value>30</value> </parameter>
<parameter> <name>maxWait</name> <value>5000</value> </parameter>
<parameter> <name>removeAbandoned</name><value>true</value> </parameter>
<parameter> <name>removeAbandonedTimeout</name> <value>180</value> </parameter>
</ResourceParams>
</Context>
web项目中的web.xml配置
<resource-ref>
<res-ref-name>jdbc/devDS</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
hibernate.xml配置
<property name="connection.datasource">java:comp/env/jdbc/devDS</property>
分享到:
相关推荐
Tomcat 连接池配置详解 Tomcat 连接池配置是 Web 应用程序中一个非常重要的组件,它负责管理和维护数据库连接,确保数据访问的高速和安全性。本文将详细介绍 Tomcat 连接池配置的步骤和原理,帮助读者快速掌握 ...
**标题**: Tomcat连接池配置 **描述**: Tomcat连接池配置涉及到在Apache Tomcat服务器中设置数据源,以便高效地管理和复用数据库连接。这包括对Oracle和MSSQL Server这两种不同类型的数据库进行配置,并在Java应用...
二、Tomcat连接池配置 1. 添加依赖 在Maven项目中,需要在pom.xml文件中添加HikariCP的依赖: ```xml <groupId>com.zaxxer</groupId> <artifactId>HikariCP 版本号 ``` 2. 配置context.xml 在Tomcat的...
总结来说,配置Tomcat连接池是提升Web应用数据库访问性能的重要步骤。通过合理配置连接池参数,可以有效管理数据库连接,避免资源浪费,提升系统整体性能。同时,持续监控和优化连接池设置是保持系统高效运行的关键...
总结来说,配置Tomcat连接池是提升Web应用性能的关键步骤,它涉及到管理界面的操作和配置文件的修改。理解这些参数的意义并根据实际情况进行调整,能够帮助你更好地管理和优化你的数据库连接,提升应用的整体性能。
Tomcat 连接池配置需要在 Maven 项目中添加 Tomcat JDBC 依赖项,并在 application.properties 文件中配置数据库连接信息。下面是 Tomcat 连接池的配置示例: ```xml <!-- Tomcat JDBC 依赖项 --> <groupId>org....
-- 新增的数据库连接池配置 --> driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@127.0.0.1:1521:ora" maxActive="100" maxIdle="30" maxWait="10000" validationQuery="select * ...
总结,Tomcat数据连接池的配置涉及到选择合适的连接池实现、添加依赖、配置Context文件以及在应用中使用数据源。正确配置和管理数据连接池能显著提升Web应用的性能,同时降低资源消耗,是每个Java开发者必备的技能之...
MySQL和Tomcat是Java Web开发中常用的数据库管理系统和应用服务器,它们之间的连接池配置是确保高效数据访问的关键。本文将详细介绍如何配置MySQL与Tomcat的连接池,以便在Java应用程序中实现优化的数据交互。 首先...
### 二、Tomcat连接池配置详解 #### 1. 修改server.xml文件 Tomcat的server.xml文件位于conf目录下,是Tomcat的核心配置文件,控制着Tomcat的启动、停止以及主要服务的配置。在该文件中,我们可以通过添加`...
本文将深入探讨Tomcat连接池的配置,包括全局与局部配置的区别,以及可能出现的错误类型,并提供相关的测试源码。 一、Tomcat连接池介绍 Tomcat内建了两种连接池实现:Apache Commons DBCP(Database Connection ...
《TOMCAT数据库连接池配置详解》 TOMCAT数据库连接池配置是Java Web开发中不可或缺的一环,它能够有效地管理和优化数据库连接,提高系统性能。以下是对TOMCAT数据库连接池配置的详细说明。 首先,你需要下载TOMCAT...
### Tomcat连接池数据库密码加密解密方法详解 在企业级应用中,数据库的安全性尤为重要。其中,数据库连接池作为应用程序与数据库之间的桥梁,扮演着关键角色。然而,当数据库的用户名和密码直接硬编码在配置文件...
### Tomcat服务器配置及数据库连接池配置详解 #### 一、Tomcat服务器配置与环境搭建 ##### 1. JDK安装与配置 - **系统环境**:Windows 2003 Server SP3。 - **JDK路径设置**: - `JAVA_HOME` 设置为 `C:\JDK`。 ...
### Tomcat连接池配置详解 #### 一、引言 Tomcat是一款开源的Servlet容器,它实现了Servlet和JavaServer Pages (JSP)技术规范,并提供了作为Web服务器的一些特性,但其主要功能是作为应用服务器使用。为了提高Web...
### Tomcat6连接池配置详解(自动重连) #### 一、引言 在现代Web应用开发中,数据库连接管理是非常重要的一环。为了提高应用性能并确保资源的有效利用,通常采用连接池技术来管理数据库连接。Apache Tomcat作为一...
### Tomcat连接池配置详解 #### 一、引言 在现代Web应用开发中,数据库连接池技术的应用极为广泛。合理地配置连接池可以显著提高应用程序的性能与稳定性。本文将详细介绍如何在Tomcat服务器中配置数据库连接池,并...