`
qmug
  • 浏览: 201460 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Mysql+tomcat连接池的配置实例

    博客分类:
  • J2EE
阅读更多
特别感谢:robustwang


在Java Web开发中都要与数据库打交道,为了不频繁地打开和关闭数据库,以减少数据库操作负荷,可使数据库在开发过程中保持打开状态,在这里我们采用配置数据源的方式(JNDI),而不是传统地JDBC方式。下面就针对常规型的MySQL5.0.15和Tomcat6.0的数据源的基本配置进行简单的介绍:
首先声明,如果数据源没有配置好的话,在开发过程中会抛出诸如下列异常等:
1、org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
2、Caused by: java.sql.SQLException: No suitable driver
3、Name jdbc is not bound in this context
现在开始讲下如何配置好数据源同时也是解决上述异常的办法:
方案一:
步骤一、在Tomcat6.0解压目录conf下找到context.xml,在其中的<Context></Context> 中加入如下代码(要根据自己的情况稍加修改): <Resource name="jdbc/myznt" auth="Container" type="javax.sql.DataSource" password="localhost" username="root" driverClassName="org.gjt.mm.mysql.Driver" url="jdbc:mysql://localhost/myznt" maxActive="100" maxIdle="30" maxWait="5000"/>
步骤二、在工程应用中/WEB-INF/下的web.xml中加入如下代码(要根据自己的情况稍加修改):
<resource-ref>
<description>MySQL DataSource</description>
<res-ref-name>jdbc/myznt</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
步骤三、把MySQL-Connector-java-3.0.12-bin.jar(可换更高版本)加到Tomcat安装目录中的lib目录下和工程中的lib目录下。
通过这三步,一个基本的数据源就配置成功了!
方案二
步骤一、在Tomcat6.0解压目录conf下找到server.xml,在其中的<GlobalNamingResources></GlobalNamingResources>中加入如下代码(要根据自己的情况稍加修改):
<Resource name="jdbc/myznt" auth="Container" type="javax.sql.DataSource" password="localhost" username="root" driverClassName="org.gjt.mm.mysql.Driver" url="jdbc:mysql://localhost/myznt" maxActive="100" maxIdle="30" maxWait="5000"/>
步骤二、在Tomcat6.0解压目录conf下找到context.xml,在其中的<Context></Context>中加入并修改成如下代码(要根据自己的情况稍加修改):
<Context path="/znt" debug="1" reloadable="true" docBase="E:\EclipseWorkPlace\MyZNT\WebRoot">
<ResourceLink global="jdbc/myznt" name="jdbc/myznt" type="javax.sql.Datasource"/>
................<!--此间可能有系统其它自配的内容,可不管-->
</Context>
步骤三、在工程中/WEB-INF/下的web.xml中加入如下代码(要根据自己的情况稍加修改):
<resource-ref>
<description>MySQL DataSource</description>
<res-ref-name>jdbc/myznt</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
步骤四、把MySQL-Connector-java-3.0.12-bin.jar(可换更高版本)加到Tomcat安装目录中的lib目录下和工程中的lib目录下。
通过以上四步就好了!
方案三(具有不稳定性,慎用)
步骤一、在Tomcat6.0解压目录conf下找到server.xml,在其中的<Host></Host>中加入如下代码(要根据自己的情况稍加修改):
<Context path="/znt" docBase="E:\EclipseWorkPlace\MyZNT\WebRoot"
debug="5" reloadable="true" crossContext="true">

<Logger className="org.apache.catalina.logger.FileLogger"
prefix="localhost_MysqlTest_log." suffix=".txt"
timestamp="true"/>
<Resource name="jdbc/myznt" auth="Container" type="javax.sql.DataSource" password="localhost" username="root" driverClassName="org.gjt.mm.mysql.Driver" url="jdbc:mysql://localhost/myznt" maxActive="100" maxIdle="30" maxWait="5000"/>
</Context>
步骤二、在工程中/WEB-INF/下的web.xml中加入如下代码(要根据自己的情况稍加修改):
<resource-ref>
<description>MySQL DataSource</description>
<res-ref-name>jdbc/myznt</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
步骤三、把MySQL-Connector-java-3.0.12-bin.jar(可换更高版本)加到Tomcat安装目录中的lib目录下和工程中的lib目录下。
通过以上三步,大部分时候还是起作用的,但有时会出现异常,因此不建议使用。
以上几种方案在实践中经受了测试,方案一和二比较稳定,方案三最好别用,同时只是进行了大致地归纳,其中的哪些地方没有必要或哪里欠妥还没有去测试,望读者进行批评指正。
分享到:
评论
1 楼 yshuaiwen 2010-04-02  
上面的方法都不怎么好,太麻烦,而且都需要改tomcat的xml文件,而且每次都有部署了才可以

下面是一个我认为很好的方法,也需要部署
1、建立一个context.xml文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
  <Resource
    name="jdbc/dbpool" <!--这个名字自己取,用来lookup-->
    type="javax.sql.DataSource"
    password="123"
    driverClassName="org.gjt.mm.mysql.Driver"
    maxIdle="2"
    maxWait="5000"
    username="yangzw"
    url="jdbc:mysql://localhost:3306/yangzw"
    maxActive="4"/>
  <WatchedResource>WEB-INF/web.xml</WatchedResource>
</Context>

2、把这个文件放在web工程的META-INF目录下,同时把MySQL-Connector-java-3.0.12-bin.jar(可换更高版本)
加到Tomcat安装目录中的lib目录下和工程中的lib目录下就OK了

相关推荐

    Spirng+SpringMVC+Maven+Mybatis+MySQL+tomcat实例

    在本实例中,Spring会管理应用的bean,包括数据库连接池、事务管理器以及业务层和服务层的对象。 SpringMVC是Spring框架的一部分,用于处理Web请求。它遵循模型-视图-控制器(MVC)设计模式,负责接收HTTP请求,...

    根据官方网站Tomcat-Mysql连接池配置实例.rar

    根据Tomcat官方网站做的Tomcat-Mysql连接池配置实例。里面有用到的所有的包,还有context.xml,web.xml,test.jsp等。 mysql-connector-java-5.1.8-bin.jar 放到D:\Program Files\apache-tomcat-6.0.16\lib下,我用的...

    tomcat连接池mysql多种配置

    一、C3P0连接池配置 C3P0是一款开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。以下是配置C3P0连接池的步骤: 1. 添加依赖:在项目的pom.xml文件中添加C3P0的Maven依赖。 2. 创建...

    Tomcat5 连接池的配置 代码实例

    在Java Web开发中,Tomcat是一个广泛使用的开源应用服务器,主要负责处理Servlet和JSP。在高并发场景下,为了优化...理解并熟练掌握连接池配置对于Java Web开发者来说至关重要,因为它直接影响到应用的性能和稳定性。

    Tomcat5.5连接池配置

    ### Tomcat5.5连接池配置详解 #### 一、引言 在现代软件开发过程中,数据库连接管理是一项至关重要的任务。为了提高系统的性能和稳定性,合理地管理和复用数据库连接资源是必不可少的。Apache Tomcat 作为一种广泛...

    mysql+连接池+JavaBean实现用户注册登陆系统

    * 编号 PRODUCT_NAME VARCHAR(50) 名称 PRICE FLOAT 价格 DESCRIPTION VARCHAR(200) 描述 &lt;br&gt;我的Tomcat 安装目录是:D:\Tomcat5 &lt;br&gt; 连接池配置: 请查看文件:WebRoot.xml 和 web.xml...

    tomcat 数据库连接池配置的jar包

    通过这种方式,Tomcat连接池能够高效地管理数据库连接,避免了频繁创建和关闭连接的开销,提高了应用的性能和稳定性。同时,`BasicDataSource`提供的配置选项让我们可以根据实际需求调整连接池的大小和行为,进一步...

    JIRA+MYSQL配置

    此外,需要调整数据库连接池的相关设置,比如最大活跃连接数(maxActive)、验证查询语句(validationQuery)等。 6. 将MYSQL JDBC驱动包mysql-connector-java-版本号-bin.jar复制到JIRA安装目录下的/common/lib...

    java筑基(基础)面试专题系列(一):Tomcat+Mysql+设计模式.rar

    此外,理解线程池、连接池的概念以及如何优化Tomcat的性能也是关键。 接下来是MySQL,世界上最流行的开源关系型数据库管理系统之一。MySQL的使用涉及到SQL语言的基本操作,如SELECT、INSERT、UPDATE和DELETE,以及...

    nginx+tomcat+redis+mysq集群部署方案.docx

    安装MySQL数据库,创建所需的数据表,配置连接池,设置访问权限,确保只允许授权的Tomcat实例访问。 总结,这个集群部署方案涵盖了从基础软件安装、配置到整体架构设计的全过程,旨在构建一个高效、稳定、可扩展的...

    图书管理系统jsp+mysql

    6. **连接池管理**:如C3P0或HikariCP,用于优化数据库连接的创建和释放,提高系统性能。 7. **JDBC(Java Database Connectivity)**:Java访问数据库的标准接口,用于建立、配置和管理数据库连接。 8. **安全考虑*...

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

    Tomcat 6.0 中通过 JNDI 连接 MySQL 实例需要进行详细的配置和设置。本文将对 Tomcat 6.0 中的 JNDI 连接 MySQL 实例进行详细的介绍和解释。 配置 JNDI 资源 在 Tomcat 6.0 中,需要在 `META-INF/context.xml` ...

    基于Javaweb+Tomcat+MySQL的大学生公寓管理系统+sql文件.zip

    此外,连接池管理(如C3P0、DBCP、HikariCP)也是JavaWeb应用中数据库操作的重要环节。 6. **MVC模式**:模型-视图-控制器模式是JavaWeb开发中常见的设计模式,有助于解耦应用程序的不同组件,提高代码的可维护性和...

    TOMCAT6.0配置数据库连接池

    Tomcat作为一款广泛使用的Java应用服务器,提供了灵活的数据库连接池配置选项。本文主要介绍如何在Tomcat 6.0中配置数据库连接池。 **配置文件** 在Tomcat 5中,数据库连接池的配置主要通过`server.xml`文件或`conf...

    DbUtil和tomcat数据源配置实例

    下面将详细讲解`DbUtil`和Tomcat数据源的配置实例。 首先,我们来看`DbUtil`。`DbUtil`通常包含一个数据库连接池,它能够预先创建一定数量的数据库连接并存储在池中,当应用需要连接时,可以从池中获取,用完后归还...

    tomcat5.5.X域名转向和连接池配置的server.xml文件

    ### 连接池配置 连接池是管理数据库连接的一种机制,可以有效地提高应用性能。在Tomcat 5.5.x中,通常使用Catalina的内置连接池实现,即`Commons DBCP`。配置连接池需要在`server.xml`的`GlobalNamingResources`...

    各个web服务器安装文档,及连接池的配置

    连接池配置涉及到的主要是DataSource,例如在server.xml文件中定义数据源,设置最大连接数、最小连接数、超时时间等参数,确保高效利用数据库资源。 接着是Oracle的WebLogic Server,这是一款企业级的Java应用...

    mysql数据库连接池配置教程

    MySQL数据库连接池配置教程 在Java应用程序中,为了提高数据库操作的效率和资源管理,通常会使用数据库连接池。数据库连接池允许程序在需要时获取数据库连接,使用完毕后归还,而不是每次都需要新建和关闭连接。这...

    dbcp连接池和配置文件

    3. 初始化连接池:在Java代码中读取配置,创建BasicDataSource实例,并设置配置信息。 4. 获取和归还连接:通过`BasicDataSource.getConnection()`获取连接,完成操作后调用`Connection.close()`,实际上连接并未...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    8.4 jdbc数据源和连接池 299 8.5 mysql对中文的处理 302 8.6 小结 302 第9章 会话跟踪 303 9.1 用于会话跟踪的技术 303 9.1.1 ssl会话 304 9.1.2 cookies 304 9.1.3 url重写 305 9.2 java servlet api的会话...

Global site tag (gtag.js) - Google Analytics