Сетевая технология публикации и обработки данных в муниципальном учреждении Д/С №176
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
Вµделенного сервлета, в котором извлекаются переданные параметры и используются при работе с БД. После получения ответа от SQL-сервера происходит формирование ответа в виде объекта RESPONSE, в который полученный результат также записывается параметрами этого объекта.
Вызов сервлета происходит по следующему циклу:
1)Происходит создание сервлета методом init(). Данный метод был переопределен для выполнения определенных нужд, а именно, в нем происходит создание пула соединения с БД, по которому и происходит пересылка sql-скриптов, описанных в пункте 2.4.1. Создание соединение происходит следующим образом:
а)java.sql.DriverManager - создает класс для подключения драйвера JDBC для соединения с MySQL;
б)java.sql.Connection - описывает URL, по которому будет загружена определенная БД, а также указывает авторизационные данные к ней;
в)java.sql.Statement - создает пул, по которому будет происходить передача sql-скрипта на SQL-сервер;
г)java.sql.ResultSet - описывает непосредственно сам sql-скрипт, который будет передан на SQL-сервер.
Полученное соединение используется пользователем в дальнейшем. Разрыв соединения происходит после завершения сервлета в методе destroy().
Опишем Java код, используемый для выполнения описанных этапов:
DriverManager.registerDriver(new com.mysql.jdbc.Driver());con = DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql", "root", "SQLpassword1");st = con.createStatement();rs = st.executeQuery("SQL запрос");
2)После инициализации сервлета происходит описание функционал, который несет сервлет. Для этого используется следующие объекты:
а)определяются кодировки описанных объектов REQUEST и RESPONSE;
б)java.io.PrintWriter - создание объекта, который будет формировать JSP страницу с ответом на запрос пользователя;
в)request.getParameter() - данный метод позволяет извлечь переданные пользователем параметры для их использования при работе с БД;
г)out.println() - данный метод позволяет непосредственно реализовать запись ответа клиенту в виде тегов, данных и т. п.
Опишем код, используемый для выполнения описанных этапов:
request.setCharacterEncoding("Cp1251");out = response.getWriter();.println("");
3)Наконец, после формирования сервером ответа клиенту необходимо закрыть открытое на текущий момент соединения с БД во избежание возникновения ошибок разного рода, связанные с передачей некорректных данных, а также освобождение памяти, которую занимает это соединение. Для этого используется метод connection.close().
После того, как была выполнена отправка на SQL сервер запроса, будет получен объект RESPONSE, хранящий полученный результат. Для того, чтобы извлечь из него данные используется метод next() в сочетании в методом getString(имя_столбца). Первый возвращает булевское значение, по которому можно судить, если еще строки записей в RESPONSE. Второй метод позволяет извлечь конкретно значение столбца, имя которого передается в метод.
Опишем код, используемый для выполнения описанных этапов:
if (rs.next())
{rezult = rs.getString("Фам_ребенка");.println("");
}.close();
2.4.2Разработка алгоритмов доступа к БД и ее редактирования с помощью SQL-запросов
Основой работы разрабатываемой системы является передача данных, заполняемых пользователем в интерфейсе, посредством параметров в в объекте query. Это значит, что их можно извлечь методом getParameter(имя_переменной) и вставить в SQL запрос.
2.4.2.1Реализация функции ввода данных главного меню системы
Первая функция главного меню системы вызывается кнопкой Режим ввода данных в БД. После ее нажатия пользователю предоставляется соответствующая JSP страница, отображенная на рисунке 29. Здесь пользователь заполняет форму, данные которой поместятся в таблицу БД после нажатия кнопки Внести запись в БД на данной JSP. Именно на событие нажатия этой кнопки будет вызван соответствующий сервлет, в котором будет реализован доступ к БД, а так же в помощью оператора INSERT будут добавлены данные в требуемые столбцы таблиц.
Опишем sql-скрипт, выполняемый в данном сервлете:
INTO т_Ребенок AS реб, т_Родитель AS род, т_Мед_инф AS мед, т_Прививка AS прив
VALUES (реб.Инд_номер_ребенка = getParameter("id_Num_child"),
реб.Фамилия = getParameter("Surname_child"),
реб.Имя = getParameter("Name_child"),
реб.Отчество = getParameter("Midname_child"),
реб.Дата_рожд = getParameter("Date_born_child"),
реб.Дом_адрес = getParameter("Home_address_child"),
реб.Наим_группы = getParameter("Group_child"),
реб.Инд_номер_воспит = getParameter("Num_teacher_child"),
род.Фамилия = getParameter("Surname_parent"),
род.Имя = getParameter("Name_parent"),
род.Отчество = getParameter("Midname_parent"),
род.Дата_рожд = getParameter("Date_born_parent"),
род.Работа = getParameter("Workplace_parent"),
род.Паспорт = getParameter("Pasport_parent"),
род.Раб_телефон = getParameter("Work_phone_parent"),
мед.Номер_карты = getParameter("Num_card"),