数据库连接
对数据库的操作一般包括连接、打开、使用、关闭等步骤,在数据库操作模板类中我们定义了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{ @Override public 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{ @Override public void connDB() { // TODO 自动生成的方法存根 System.out.println( "连接SQLServer数据库" ); } } |
实现截图: