博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

流水孟春

以前使用的博客 webvista.cublog.cn
lib.cublog.cn
在JBOSS中使用mysql连接池

连接池配置:
从${JBOSS_HOME}/docs/examples/jca目录下把mysql-ds.xml拷贝到${JBOSS_HOME}/server/default/deploy下,做如下少许修改

<?xml version="1.0" encoding="UTF-8"?>

<!-- $Id: mysql-ds.xml 63175 2007-05-21 16:26:06Z rrajesh $ -->
<!-- Datasource config for MySQL using 3.0.9 available from:
http://www.mysql.com/downloads/api-jdbc-stable.html
-->

<datasources>
  <local-tx-datasource>
    <jndi-name>mysqlds</jndi-name>
    <connection-url>jdbc:mysql://localhost:3306/discuz</connection-url>
    <driver-class>com.mysql.jdbc.Driver</driver-class>
    <user-name>root</user-name>
    <password>123456</password>
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
    <!-- should only be used on drivers after 3.22.1 with "ping" support
    <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name>
    -->
    <!-- sql to call when connection is created
    <new-connection-sql>some arbitrary sql</new-connection-sql>
      -->
    <!-- sql to call on an existing pooled connection when it is obtained from pool - MySQLValidConnectionChecker is preferred for newer drivers
    <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>
      -->

    <!--最小连接池数目-->
    <min-pool-size>5</min-pool-size>

    <!--最大连接池数目-->
    <max-pool-size>800</max-pool-size>

    <!-- 数据库连接空闲时间,单位为分钟,如果负载较大,可以设为5,如果一般,可以设为3 -->
    <idle-timeout-minutes>5</idle-timeout-minutes>

    <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml -->
    <metadata>
       <type-mapping>mysql</type-mapping>
    </metadata>
  </local-tx-datasource>
</datasources>

JBoss测试JSP :

<%@ page contentType="text/html;charset=utf-8"
         import="java.io.*,java.util.*,java.sql.*,javax.sql.*,javax.naming.*"%>
         
<html>
    <head>
        <title>
            jboss 连接池测试
        </title>
    </head>
    <body>
        <h3>
            test
            <br>
            连接池:
        </h3>
        <%
            try {
                Context ctx = new javax.naming.InitialContext();
                DataSource ds = (DataSource) ctx.lookup("java:mysqlds");


                Connection conn = ds.getConnection();
                Statement stmt = conn.createStatement();
                ResultSet rs = stmt.executeQuery("select * from cdb_members");
                while (rs.next()) {
                    out.print("<br>\n" + rs.getString(2));

                }
                out.print("<br>Successful!成功!!\n");
                rs.close();
                stmt.close();
                conn.close();
            } catch (Exception e) {
                out.print("出现意外!" + e.getMessage());
                e.printStackTrace();
            }
        
        %>
        
    </body>
</html>

发表于: 2008-02-20,修改于: 2008-02-20 19:41,已浏览321次,有评论0条 推荐 投诉

给我留言
版权所有 ChinaUnix.net 页面生成时间:0.01007