首页 > 代码库 > Spring+Tomcat的JNDI数据源连接池简单配置

Spring+Tomcat的JNDI数据源连接池简单配置

使用Tomcat JNDI数据源与Spring一起使用步骤如下:

1.将数据库驱动复制到Tomcat的lib文件夹下面

2.配置Tomcat的server.xml配置文件,在GlobalNamingResources节点下面添加一个Resource节点,如下:

<GlobalNamingResources>    <!-- Editable user database that can also be used by         UserDatabaseRealm to authenticate users    -->    <Resource name="UserDatabase" auth="Container"              type="org.apache.catalina.UserDatabase"              description="User database that can be updated and saved"              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"              pathname="conf/tomcat-users.xml" />              <!--                |- name:表示以后要查找的名称。通过此名称可以找到DataSource,此名称任意更换,但是程序中最终要查找的就是此名称,                         为了不与其他的名称混淆,所以使用jdbc/oracle,现在配置的是一个jdbc的关于oracle的命名服务。                |- auth:由容器进行授权及管理,指的用户名和密码是否可以在容器上生效                |- type:此名称所代表的类型,现在为javax.sql.DataSource                |- maxActive:表示一个数据库在此服务器上所能打开的最大连接数                |- maxIdle:表示一个数据库在此服务器上维持的最小连接数                |- maxWait:最大等待时间。10000毫秒                |- username:数据库连接的用户名                |- password:数据库连接的密码                |- driverClassName:数据库连接的驱动程序                |- url:数据库连接的地址               -->    <Resource name="jdbc/mysql"              auth="Container"              type="javax.sql.DataSource"              maxAction="100"              maxIdle="30"              maxWait="1000"              username="root"              password="db861110"              driverClassName="com.mysql.jdbc.Driver"              url="jdbc:mysql://localhost:3306/Restaurant?useUnicode=true&characterEncoding=UTF-8" />  </GlobalNamingResources>

3.配置context.xml文件,在Context节点下面添加一个ResourceLink节点,这个name要跟server.xml里面配置的Resource的name属性保持一致。

<ResourceLink global="jdbc/mysql" name="jdbc/mysql" type="javax.sql.DataSource"/>

4.在工程内配置config.properties文件,如下:

dataSource.resourceRef=truedataSource.jndiName=java:comp/env/jdbc/mysql

5.引入配置文件并创建数据源

 <!--引入配置文件-->
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:config.properties</value> </list> </property></bean><bean id="datasource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="http://www.mamicode.com/${dataSource.jndiName}"></property> <property name="resourceRef" value="http://www.mamicode.com/${dataSource.resourceRef}"></property></bean>

 

这样就配置好了,工程就可以使用这个JNDI数据源了。

Spring+Tomcat的JNDI数据源连接池简单配置