zoukankan      html  css  js  c++  java
  • Tomcat中的配置DBCP

    一 首先我们在Tomcat中容器中引入相应的jdbc

    首先我们应该拥有这个jdbc,如果找不到,就去相应的官网download.

    mysql-connector-java-3.1.13-bin.jar

    将上面的这个jdbc  copy到tomcat/lib中去


    二 修改tomcat/conf中server.xml

    在server.xml中的<GlobalNamingResources>里面配置相应的数据库信息


    server.xml:

      <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" />
                  
         <!-- maxActive: Maximum number of dB connections in pool. Make sure you
         configure your mysqld max_connections large enough to handle
         all of your db connections. Set to 0 for no limit.
         -->
        
         <!-- maxIdle: Maximum number of idle dB connections to retain in pool.
         Set to -1 for no limit. See also the DBCP documentation on this
         and the minEvictableIdleTimeMillis configuration parameter.
         -->
        
         <!-- maxWait: Maximum time to wait for a dB connection to become available
         in ms, in this example 10 seconds. An Exception is thrown if
         this timeout is exceeded. Set to -1 to wait indefinitely.
         -->
        
         <!-- username and password: MySQL dB username and password for dB connections -->
        
         <!-- driverClassName: Class name for the old mm.mysql JDBC driver is
         org.gjt.mm.mysql.Driver - we recommend using Connector/J though.
         Class name for the official MySQL Connector/J driver is com.mysql.jdbc.Driver.
         -->
        
         <!-- url: The JDBC connection url for connecting to your MySQL dB.
         The autoReconnect=true argument to the url makes sure that the
         mm.mysql JDBC Driver will automatically reconnect if mysqld closed the
         connection. mysqld by default closes idle connections after 8 hours.
         -->
        
         <Resource name="jdbc/test" auth="Container" type="javax.sql.DataSource"
         maxActive="20" maxIdle="10" maxWait="50"
         username="root" password="root" driverClassName="com.mysql.jdbc.Driver"
         url="jdbc:mysql://localhost:3306/softrc"/>
        
      </GlobalNamingResources>


    三 配置tomcat中的context.xml

    在context.xml中的<Context>里面配置下面的信息


    context.xml:


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


    四 写个类测试下

    package com.shaoguan.test;

    import java.sql.Connection;

    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.sql.DataSource;

    public class DBCPConn {
        public static Connection getConn() throws Exception{
            Context ctx = new InitialContext();
            DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/test");
            return ds.getConnection();     
        }
    }


    五 在jsp中显示写数据来看看数据

    这里我测试的jsp名称为:testdbcp.jsp


    testdbcp.jsp:


    <%
            Connection conn = DBCPConn.getConn();
            String sql = "select * from user";
            PreparedStatement pstmt = DBUtil.prepareStatement(conn, sql );
            ResultSet rs = pstmt.executeQuery();
                
            while(rs.next()){
                System.out.println(rs.getInt(1));    
            }
                



    %>库是不是真的连接通了


  • 相关阅读:
    [PA2014]Muzeum
    [TJOI2015]概率论
    To Do List
    【洛谷4172】 [WC2006]水管局长(LCT)
    HNOI2019退役记
    hdu 2159 FATE
    USACO 2019 January Contest, Platinum 题解
    luogu4774 [NOI2018]屠龙勇士
    NOI 2019游记
    loj #3145. 「APIO 2019」桥梁
  • 原文地址:https://www.cnblogs.com/bbsno1/p/3253898.html
Copyright © 2011-2022 走看看