Tomcat中通过JNDI配置访问数据库

原创 2004年07月29日 15:41:00

1,所需要的jar文件:commons-pool.jar, commons-dbcp.jar

2,server.xml的配置:

<Resource name="jdbc/hellohibernate" scope="Shareable" auth="Container"
 type="javax.sql.DataSource"/>
  <ResourceParams name="jdbc/hellohibernate">
   <parameter>
    <name>factory</name>
    <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
   </parameter>
   <parameter>
              <name>removeAbandoned</name>
              <value>true</value>
            </parameter>
   <parameter>
              <name>logAbandoned</name>
              <value>true</value>
            </parameter>
   <!-- DBCP database connection settings -->
   <parameter>
    <name>url</name>
    <value>jdbc:mysql://localhost:3306/test</value>
   </parameter>
   <parameter>
    <name>driverClassName</name><!--<value>com.mysql.jdbc.Driver</value>-->
    <value>org.gjt.mm.mysql.Driver</value>
   </parameter>
   <parameter>
    <name>username</name>
    <value>root</value>
   </parameter>
   <parameter>
    <name>password</name>
    <value></value>
   </parameter>

   <!-- DBCP connection pooling options -->
   <parameter>
    <name>maxWait</name>
    <value>3000</value>
   </parameter>
   <parameter>
    <name>maxIdle</name>
    <value>100</value>
   </parameter>
   <parameter>
    <name>maxActive</name>
    <value>10</value>
   </parameter>
  </ResourceParams>

3,程序中的调用:

Context ctx = new InitialContext();
            if (ctx == null)
                throw new Exception("Boom - No Context");

            DataSource ds =
                (DataSource) ctx.lookup(
                "java:comp/env/jdbc/hellohibernate");

            if (ds != null) {
                Connection conn = ds.getConnection();

                if (conn != null) {
                    foo = "Got Connection " + conn.toString();
                    Statement stmt = conn.createStatement();
                    ResultSet rst =
                        stmt.executeQuery(
                        "select username,id from user");
                    if (rst.next()) {
                        foo = rst.getString(1);
                        bar = rst.getInt(2);
                    }
                    conn.close();
                }
            }

使用JNDI访问SQL Server数据库(tomcat服务器)

在使用开发工具开发项目的时候通常要访问数据库里面的数据,比较传统的方式是使用JDBC实现数据库的访问,为了简便和提高对数据库操作的性能,一种更简便的方式就是通过JNDI和数据库连接池来实现. JNDI...
  • Vincent284
  • Vincent284
  • 2016-05-15 18:13:37
  • 1331

在tomcat中利用JNDI配置数据源,连接到远程Oracle数据库

在开发中,我需要本地tomcat中的工程可以连接到远程的数据库(服务器上的Oracle数据库),除了要在本地工程中配置远程Oracle数据库的登录信息外,还需要在本地tomcat的\conf目录下的c...
  • IRhythm
  • IRhythm
  • 2016-08-10 17:13:30
  • 1758

如何配置Tomcat的JNDI (以oracle数据库为例子)

定义:JNDI(Java Naming and Directory Interface,Java命名和目录接口) 是一组在Java应用中访问命名和目录服务的API 1. Install...
  • AC_great
  • AC_great
  • 2015-04-01 18:58:16
  • 2003

tomcat7添加mysql数据库的jndi数据源

1.将数据库驱动复制到%TOMACT%/lib目录下,以便配置文件和程序代码使用 对于MySQL数据库,jar包下载地址:http://dev.mysql.com/downloads/connecto...
  • gsls200808
  • gsls200808
  • 2015-03-07 15:39:00
  • 1230

在Tomcat配置JNDI数据源的三种方式

在我过去工作的过程中,开发用服务器一般都是Tomcat 数据源的配置往往都是在applicationContext.xml中配置一个dataSource的bean 然后在部署时再修改JND...
  • z69183787
  • z69183787
  • 2014-04-02 11:27:30
  • 2585

JavaWeb:Tomcat下配置数据源(JNDI)连接数据库

习惯了以硬编码的形式在程序中建立数据库连接,用完就在finally语句块中close一下就结束了。对于重视数据库连接数的应用来说,这样子做会耗费大量的时间和数据库资源,而且硬编码的形式也不甚灵活。 ...
  • jdfkldjlkjdl
  • jdfkldjlkjdl
  • 2014-10-29 20:09:11
  • 1851

在tomcat下context.xml中配置各种数据库连接池(JNDI)

1.   首先,需要为数据源配置一个JNDI资源。我们的数据源JNDI资源应该定义在context元素中。在tomcat6版本中,context元素已经从server.xml文件中独立出来了,放在一个...
  • dangelasir_
  • dangelasir_
  • 2016-09-10 15:38:32
  • 2470

利用tomcat和jsp使用数据库链接池JNDI中的问题

在tomcat的cof文件下的server.xml下加入如下的代码作为数据库连接池的配置 //虚拟目录和真实目录      auth="Container"//容器负责资源的连接  type=...
  • wj903829182
  • wj903829182
  • 2013-04-14 20:52:04
  • 886

JNDI定义tomcat资源

JNDI是J2EE中的一个重要的标准,通常在j2ee的开发中用到,tomcat中也提供了在JSP和Servelt中直接调用JNDI的方法。tomcat通过server.xml定义JNDI资源。什么是J...
  • Godmode0_0
  • Godmode0_0
  • 2016-04-16 23:28:04
  • 366
收藏助手
不良信息举报
您举报文章:Tomcat中通过JNDI配置访问数据库
举报原因:
原因补充:

(最多只允许输入30个字)