tomcat使用指南(三)-配置数据源

为何使用JNDI数据源

如果用java直接连接:

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl";
Connection conn= DriverManager.getConnection(url,user,password);  

也是可以的,但是这样没有连接池的概念,每次连接都得重新创建,使用完毕必须记得断开,非常麻烦且效率低下,只适合小应用。

单个数据源

单个数据源配置很简单,修改server.xml,在你的工程context节点中添加resource即可。

<Context path="/pipeliner" docBase="F:\code\gd-dev\billing\autoacct\javaee\pipeliner\src\main\webapp" debug="5" reloadable="true" crossContext="true">
<span style="white-space:pre">	</span><Resource name="jdbc/sdact1ds"
          auth="Container"
          type="javax.sql.DataSource"
          factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
          driverClassName="oracle.jdbc.driver.OracleDriver"
          url="jdbc:oracle:thin:@32.121.2.130:1521:test"
          username="ucr_app"
          password="ucr_app"
          maxActive="60"
          maxIdle="20"
          maxWait="10000"
          removeAbandoned="true"
          removeAbandonedTimeout="60"
          logAbandoned="true"/>
</Context>

同时,工程中必须要有所用数据库的jdbc的jar包,比如oracle的是ojdbc6.jar(java6)或jdbc14.jar(java1.4)

配置server.xml是全局的jndi,如果想非全局的,可增加配置在C:\work\apache-tomcat-7.0.57\conf\Catalina\localhost下。

有些文章说还得配置web.xml,其实是不需要的。(但是多数据源时就必须配置了)

数据源名称不一定必须叫jdbc/sdact1ds,你直接叫sdact1ds也是可以的,只是使用tomcat的数据源时大家都习惯前面加jdbc/,如果使用weblogic则一般不加;但是调用的时候必须前面加上javacomp/evn,比如(这个很重要,用习惯了weblogic为了这个折腾了一下):

java:comp/env/jdbc/sdact1ds

maxActive就是你配置的数据库连接池的最大连接数。

多个数据源

修改apache-tomcat-7.0.57\conf下的web.xml,这个文件很大,4000多行,在最后</web-app>之前增加即可。

    <resource-ref>
        <description>DB Connection</description>
        <res-ref-name>jdbc/sdact1ds</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>
    <resource-ref>
        <description>DB Connection</description>
        <res-ref-name>jdbc/sdautoacct1</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>

然后修改server.xml:

<Context path="/pipeliner" docBase="F:\code\bss_gd-dev\billing\autoacct\javaee\pipeliner\src\main\webapp" debug="5" reloadable="true" crossContext="true">
<span style="white-space:pre">	</span><Resource name="jdbc/sdact1ds"
          auth="Container"
          type="javax.sql.DataSource"
          factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
          driverClassName="oracle.jdbc.driver.OracleDriver"
          url="jdbc:oracle:thin:@32.121.2.130:1521:test"
          username="ucr_app"
          password="ucr_app"
          maxActive="60"
          maxIdle="20"
          maxWait="10000"
          removeAbandoned="true"
          removeAbandonedTimeout="60"
          logAbandoned="true"/>
        <Resource name="jdbc/ds_act_autoacct1"
          auth="Container"
          type="javax.sql.DataSource"
          factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
          driverClassName="Altibase.jdbc.driver.AltibaseDriver"
          url="jdbc:Altibase://30.51.9.46:20305/autoacctbak1"
          username="AUTOACCTBAK"
          password="AUTOACCTBAK"
          maxActive="60"
          maxIdle="20"
          maxWait="10000"
          removeAbandoned="true"
          removeAbandonedTimeout="60"
          logAbandoned="true"/>
</Context>

本文出处:

http://blog.csdn.net/ouyida3

2015.2.2

时间: 2024-11-11 11:48:47

tomcat使用指南(三)-配置数据源的相关文章

tomcat在ROOT中配置数据源

