Язык SQL

Подключение к базам данных с помощью класса DBConnect


Детали подключения к базе данных и создания оператора, используемого для обработки SQL-операторов можно заключить в класс dbjava.database.DBConnect. Значениями членов этого класса, являющегося частью разработанного для данной книги программного обеспечения, являются имя класса драйвера и URL-адрес для использования при подключении, объекты Connection и Statement. На 8.7 показана часть определения этого класса и наследующего его подкласса. Полные определения класса можно найти на Web-узле издательства Addison-Wesley.

1 public class DBConnect{

2 public DBConnect(String driverName, String protocol,

3 String subname){

4 this.theDriver=driverName;

5 this.protocol = protocol;

6 this.subname = subname;

8 public Connection makeConnection();//реализация опущена

9 protected String theDriver;//имя пакета драйвера

10 protected String protocol;//сервер и протокол

11 protected String subname;//имя базы данных

12 protected Statement theStatement = null;

13 public Statement getStatement(} (return stmt;}

14 protected Connection the Connection = null;

15 public Connection getConnection()(return connect;}

17 public class BigHitDBConnect extends DBConnect (

18 BigHitDBConnect() {

19 theDriver = "sun.jdbc.odbc.JdbcOdbcDriver";

20 protocol = ”jdbc:odbc:";

21 subname = "BigHit";

22 }

23 }

Ниже приводится код, в котором класс DBConnect используется для того, чтобы инициировать подключение к базе данных с помощью JDBC.

1 DBConnect myDB = new DBConnect("sun.jdbc.odbc.JdbcOdbcDriver",

2 "j dbc:odbc:","Bi gHi t");

3 Connection conn = myDb.makeConnection();

4 if (conn==null) (// подключение не удалось

5 //код для ответа на неудачу подключения € }

7 Statement stmt=myDB.getStatement() ;

Строки 1 и 2 создают объект, используя имя класса драйвера, протокол и дополнительное имя в качестве аргументов конструктора. Строка 3 вызывает метод makeConnection. Объект DBConnect осуществляет загрузку драйвера, установку подключения, создание Statement и обработку ошибок. Метод makeConnection просто возвращает созданный объект Connection или значение null (пусто), если подключение не удается установить.

Класс DBConnect можно расширить так, чтобы в нем были заданы имя драйвера, протокол и дополнительное имя для данного конкретного подключения к базе данных. Класс BigHitDBConnect на 8.7 (строки 17—22) производит такое расширение. Объект этого класса создается с помощью более простого кода, в котором вместо строк 1 и 2 вышеприведенного кода присутствует следующая строка:

DBConnect myDB = new BigHitDBConnect();

Объект myDB по-прежнему принадлежит типу DBConnect и, как и этот класс, имеет все необходимые операции для подключения и использования базы данных.

Комментарии закрыты