Heim >Datenbank >MySQL-Tutorial >Tomcat数据库连接池的配置与使用_MySQL

Tomcat数据库连接池的配置与使用_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-01 13:49:301250Durchsuche

Tomcat

bitsCN.com

Tomcat数据库连接池估计现在使用的不多了,现在都是DBCP,C3P0之类的,在很多软件项目中,dbcp,c3p0确实很好,配置一下随便用,使用Tomcat连接池可能不是很方便;但后来发现,在分布式服务器或者分库中使用Tomcat数据库连接池确实不错,可以一次启动打开不同库上的连接池;

以下是配置文件,conf下的server.xml文件(原来内容全部清除)

<server port="8005" shutdown="SHUTDOWN"><br>    <globalnamingresources><br>        <resource auth="Container" driverclassname="org.gjt.mm.mysql.Driver" maxactive="200" maxidle="30" maxwait="10000" name="jdbc/table" removeabandoned="true" removeabandonedtimeout="60" type="javax.sql.DataSource" url="jdbc:mysql://122.207.1.1:3306/table?autoReconnect=true" username="root" password="root"></resource><br>        <resource auth="Container" driverclassname="org.gjt.mm.mysql.Driver" maxactive="200" maxidle="30" maxwait="10000" name="jdbc/tablelog" removeabandoned="true" removeabandonedtimeout="60" type="javax.sql.DataSource" url="jdbc:mysql://122.207.1.1:3306/table_log?autoReconnect=true" username="root" password="root"></resource><br>        <resource auth="Container" driverclassname="org.gjt.mm.mysql.Driver" maxactive="200" maxidle="30" maxwait="10000" name="jdbc/tableR1" removeabandoned="true" removeabandonedtimeout="60" type="javax.sql.DataSource" url="jdbc:mysql://122.207.1.1:3306/table_main?autoReconnect=true" username="root" password="root"></resource><br>        <resource auth="Container" driverclassname="org.gjt.mm.mysql.Driver" maxactive="200" maxidle="30" maxwait="10000" name="jdbc/tableR2" removeabandoned="true" removeabandonedtimeout="60" type="javax.sql.DataSource" url="jdbc:mysql://122.207.1.1:3306/table_main?autoReconnect=true" username="root" password="root"></resource><br>    </globalnamingresources><br>    <service name="Catalina"><br>        <connector port="80" maxhttpheadersize="8192" maxthreads="150" minsparethreads="25" maxsparethreads="75" enablelookuphotoshop target="_blank" class="infotextkey">ps="false" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true"/><br>        <engine name="Catalina" defaulthost="localhost"><br>            <host name="localhost" appbase="webapphotoshop/ target=_blank class=infotextkey>ps" unpackwars="true" autodeploy="true" xmlvalidation="false" xmlnamespaceaware="false"><br>                <context docbase="E:/Workspaces/MyEcliphotoshop/ target=_blank class=infotextkey>pse8.6/myproject/WebRoot" path="" reloadable="false"><br>                    <resourcelink global="jdbc/table" name="jdbc/table" type="javax.sql.DataSource"></resourcelink><br>                    <resourcelink global="jdbc/tablelog" name="jdbc/tablelog" type="javax.sql.DataSource"></resourcelink><br>                    <resourcelink global="jdbc/tableR1" name="jdbc/tableR1" type="javax.sql.DataSource"></resourcelink><br>                    <resourcelink global="jdbc/tableR2" name="jdbc/tableR2" type="javax.sql.DataSource"></resourcelink><br>                </context><br>            </host><br>        </engine><br>    </connector></service><br></server>

这里总共有4个库,当然这些库不一定只在一台机器上,可以通过Resource节点下的url来指定,这里全是是本地的库,还要把mysql的连接包放入Tomcat下的lib目录中;

这里的Context节点配置了这个Tomcat容器只能为myproject这个工程使用,可以不用部署,直接启动Tomcat即可,这样可以加快启动速度,在Tomcat启动同时,数据库

连接也被打开,我们只需要在jav工程中读取连接即可

连接形式如下:

DataSource datesource1="java:comp/env/jdbc/table"<br>DataSource datesource2="java:comp/env/jdbc/tablelog"<br>DataSource datesource3="java:comp/env/jdbc/tableR1"<br>DataSource datesource4="java:comp/env/jdbc/tableR2"

这样就可以在一个工程中获取多个数据库的连接;确实很强大;

关于Tomcat的server.xml的各个节点于属性的意思这里就不再多说了,大家从字面意思上就可以了解

 

bitsCN.com
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn