链接数据库用到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}@Overridepublic void initDriver() {try {Class.forName(driverClass);} catch (ClassNotFoundException e) {e.printStackTrace();}}@Overridepublic Connection getConnect() {try {return DriverManager.getConnection(url, loginName, password);} catch (SQLException e) {e.printStackTrace();}return null;}@Overridepublic void closeConnect(Connection conn) {try {if (conn != null && !conn.isClosed()) {conn.close();}} catch (SQLException e) {e.printStackTrace();}}}以此类推,上面代码是我随便一写,你自己再改进下。
偶电线错……咱小明推倒#不知道你学习过模式没有 有一个比较经典的模式 叫 工厂模式 这种模式有种灵活性 可以实现 传什么参数进去 就可以给你指定的对象具体需要自己设计下比如 你需要三种数据库连接 但是 每个连接的 规则是不一样的 那就需要你有个可以判断的条件你可以这样区分 oracle mysql sqlserver 定义这三种参数 传递进去 那么就可以获得指定的连接了然后 结合 properties 文件 进行 数据库连接的配置
贫道向妙梦不行'鄙人谢亦丝拉住&你去阅读一下spring,hibernate,ibatis的代码
余丁雁丝爬起来#开关他们听懂#你们老师所说的中间件其实就是一个java类,这个类实现通过输入的值指定链接的数据库。给你个思路,首先要实现3种数据的链接,类①;然后作一个调用该类的类,类②;在②中取得输入的值,然后传给①;在①中根据得到的参数if else来判断链接哪种DB.
|