在tomcat5.0之前在conf目录下面有一个Catalina==>localhost 的文件夹,其下面有ROOT.xml文件,但是在5.0之后就被删除了(表示这么好用的东东怎么要删除呢,既然删除了我们就手动创建这个目录),这个ROOT.xml用来设置tomcat启动时默认的项目,也可以在里面配置数据源.5.0之后在conf==>servert.xml 中配置tomcat启动时默认的项目和数据源,但是本人还是认为在ROOTxml中比较方便.以下是ROOT.xml中的配置. <?xml 

Spring配置数据源的几种方法

一:数据源的配置1.通过JNDI配置数据源    1.在tomcat context.xml中配置数据源        <Resource name="jdbc/ds" auth="Container"         type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver"         url="jdbc:o

Springmvc +JNDI 在Tomcat下 配置数据源(转)

一.             简介 jndi(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API.命名服务将名称和对象联系起来,使得我们可以用名称访问对象.目录服务是一种命名服务,在这种服务里,对象不但有名称,还有属性. 二.             tomcat配置jndi有三种方式. 第一种:单个应用独享数据源 在Tomcat的server.xml找到工程的Context节点,添加一个私有数据源 <

复习Spring第三课--数据源配置的多种方式

spring数据源配置可以说分为:spring容器自带连接池.项目中创建连接池.服务器创建连接池三种 一.spring容器自带连接池   Spring本身也提供了一个简单的数据源实现类DriverManagerDataSource ,它位于org.springframework.jdbc.datasource包中.这个类实现了javax.sql.DataSource接口,但 它并没有提供池化连接的机制,每次调用getConnection()获取新连接时,只是简单地创建一个新的连接.因此,这个数据

Tomcat环境下配置数据源

两种方式,图形化和字符型配置,图形化需要部署一个应用,字符型配置如下: 需要文件 mysql-connector-java-5.1.16-bin.jar Oracle需要classes12.jar文件拷贝到$CATALINA_HOME/lib下面. 在Tomcat的Server.xml,找到需要采用数据池的Context一段,加入Resource内容,配置内容如下:<Resource name="jdbc/TestJavaWeb" auth="Container&quo

tomcat配置数据源

1.修改conf下的context.xml,在<context>标签中添加: 1 <Resource 2 name="jdbc/soa" 3 auth="Container" 4 type="javax.sql.DataSource" 5 maxActive="100" 6 maxIdle="30" 7 maxWait="10000" 8 username="

JNDI+Tomcat配置数据源的两种方式

非全局jndi配置步骤 :此种配置方式不需要在server.xml中配置数据源,而只在tomcat/conf/Catalina/localhost下的启动配置中配置即可.注意红色字体名称必须和相同. 0.需要在tomcat/common/lib下加入数据库连接的jar包 1.web.xml配置 <resource-ref>      <description>my DB Connection</description>      <res-ref-name>

Spring —— 三种配置数据源的方式:spring内置、c3p0、dbcp

01.Spring内置数据源配置Class:DriverManagerDataSource全限定名:org.springframework.jdbc.datasource.DriverManagerDataSource不需要添加任何jar 02.apache的 dbcp数据源配置Class:BasicDataSource全限定名:org.apache.commons.dbcp.BasicDataSource需要添加:com.springsource.org.apache.commons.dbcp

Spring使用jdbcJdbcTemplate和三种方法配置数据源

三种方法配置数据源 1.需要引入jar包:spring-jdbc-4.3.2.RELEASE.jar <!-- spring内置,springJdbc,配置数据源 --> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName"

在Tomcat中配置数据源

使用工具:TOMCAT 7.0.52.IntelliJ IDEA 13.0.2.JSF 2.0+.SqlServer.jtds-1.2.5.jar 搞了好久都没成功,开始使用注解引入DataSource,可是一直不成功,后来使用lookup方式,写了一个本地主类(包含main方法)测试,也是不成功,艹,都快崩溃了,后来经过各种测试,终于搞定了,本地主类测试是无效的,必须通过web访问才能成功,真尼玛蛋疼.注解估计跟版本有关,没精力去弄了. 以下是配置步骤(相应的路径换成自己的): 1.把jtds