利用接口的思想,定义Dbdriver驱动接口,通过该接口实现IBMdriver类、Googledriver类,定义UserDriver类来使用该驱动,并编写main函数进行执行
时间: 2024-10-20 07:12:58 浏览: 11
利用接口的概念,我们可以创建一种设计模式,称为"依赖注入"或者"策略模式"。首先,我们定义一个通用的`DbDriver`接口,它包含了所有数据库操作的基本功能:
```java
// DbDriver接口
public interface DbDriver {
void connect();
void execute(String sql);
void disconnect();
}
```
然后,我们针对特定数据库(如IBM和Google)实现这个接口,比如`IBMDriver`和`GoogleDriver`:
```java
// IBMDriver类
public class IBMDriver implements DbDriver {
@Override
public void connect() {
// 连接IBM数据库...
}
@Override
public void execute(String sql) {
// 执行IBM SQL...
}
@Override
public void disconnect() {
// 断开IBM连接...
}
}
// GoogleDriver类
public class GoogleDriver implements DbDriver {
@Override
public void connect() {
// 连接Google数据库...
}
@Override
public void execute(String sql) {
// 执行Google SQL...
}
@Override
public void disconnect() {
// 断开Google连接...
}
}
```
接着,我们创建`UserDriver`类,它持有`DbDriver`类型的引用,但不需要关心实际使用的驱动类型:
```java
public class UserDriver {
private DbDriver driver;
public UserDriver(DbDriver driver) {
this.driver = driver;
}
public void operate() {
driver.connect();
driver.execute("查询数据...");
driver.disconnect();
}
}
```
最后,在`main`函数中,我们可以根据不同需求选择合适的驱动并实例化`UserDriver`:
```java
public static void main(String[] args) {
DbDriver ibmDriver = new IBMDriver();
DbDriver googleDriver = new GoogleDriver();
UserDriver ibmUser = new UserDriver(ibmDriver);
ibmUser.operate(); // 使用IBM驱动
UserDriver googleUser = new UserDriver(googleDriver);
googleUser.operate(); // 使用Google驱动
// 更改此处的driver即可切换到对应数据库操作
// 如需动态切换,可以将driver作为构造函数参数传递
}
```
阅读全文