Аннотация: В этой статье представлена структура реализации для разработки информационных систем управления на основе веб-технологий. Использование технологии JSP/Servlet и объединение ее с шаблоном проектирования MVC делает процесс разработки более гибким и простым в обслуживании.
Ключевые слова: Информационная система управления, JSP, сервлет, шаблон проектирования MVC, JDBC.
1. Введение
Информационная система управления (MIS) — это система, состоящая из людей и компьютеров, которая может собирать, передавать, хранить, обрабатывать и использовать информацию. С развитием науки и техники и распространением информации информатизация предприятий стала одним из эффективных способов оставаться предприятиям в непобедимой позиции в конкурентной борьбе. MIS может не только своевременно и полно предоставлять информацию и данные, упрощать статистическую работу и предоставлять различные отчеты для разных уровней управления, но также может прогнозировать будущие ситуации на основе прошлых данных. Поэтому особенно важно использовать какой метод разработки информационной системы управления, которая учитывает как эффективность разработки, так и эффективность эксплуатации и удовлетворяет функции распределенной обработки событий. В этой статье описывается метод использования JSP/Servlet для создания трехуровневой информационной системы управления.
2. Трехуровневая архитектура системы
Трехуровневая архитектура системы представлена на рисунке 1.
Рисунок 1. Архитектура веб-приложения, основанная на технологии Java.
Вся информационная система управления использует трехуровневую архитектуру браузер/Интернет/база данных. Веб-сервер принимает запрос, выполняет серверный Java-апплет Servlet через сервер приложений и возвращает его выходные данные, тем самым реализуя взаимодействие информационных ресурсов с клиентом. Сервер базы данных используется для хранения различных данных, используемых в информационной системе управления, и данные вводятся непосредственно программой управления базой данных. Клиенту системы требуется только браузер. Соответствующий персонал может запрашивать, добавлять, изменять, удалять данные и управлять информацией через браузер.
3. Шаблон проектирования системы.
Шаблон проектирования — это формальное представление, используемое объектно-ориентированными программистами для решения задач программирования. В настоящее время в большинстве веб-приложений со структурой браузер/сервер браузер напрямую взаимодействует с пользователями в форме HTML или JSP и отвечает на запросы пользователей. Хотя это интуитивно понятно, объем данных, обрабатываемых большинством информационных систем управления, ошеломляет. По мере увеличения кода страница JSP будет раздуваться, а веб-сервер будет перегружаться. Таким образом, на среднем уровне применяется шаблон проектирования, основанный на контроллере представления модели (MVC.Model-View-Controller). Уровень модели используется для реализации бизнес-логики, уровень представления используется для отображения пользовательского интерфейса, а уровень контроллера в основном отвечает за отношения управления между уровнем представления и уровнем модели. В конкретной реализации сервлет используется в качестве контроллера приложения, документ JSP используется в качестве представления, а JavaBeans используется для представления модели. Все запросы отправляются сервлету в качестве контроллера, который принимает запросы и отвечает, отправляя их соответствующему JSP на основе информации запроса. В то же время сервлет также генерирует экземпляры JavaBeans в соответствии с требованиями JSP и выводит их в среду JSP. JSP может получать данные в JavaBeans путем прямого вызова методов или использования пользовательских тегов UseBean. Этот шаблон проектирования эффективно отделяет уровень данных от уровня представления, что упрощает и ускоряет работу по разработке. В этом режиме проектирования передача данных между различными уровнями показана на рисунке 2.
Рисунок 2. Передача данных в шаблоне проектирования MVC. Рисунок
4. Технология доступа к данным.
База данных является основным содержимым информационной системы управления. В настоящее время существует множество технологий веб-интерфейса и интерфейса баз данных. Среди них JDBC — это интерфейс прикладного программирования для программ Java для подключения и доступа к базам данных. Он состоит из набора классов и интерфейсов, написанных на языке Java, и представляет собой Java API для выполнения SQL. заявления. В информационной системе управления, представленной в этой статье, для доступа к данным используется технология JSP/Servlet+JDBC, то есть клиент не генерирует команды запроса к базе данных, а браузер на клиенте устанавливает соединение с веб-сервером среднего уровня. через URL-адрес. Веб-сервер в основном отвечает за получение запросов данных HTTP от локальных или удаленных браузеров. Затем, после того как сервлет на среднем уровне получает запрос, он использует стандартный API, предоставляемый JDBC, для доступа к базе данных и выполнения соответствующих операций путем выполнения SQL. высказывания в программе. Затем сервлет передает данные запроса в JSP и, наконец, генерирует стандартную страницу JSP и возвращает результаты запрашивающему браузеру. Таким образом, он не только отделяет клиента от сервера базы данных, но и повышает эффективность доступа к базе данных.
5. Пример
Чтобы лучше проиллюстрировать метод использования JSP/Servlet для построения трехуровневой информационной системы управления, автор возьмет пример для анализа и проектирования информационной системы управления товарными почтовыми заказами. Эта информационная система управления почтовыми заказами использует язык Java для разработки серверных приложений и использует IBM Webshpere в качестве сервера приложений. Система управления базой данных использует SQL Server7.0, а программа интерфейса базы данных использует интерфейс JDBC2. Вся система использует веб-подход для реализации управления клиентами, управления персоналом, управления заказами, управления товарами, исходящего управления, входящего управления и других бизнес-обработок, управления процессами, контроля полномочий, статистики запросов и функций печати для бизнеса по доставке по почте. . Он подробно анализирует функцию запроса части управления заказами.
5.1 Проектирование базы данных
Для части заказа необходимо определить таблицу информации о заказе Db_order. Поля в таблице включают номер заказа (ddbh), номер клиента (khbh), номер продукта (spbh), цену за единицу продукта (spdj) и количество заказа (dgsl), общая стоимость (hjzj), полученная сумма (sdje), дата получения (sdrq). Чтобы использовать таблицу Db_order в приложении, необходимо установить соединение с базой данных. Эта функция реализуется sql_data.java. Часть его кода выглядит следующим образом.
public class sql_data {
String url = "jdbc:odbc:PostOrder" // используйте здесь имя хоста и номер порта;
String login = "sa" // используйте здесь свой логин
Строковый пароль ="zh12345" // используйте здесь свой пароль
соединение общедоступного соединения = ноль;
публичное заявление st = null;
общедоступный набор результатов rs = null;
пытаться
{
Class.forName("com.microsoft.jdbc.sqlserver.SqlServerDriver");
conn =DriverManager.getConnection(url, пользователь, пароль);
} поймать (исключение e)
{
е.printStackTrace();
}
}
5.2 Проектирование среднего уровня
В процессе разработки информационной системы управления товарными почтовыми заказами, основываясь на идее шаблона проектирования MVC и в сочетании с реальной ситуацией в системе, мы дополнительно разделили уровень модели в соответствии с разделением труда. . Уровень модели обычно состоит из множества JavaBeans. В зависимости от различных ролей, которые эти bean-компоненты играют в системе, они делятся на три типа: командные bean-компоненты, bean-компоненты данных и bean-компоненты представления. Среди них командные компоненты используются для реализации бизнес-логики, то есть обработки экземпляров объектов; компоненты данных используются для описания и определения моделей объектов, абстрагированных от реального мира, а компоненты представления используются для дальнейшей инкапсуляции и возврата экземпляров обработанных объектов; .клиенту.
Сначала командные компоненты получают информацию, передаваемую сервлетом, инкапсулируют бизнес-информацию в экземпляры объектов, определенные компонентами данных, и обрабатывают информацию в соответствии с бизнес-логикой. Когда необходимо вызвать операцию доступа к базе данных, командные компоненты используют экземпляр объекта и соответствующую управляющую информацию для завершения операции с базой данных через метод интерфейса базы данных. После завершения операции с базой данных возвращенный набор записей инкапсулируется в экземпляр объекта Data Beans. После определенной обработки информация, которую необходимо вернуть в интерфейс, инкапсулируется в предопределенные View Beans, и информация возвращается через View Beans. . к интерфейсу.
Ниже приведена часть кода OrderGl.java, который запрашивает и обрабатывает заказы.
общественный класс OrderGl {
…
//Определите следующий метод для завершения операции запроса заказа
публичная финальная строка currentMultiQuery(
запрос javax.servlet.http.HttpServletRequest,
ответ javax.servlet.http.HttpServletResponse)
выдает com.goods.Exception.GoodsException
{
//Получаем соответствующую информацию запроса со страницы JSP
com.goods.view.OrderView представление = getView (запрос, ответ);
String ddbh = view.getDdbh(); //Номер заказа
//Сгенерировать оператор SQL
String sqlQuery = "выберите ddbh,khbh,spbh,spdj,dgsl,hjzj,sdje,sdrq из db_order";
//Выполняем операцию запроса
java.util.Vector вектор = новый java.util.Vector();
com.goods.sjk.sql_data per = новый com.goods.sjk.sql_data();
пытаться
{
java.sql.ResultSet rs = per.executeQuery(sqlQuery);
пока (rs.next())
{
com.goods.dx.Db_order temp = новый com.goods.dx.Db_order();
temp.setDdbh(rs.getString("ddbh"));
temp.setKhbh(rs.getString("khbh"));
temp.setSpbh(rs.getString("spbh"));
temp.setSpdj(rs.getString("spdj"));
temp.setDgsl(rs.getString("dgsl"));
temp.setHjzj(rs.getString("hjzj"));
temp.setSdje(rs.getString("sdje"));
temp.setSdrq(rs.getString("sdrq"));
вектор.addElement(темп);
}
рс.закрыть();
пер.закрыть();
} catch (бросаемый e)
{
е.printStackTrace();
пер.закрыть();
cxyw.printErrorToWeb(запрос, ответ, e.toString());
вернуть e.toString();
}
//Отправить соответствующую информацию в интерфейс view.setVct(vector);
request.setAttribute("просмотр", просмотр);
вернуть «1»;
}
}
5.3 Представление дизайна клиента
— это часть приложения, которая отображает информацию пользователю, то есть веб-страница возвращается пользователю после того, как пользователь делает запрос. При нажатии кнопки «Запрос» будет отображена страница результатов с информацией о заказе ordercx.jsp, полученная на основе номера заказа. Это делается с использованием следующего синтаксиса на странице JSP:
<jsp:useBean id="view" class="com.goods.view.OrderView"scope="request" />
<jsp:useBean id="temp" class="com.goods.dx.Db_order"scope="page" />
<jsp:useBean>Действие использует идентификатор и область действия для обнаружения каждого существующего объекта, а затем передает <%=view.getDdbh()
и <%=temp.getDdbh()%> для получения связанных данных.
6. Резюме
В этой статье предлагается решение для разработки трехуровневой информационной системы управления на основе веб-технологий с использованием технологии JSP/Servlet. Это решение реализует разделение уровня представления и логического уровня, что делает систему высокомасштабируемой. В то же время оно обеспечивает полную идею и метод разработки информационных систем управления.