« AnySQL JDBC Driver »
Tools » http://www.anysql.net/tools/anysql-jdbc-driver.html 2010-01-21上一篇中的逻辑连接层, 通过一个DBLogicalManager类来实现, 并不是标准的JDBC调用方式, 如果要使现有的程序能很快用上这个功能, 要么更改程序, 要么就去实现一个JDBC Driver类, 让程序透明化. 显然第二种方法很好, 于是就写一个AnySQL JDBC Driver类吧.
JDBC Driver的类名为:
com.lfx.db.AnySQLDriver
使用这个类时, 需要传入一个保存连接配置信息(逻辑库, 物理库)的文件, 只要创建一个类实例就行了.
new com.lfx.db.AnySQLDriver(Sting config_file);
接下来就可以用标准的JDBC来获得逻辑库的连接了, URL规则为:
jdbc:anysql:logical_database_name
比如在批处理中, 要从上一篇的三个Slave库中的一个读取一条记录, 就可以使用如下代码.
try {
Connection db = DriverManager.getConnection(“jdbc:anysql:readdb”, null);
……
db.close();
}
catch (SQLException sqle)
{
……
}
现在还没有真正投入使用, 只在实验室中测试了一下, 感觉上还可以.
Tags: Java, JDBC, WebChart


完整测试代码, 一会从Oracle读取数据, 一会儿从MySQL读取
import java.sql.*;
import com.lfx.db.*;
public class test
{
public static void main(String args[]) throws SQLException
{
new AnySQLDriver(“/dbconn.cfg”);
Connection db = DriverManager.getConnection(“jdbc:anysql:default”,null);
DBRowCache data = DBOperation.executeQuery(db, “select * from emp_his”);
data.write(System.out);
db.close();
}
}