如何把JAVA链接ORACLE数据库,MYSQL数据库,SQL SERVER 2000数据库的程序弄成一个通用的JDBC接口

毕业设计老师要我做成一个中间件(网上搜下没什么相关资料,郁闷!!),我不知道什么叫中间件...不懂!只知道最终做好的效果是输入不同的值链接不同的数据库。哪位高手能告诉我这做的到底是什么!!用到了什么JAVA知识!什么软件!!谢谢啦!!!!!!!
希望大家给我点实例看看!!!这样好懂。。麻烦了!!!

链接数据库用到JDBC,一般链接数据库都要用到数据库驱动、链接字符串、登录名、登录密码。这4个属性可以提取到一个父类中,每一种数据库写一个类继承父类。要是这些都没问题了,就可以用楼上哥们儿说的,简单工厂模式,简单工厂是用到了java中的多态特性。
import java.sql.Connection;

public abstract class BaseConnect {

public BaseConnect(String driverClass, String url, String loginName,
String password) {
super();
this.driverClass = driverClass;
this.url = url;
this.loginName = loginName;
this.password = password;
}

protected String driverClass;
protected String url;
protected String loginName;
protected String password;

public abstract void initDriver();

public abstract Connection getConnect();

public abstract void closeConnect(Connection conn);
}

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class OraclConnect extends BaseConnect {

public OraclConnect(String driverClass, String url, String loginName,
String password) {
super(driverClass, url, loginName, password);
// TODO Auto-generated constructor stub
}

@Override
public void initDriver() {
try {
Class.forName(driverClass);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}

@Override
public Connection getConnect() {
try {
return DriverManager.getConnection(url, loginName, password);
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}

@Override
public void closeConnect(Connection conn) {
try {
if (conn != null && !conn.isClosed()) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}

}
以此类推,上面代码是我随便一写,你自己再改进下。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-04-09
你们老师所说的中间件其实就是一个java类,
这个类实现通过输入的值指定链接的数据库。
给你个思路,
首先要实现3种数据的链接,类①;
然后作一个调用该类的类,类②;
在②中取得输入的值,然后传给①;
在①中根据得到的参数if else来判断链接哪种DB.
第2个回答  2010-04-09
不知道你学习过模式没有 有一个比较经典的模式 叫 工厂模式 这种模式有种灵活性 可以实现 传什么参数进去 就可以给你指定的对象
具体需要自己设计下
比如 你需要三种数据库连接 但是 每个连接的 规则是不一样的 那就需要你有个可以判断的条件
你可以这样区分 oracle mysql sqlserver 定义这三种参数 传递进去 那么就可以获得指定的连接了
然后 结合 properties 文件 进行 数据库连接的配置
第3个回答  2010-04-09
你去阅读一下spring,hibernate,ibatis的代码
相似回答
大家正在搜