tomcat6的数据源配置,如果不使用SSH框架的话,数据源需要自己来配置,配置方式有两种,
一是在server.xml中:
<GlobalNamingResource>标签中增加数据源的配置: <Resource auth="Container" name="jdbc/italk" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/italk?useUnicode=true&characterEncoding=gbk" username="root" password="geeksun" maxIdle="50" maxActive="100" maxWait="5000" />
参数说明:
path: 自己应用的路径(一般为相对路径),在webapps目录下;
docBase: 应用的名称和上面相同;
driverClassName: 应用所要的驱动名;
url: 连接数据库的地址;
username: 登陆数据库要使用的用户名;
password: 登陆数据库要用的密码;
name: 引用上下文(context)的JNDI名,自己随便设;
type: 引用资源的类型;
maxActive: 每次连接数据库的最大数;
maxIdle: 每次连接数据库的等待数;
maxWait: 每次阻塞的最大延迟时间(毫秒);
<Host>标签中增加工程应用的部署和引用数据源:
<Context path="/notebook" reloadable="true" docBase="D:\workspace\note2\WebRoot" >
<ResourceLink global="jdbc/note2" name="jdbc/note2" type="javax.sql.DataSource"/>
</Context>
二是在/conf/Catalina/localhost/project.xml中:
<Context docBase="D:\workspace\bird\WebRoot" path="/italk" reloadable="true" cookies="true" crossContext="true" privileged="true" antiResourceLocking="false" antiJARLocking="false"> <Resource auth="Container" name="jdbc/italk" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/italk?useUnicode=true&characterEncoding=gbk" username="root" password="geeksun" maxIdle="50" maxActive="100" maxWait="5000" /> </Context>
第一种是全局数据源,第二种是局部数据源,这两中配置方式的区别 :第一种有<ResourceLink global="jdbc/italk" name="jdbc/italk" type="javax.sql.DataSource"/>,这是引用资源链接的属性,第二种则直接在<context>中配置,不用写这样的资源引用。
在tomcat中数据源配置后,在project的配置文件web.xml中也要加上
<resource-ref> <description>DB Connection</description> <res-ref-name>jdbc/italk</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>
这段是对使用外部的数据源方案的引用,指出了引用的数据源的名称,根据JNDI机制,来找到tomcat中配置的数据源。
注意 :tomcat默认使用的数据源连接池是dbcp,所以需要把dbcp.jar拷贝到project的bin路径下,增加到project的classpath中,在tomcat的lib目录下增加mysql驱动mysql-connector-java-5.1.10-bin.jar,因为tomcat中创建连接池时需要连接mysql的驱动类。
三是使用c3p0连接池:
本例使用场景在spring的数据库配置文件中:
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass" value="com.mysql.jdbc.Driver" /> <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/italk?useUnicode=true&characterEncoding=gbk" /> <property name="user" value="root" /> <property name="password" value="" /> <!--连接池中保留的最小连接数。Default: 3 --> <property name="minPoolSize" value="10" /> <!--连接池中保留的最大连接数。Default: 15 --> <property name="maxPoolSize" value="25" /> <!--初始化时获取三个连接,取值应在minPoolSize与maxPoolSize之间。Default: 3 --> <property name="initialPoolSize" value="10" /> <!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 --> <property name="maxIdleTime" value="60" /> <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 --> <property name="acquireIncrement" value="3" /> <!--定义在从数据库获取新连接失败后重复尝试的次数。Default: 30 --> <property name="acquireRetryAttempts" value="30" /> <!--两次连接中间隔时间,单位毫秒。Default: 1000 --> <property name="acquireRetryDelay">1000</property> <!--连接关闭时默认将所有未提交的操作回滚。Default: false --> <property name="autoCommitOnClose">false</property> <!--JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。 如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0--> <property name="maxStatements" value="0" /> <!--每60秒检查所有连接池中的空闲连接--> <property name="idleConnectionTestPeriod" value="60" /> <!--maxStatementsPerConnection定义了连接池内单个连接所拥有的最大缓存statements数。Default: 0 --> <property name="maxStatementsPerConnection">0</property> <!--因性能消耗大请只在需要的时候使用它。如果设为true那么在每个connection提交的时候都将校验其有效性。建议使用idleConnectionTestPeriod或automaticTestTable 等方法来提升连接测试的性能。Default: false --> <property name="testConnectionOnCheckout">false</property> <!--如果设为true那么在取得连接的同时将校验连接的有效性。Default: false --> <property name="testConnectionOnCheckin">true</property> </bean>
使用c3p0需要c3p0.jar。
四使用dbcp:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" scope="singleton"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost/italk?useUnicode=true&characterEncoding=gbk" /> <property name="username" value="root" /> <property name="password" value="" /> <property name="maxActive" value="100" /> <property name="maxIdle" value="30" /> <property name="maxWait" value="3000" /> </bean>
dbcp需要commons-dbcp.jar,commons-collections.jar,commons-pools.jar。
相关推荐
### Tomcat JNDI数据源配置详解 #### 一、引言 在现代Web应用开发中,数据库连接管理是一项至关重要的任务。为了提高应用程序的性能和可维护性,通常会采用连接池技术来管理和复用数据库连接。Apache Tomcat作为一...
总结,配置Tomcat数据源是Java Web应用中非常关键的步骤,它涉及到服务器与数据库之间的通信,合理的配置可以提升系统性能并降低资源消耗。在Tomcat 5.5中,我们通过修改`server.xml`文件来定义数据源,并在JSP页面...
【标题】:Tomcat数据源配置 在Java Web开发中,Tomcat作为一款广泛应用的开源Servlet容器,常常被用于部署和运行Web应用。在这些应用中,数据源(DataSource)的配置是至关重要的,它负责管理和提供数据库连接,...
### 为Tomcat6配置数据源 #### 一、配置文件概述 在为Tomcat6配置数据源之前,首先需要了解Tomcat6的配置文件结构。Tomcat6的配置文件主要位于`$TOMCAT6_HOME/conf`目录下,其中包括`server.xml`和`context.xml`两...
标题“Tomcat6.0数据源配置”涉及的是在...总之,理解并正确配置Tomcat数据源是确保Web应用高效运行的关键,同时熟悉相关工具和配置文档也有助于提升运维效率。对于开发者和运维人员来说,这些知识都是不可或缺的。
总的来说,配置Tomcat数据源涉及多个步骤,包括安装管理插件、配置服务器和应用级别的XML文件,以及正确设置数据库连接参数。每个环节都至关重要,只有确保这些步骤都准确无误,才能实现平稳的数据库连接。
#### 一、理解Tomcat数据源配置的重要性 在现代Web应用开发中,数据库作为数据持久层的重要组成部分,其性能和稳定性直接影响到整个应用程序的表现。因此,合理配置数据库连接池(即数据源)对于提高Web应用的响应...
Tomcat 5.5 数据源配置是将数据库连接管理交由应用服务器处理的重要步骤,它提高了应用的性能和可维护性。数据源(DataSource)是Java中用于管理数据库连接的接口,它提供了池化连接的能力,避免了频繁创建和关闭...
本主题主要聚焦于"tomcat jboss数据源配置.rar",这是一个关于如何在Tomcat 5.5和JBoss 4.0中配置数据源,特别是与Oracle数据库交互的详细过程。下面将深入探讨这两个关键组件以及数据源配置的相关知识点。 首先,...
在Java Web应用中,Tomcat作为一款广泛应用的Servlet容器,其数据源连接池配置是确保高效、稳定数据库访问的关键步骤。本篇文章将详细介绍如何在Tomcat中配置数据源连接池,以及涉及的相关jar包文件。 首先,理解...
【标题】:“Tomcat配置JNDI数据源” 【描述】:“在Tomcat服务器上配置JNDI数据源,特别是通过DBCP连接池的方式” 【标签】:“tomcat,配置,JNDI数据源” 【内容】:配置JNDI数据源在Java Web应用程序中是一个...
### Tomcat6 数据源(MySQL)配置方法详解 #### 一、引言 在Java Web应用开发中,Tomcat作为一款轻量级的应用服务器被广泛使用。为了更好地管理数据库连接,Tomcat内置了数据源(DataSource)的概念。本文将详细...
下面将详细阐述Tomcat配置数据源的步骤以及其工作原理。 1. **理解数据源与连接池** 数据源是Java中的一个接口,通常由JNDI(Java Naming and Directory Interface)服务管理,它提供了一种统一的方式来获取和释放...
在本篇内容中,我们将详细解析如何在Apache Tomcat服务器中配置数据源。这涉及到Tomcat服务器的基础配置、数据源的定义以及与数据库的具体连接参数等。这些知识点对于理解和掌握如何在Tomcat环境下高效地管理和使用...
Tomcat 中配置数据源原理详解 在本文中,我们将详细介绍在 Tomcat 中配置数据源的原理。数据源是指Java应用程序连接数据库的接口,通过配置数据源,我们可以在 Java 应用程序中访问数据库。 首先, let's talk ...
配置Tomcat数据源分为以下几个步骤: 1. **创建JDBC驱动类的JAR文件**:确保你的Tomcat安装目录下的`lib`目录包含了对应数据库的JDBC驱动JAR文件。例如,如果是MySQL,你需要`mysql-connector-java.jar`。 2. **...
对于源码分析,Tomcat的数据源实现主要依赖于`org.apache.tomcat.dbcp.dbcp2.BasicDataSource`类,它是Apache Commons DBCP库的一部分。这个类提供了配置数据源的各种属性,并实现了`javax.sql.DataSource`接口,...
在Java Web应用中,Tomcat作为一款广泛应用的Servlet容器,经常需要配置数据源来连接数据库。本篇将详细讲解如何在Tomcat中配置Oracle数据源的模板,这将为其他数据库的配置提供参考。 首先,我们需要了解数据源...
在给定的部分内容中,我们可以看到一个具体的Tomcat数据源配置示例。下面将详细解释这些配置项的具体含义及其作用: 1. **定义上下文路径**: ```xml ``` 这行代码指定了Web应用的上下文路径为“/JSP”,同时...