Proxool数据库的连接及配置

本文主要介绍了采用Proxool来连接mysql的方法,通过java  application方式可以验证数据库的连接及获取表中的数据。为了能够与传统的JDBC方式的连接进行比较,本文采取了两种方式进行数据库的连接,代码如下。

import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import org.logicalcobwebs.proxool.configuration.JAXPConfigurator; public class TestProxool { public static String dburl = "jdbc:mysql://localhost:3306/dma"; public static String user = "root"; public static String password = "888888"; public static void test1() throws Exception { String testsql = "select * from user where userID = 13"; //1:注册驱动类 Class.forName("com.mysql.jdbc.Driver"); //2:创建数据库连接 Connection conn = DriverManager.getConnection(dburl, user, password); //3:创建执行SQL的对象 Statement stmt = conn.createStatement(); //4:执行SQL,并获取返回结果 ResultSet rs = stmt.executeQuery(testsql); //5:处理返回结果,此处打印查询结果 while (rs.next()) { System.out.print(rs.getInt("userID") + "/t"); System.out.print(rs.getString("sourceIP") + "/t"); System.out.println(); } //6:关闭数据库连接 conn.close(); } /** * proxool方式测试 * * @throws Exception */ public static void test2() throws Exception { //加载配置文件,配置文件可以是相对路径,也可以是绝对路径 JAXPConfigurator.configure("proxool.xml", false); // System.out.println("You have already load the xml file"); String testsql = "select * from user where userID = 13"; //1:注册驱动类,是Proxool专用的驱动 Class.forName("org.logicalcobwebs.proxool.ProxoolDriver"); //2:创建数据库连接,这个参数是一个字符串,是数据源的别名,在配置文件中配置的dma,参数格式为:proxool.数据源的别名 Connection conn = DriverManager.getConnection("proxool.dma"); //3:创建执行SQL的对象 Statement stmt = conn.createStatement(); //4:执行SQL,并获取返回结果 ResultSet rs = stmt.executeQuery(testsql); //5:处理返回结果,此处打印查询结果 while (rs.next()) { System.out.print(rs.getLong("userID") + "/t"); System.out.print(rs.getString("sourceIP") + "/t"); System.out.println(); } //6:关闭数据库连接 conn.close(); } public static void main(String[] args) throws Exception { // TODO Auto-generated method stub test1(); test2(); } }

第二种方式test2是采用proxool来连接的,具体的XML文档proxool.xml如下所示:

<?xml version="1.0" encoding="UTF-8"?> <something-else-entirely> <proxool> <alias>dma</alias> <!--数据源的别名--> <driver-url>jdbc:mysql://localhost:3306/dma</driver-url> <!--url连接串--> <driver-class>com.mysql.jdbc.Driver</driver-class> <!--驱动类--> <driver-properties> <property name="user" value="root"/> <!--用户名--> <property name="password" value="888888"/> <!--密码--> </driver-properties> <!--最大连接数(默认5个),超过了这个连接数,再有请求时,就排在队列中等候,最大的等待请求数由maximum-new-connections决定 --> <maximum-connection-count>100</maximum-connection-count> <!--最小连接数(默认2个)--> <minimum-connection-count>10</minimum-connection-count> <!--proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁 默认30秒--> <house-keeping-sleep-time>90000</house-keeping-sleep-time> <!--没有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受--> <maximum-new-connections>10</maximum-new-connections> <!--最少保持的空闲连接数(默认2个)--> <prototype-count>5</prototype-count> <!--在使用之前测试--> <test-before-use>false</test-before-use> <!--用于保持连接的测试语句 --> <house-keeping-test-sql>select sysdate from dual</house-keeping-test-sql> </proxool> </something-else-entirely>

你可能感兴趣的:(Proxool数据库的连接及配置)