Теперь сведём навыки, полученные в разделе 2.1 воедино, и получим следующую программу:
import java.sql.*;
import java.io.*;
public class ddb {
public static void main(String args[]) {
Connection connection = null;
try {
// Название драйвера
String driverName = "com.mysql.jdbc.Driver";
Class. forName (driverName);
// Параметры соединения с базой данных
String serverName = "localhost";
String mydatabase = "my";
String url = "jdbc:mysql://" + serverName + "/"
+ mydatabase;
String username = "root";
String password = "root";
// Соединение с базой данных
connection = DriverManager. getConnection (url, username, password);
System. out. println("is connect to DB" + " "
+ connection);
Statement stmt = connection.createStatement();
// Число полей таблицы
int qucols = "SHOW COLUMNS FROM zoo";
ResultSet cols = stmt.executeUpdate(qucols);
// Строка с запросом на выборку
String query = "Select * FROM zoo";
// Результат запроса
ResultSet rs = stmt.executeQuery(query);
String dbrecord = "";
// Выборка записей из таблицы
while (rs.next())
{
for(i = 1; i<=cols; i++)
dbRecord += rs.getString(i) + " \t ";
System. out. println(dbRecord); // Вывод строки
dbRecord = "";
} // конец цикла выборки записей
connection.close(); // Соединение закрыто
} // Конец try
// Обработка исключений
catch (ClassNotFoundException e) {
e.printStackTrace();
// Не найден драйвер баз данных
} catch (SQLException e) {
e.printStackTrace();
// Нет соединения с базой данных
}
}
}
Программа осуществляет подключение к серверу MySQL, который находится на одном компьютере с клиентской частью, открывает базу данных my и считывает все записи таблицы zoo, которые поочерёдно выводит в консоль.
Результат работы программы;
is connect to DBcom.mysql.jdbc.JDBC4Connection@1f7c9157
bear Misha 11 m
lion Chezar 5 m
wolf Horatio 12 m
elephant Peter 10 m
III. Задание на курсовую работу
Основной целью курсовой работы является разработка распределенного клиент-серверного приложения.
В качестве серверной части разработать базу данных в СУБД MySQL в соответствии с вариантом (раздел I методических указаний).
База данных должна содержать не менее двух таблиц.
Главная таблица – не менее двух полей и десяти записей.
Подчинённая таблица – не менее пяти полей и 25 записей.
Клиентская часть должна быть разработана на языке Java, желательно в среде Eclipse. Каждый запрос должен быть реализован отдельным методом. Все методы могут принадлежать одному классу. Отдельно должен быть реализован класс, содержащий метод main().
Таким образом, структура клиента должна быть приблизительно такая:
1. Класс, содержащий статический метод main() для демонстрации возможностей программы.
2. Класс, содержащий поля и методы для работы с удалённой базой данных:
Методы клиента:
1. Выборка содержимого таблиц базы данных.
2. Добавление записи в таблицу.
3. Удаление записи из таблицы.
4. Обновление записи в таблице.
5. Поиск записи по признаку (на ваш выбор).
6. Запись в файл итогового отчёта по всем таблицам базы данных.
7. Вывод в консоль результатов выполнения каждого из описанных выше методов.
IV. Варианты заданий (предметных областей баз данных)
1. Интернет-магазин.
2. Автосервис.
3. Сеть автозаправок.
4. Автовокзал.
5. Аэропорт.
6. Агентство недвижимости.
7. Сеть аптек.
8. Салон красоты (информация для клиентов).
9. Отдел кадров.
10. Библиотека.
11. Деканат.
12. Телефонная станция.
13. Видеопрокат (информация для клиентов).
14. Туристическое агентство.
15. Поликлиника.
16. Call-центр.
17. Служба занятости.
18. Рекламное агентство.
19. Кинотеатр (информация для зрителей).
20. Ресторан (информация для посетителей).
21. Аналитический отдел фирмы.
22. Издательство.
23. Кафедра.
24. Органайзер.
25. Кадровое агентство.
Литература
1. Мугал Х.А., Расмуссен Р.В. Java. Руководство по подготовке к сдаче сертификационного экзамена CX-310-035, 2-е изд. / Пер с англ. – М.: КУДИЦ-ОБРАЗ, 2006. - 688 с.
2. Эккель Б. Thinking In Java Enterprise (русский перевод): http://javatutor.net/books/tiej
3. Java и базы данных: http://cruxastata.euro.ru/node8.htm
4. Работа с базами данных: http://kek.ksu.ru/EOS/Java/gl4_5.html