zoukankan      html  css  js  c++  java
  • 在tomcat下配置jdbc连接池点滴

    新手配置tomcat下的mysql jdbc连接池,有点折腾,先按书上的说法照葫芦画瓢,无果,又按网上搜索出来居多资料操作,无果,后请同事王兄帮忙,遂成功,大悦!
    先说一下环境,具体软件如下:
    apache-tomcat-6.0.35-windows-x86.zip
    mysql-5.5.17-win32.zip
    myeclipse-8.5.0-win32.exe
    mysql-connector-java-5.1.16-bin.jar

    可行配置如下:

    1 在Tomcat的conf文件夹下的context.xml文件内进行配置,配置内容如下:
    <Resource name="jdbc/TestJavaWeb"
    auth="Container"
    type="javax.sql.DataSource"
    maxActive="100" maxIdle="30" maxWait="10000"
    username="root" password="hammer"
    driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://localhost:3306/mysql?autoReconnect=true"
    factory = "org.apache.dbcp.BasicDataSourceFactory"
    characterEncoding="utf-8">
    </Resource>
    2 然后在Web程序的web.xml文件中配置数据源引用。配置代码如下:
    <resource-ref>
    <description>DB Connection</description>
    <res-ref-name>jdbc/TestJavaWeb</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    </resource-ref>
    3 获取数据源连接对象,获取代码如下:
    /**
    * 获得数据源
    *
    * @return
    * @throws NamingException
    * @throws SQLException
    */
    public Connection getConnection() throws NamingException, SQLException {
    Connection conn = null;
    Context initContext = new InitialContext(); // 实例化一个InitialContext
    Context envContext = (Context) initContext.lookup("java:/comp/env"); // 获取所有的资源
    DataSource ds = (DataSource) envContext.lookup("jdbc/TestJavaWeb"); // 获取JNDI数据源

    conn = ds.getConnection();
    return conn;

    }
    4.我的jsp文件主要测试代码如下:

    <%@page import="java.sql.*"%>
    <%@page import="javax.sql.DataSource"%>
    <%@page import="javax.naming.*"%>


    <%
    Context ctx = new InitialContext();
    DataSource ds = (DataSource) ctx
    .lookup("java:comp/env/jdbc/TestJavaWeb");
    Connection conn = ds.getConnection();
    Statement state = conn.createStatement();
    String sql = "select user from user";
    ResultSet rs = state.executeQuery(sql);

    while (rs.next()) {
    out.println(rs.getString(1) + "--<tr>");
    out.println(rs.getString(1) + "--<tr>");
    out.println(rs.getString(1) + "<br>");
    }

    rs.close();
    state.close();
    conn.close();
    %>

  • 相关阅读:
    [设计模式] 10 外观模式 facade
    [设计模式] 11 享元模式 Flyweight
    [设计模式] 9 装饰者模式 Decorator
    [设计模式] 8 组合模式 Composite
    float2int
    《ASP.NET》数据绑定——GridView
    Android Studio左边栏Project不见了?
    Linux下的五种I/O模型
    Shell编程入门(第二版)(下)
    Android訪问网络,使用HttpURLConnection还是HttpClient?
  • 原文地址:https://www.cnblogs.com/ventry/p/2394047.html
Copyright © 2011-2022 走看看