Tomcat 7環境下MySQL 56/Oracleデータベース接続プールの構成


環境:
  • Tomcat7
  • MySQL56
  • mysql-connector-java-3.1.10-bin.jar

  • 手順:
    1.contextを構成する.xml
    このファイルは~tomcat 7confディレクトリの下にあり、次のコードを追加します.
        <Resource name="jdbc/DemoDb" auth="Container"
                      type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver"
                      url="jdbc:mysql://localhost:3306/mybbs"
                      username="root"
                      password="yourpass"
                      maxActive="20" maxIdle="5"
                      maxWait="-1"/>

    これらのパラメータの意味はよく理解されている.注意データベース名、ユーザー名、パスワードなどいくつかのパラメータを変更します.開発環境の場合、maxActive/maxIdleなどのパラメータを最適化する必要はありません.Oracleデータベースの場合、次の点が異なります.
                      driverClassName="oracle.jdbc.driver.OracleDriver"
                      url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"

    2.コピーmysql-connector-java-3.1.10-bin.JArファイルは~tomcat 7libディレクトリの下にあります
    Oracleデータベースの場合、ojdbc 6をコピーします.jarファイルは~tomcat 7libディレクトリの下にあります.
    3.webを構成する.xml
    適切な場所は次のように追加されます.
        <resource-ref>
            <description>MySQL Datasource</description>
            <res-ref-name>jdbc/DemoDb</res-ref-name>
            <res-type>javax.sql.DataSource</res-type>
            <res-auth>Container</res-auth>
        </resource-ref>

    4.テストJSPページの作成
    ファイルの名前はdbtestです.jspは、Webルートディレクトリに格納され、内容は以下の通りです.
    <%@ page contentType="text/html;charset=UTF-8" %>
    <%@ page import="java.sql.*,
        javax.naming.*,
        javax.sql.*"%>
    <%
        //            
        Context initCtx = new InitialContext();
        Context envCtx = (Context)initCtx.lookup("java:comp/env");
        DataSource ds = (DataSource)envCtx.lookup("jdbc/DemoDb");
        Connection conn = ds.getConnection();
        try {
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery("select sysdate()");
            if(rs.next()) out.println(rs.getString(1));
            rs.close();
            stmt.close();
        }finally{
            if(conn != null) conn.close();
        }
    %>

    IEを開いて、このJSPアドレスhttp://127.0.0.1:8080/st/dbtest.jspを入力して、現在の時間2013-11-16 15:19:59.0を表示して、成功しました!