import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.logicalcobwebs.proxool.configuration.JAXPConfigurator;
public class ProxoolTest {
/**
* @param args
*/
public static void main(String[] args) {
System.out.println(getMysqlPolxoolConnection());
}
public static Connection getMysqlPolxoolConnection()
{
Connection conn = null;
//Logger log = Logger.getLogger("InitAction");
try
{
//Java应用中先要加载配置文件,否则谁知道你配置给谁用的
InputStream in = ProxoolTest.class.getResourceAsStream("proxool.xml");
Reader reader = new InputStreamReader(in,"GB2312");
JAXPConfigurator.configure(reader, false);
//1:注册驱动类,这次这个驱动已经不是Oracle的驱动了,是Proxool专用的驱动
Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
//2:创建数据库连接,这个参数是一个字符串,是数据源的别名,在配置文件中配置的timalias,参数格式为:proxool.数据源的别名
conn = DriverManager.getConnection("proxool.mysql");
}catch(Exception ex)
{
ex.printStackTrace();
}
return conn;
}
}
结果,一运行,抛出以下异常,在网上一搜,都是关于web方面的,纯java的很少,看来得自己想办法解决了。
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at org.logicalcobwebs.proxool.configuration.JAXPConfigurator.<clinit>(JAXPConfigurator.java:42)
at net.fygk.test.ProxoolTest.getMysqlPolxoolConnection(ProxoolTest.java:69)
at net.fygk.test.ProxoolTest.main(ProxoolTest.java:20)
从第一条来看,java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory,主要是因为没有找到LogFactory这个类文件,所以才产生了NoClassDefFoundError,于是,便又从网站上下了一个commons-logging.jar,导入到项目中,一切OK!
下载 proxool-0.9.1 http://proxool.sourceforge.net/
需要 四个包:
proxool-0.9.1.jar proxool-cglib.jar commons-logging.jar mysql-connector-java-5.0.8-bin.jar (少一个都报错)