数据库连接
对数据库的操作一般包括连接、打开、使用、关闭等步骤,在数据库操作模板类中我们定义了connDB()、openDB()、useDB()、closeDB()四个方法分别对应这四个步骤。对于不同类型的数据库(如SQL Server和Oracle),其操作步骤都一致,只是连接数据库connDB()方法不同,现使用模板方法模式对其进行设计。
(1)Client.java:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
package shiyan24;
import java.util.Scanner;
public class Client {
public static void main(String[] args) {
DBOperator db = null;
System.out.println("请选择数据库:1、SQLServer 2、Oracle");
Scanner input=new Scanner(System.in);
int i=input.nextInt();
if(i==1) {
db=new SQLServerDB();
}else if(i==2) {
db=new OracleDB();
}db.process();}} |
(2)DBOperator.java:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
package shiyan24;
public abstract class DBOperator {
public void process(){
connDB();openDB();useDB();closeDB();}public abstract void connDB();
public void openDB(){
System.out.println("打开数据库");
}public void useDB(){
System.out.println("使用数据库");
}public void closeDB(){
System.out.println("关闭数据库");
}} |
(3)OracleDB.java:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
package shiyan24;
public class OracleDB extends DBOperator{
@Overridepublic void connDB() {
// TODO 自动生成的方法存根System.out.println("连接Oracle数据库");
}} |
(4)SQLServerDB.java:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
package shiyan24;
public class SQLServerDB extends DBOperator{
@Overridepublic void connDB() {
// TODO 自动生成的方法存根System.out.println("连接SQLServer数据库");
} } |
实现截图: