链接数据库用到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();
}
}
}
以此类推,上面代码是我随便一写,你自己再改进下。
温馨提示:内容为网友见解,仅供参考