Веб-приложения – это специальный вид приложений, которые работают в глобальной сети Интернет или внутренней локальной сети по протоколу HTTP(S). Как правило, веб-приложения не требуют установки дополнительного программного обеспечения на стороне клиента, а вся логика, в основном, выполняется на стороне сервера.
Для отображения пользовательского интерфейса используется браузер – программа, способная распознавать язык разметки HTML (и сопутствующие технологии – таблицы стилей CSS, клиентский скриптовой язык программирования JavaScript и т.д.).
Для взаимодействия клиента и сервера используется протокол HTTP, который работает по схеме «запрос-ответ». В момент, когда клиент хочет обратиться к серверу, он генерирует запрос, который отправляется серверу. Сервер обрабатывает этот запрос и подготавливает ресурсы, которые будут отправлены клиенту. После этого сервер генерирует ответ, в котором содержаться все необходимые данные и отправляет клиенту. Работа веб-приложений заключается в формировании необходимых данных как раз в момент подготовки ресурсов на сервере. Обычно в этот момент запускается некоторый программный код, который содержит определенную бизнес логику.
По сравнению с настольными приложениями, веб-приложения обладают более ограниченными возможностями по формированию пользовательского интерфейса и клиентской функциональности. Развитие веб-технологий доказало, что веб-приложения также могут реализовывать богатые сценарии и успешно конкурировать с настольными приложениями. Кроме того, за последние несколько лет очень активно развиваются технологии, позволяющие сделать веб-приложения еще более интерактивными.
Основная цель данного курсового проекта – создание веб-приложения с организацией взаимодействия с базой данных на объектно-ориентированном языке Java.
Для достижения цели была поставлена задача создать систему учета документооборота производственного подразделения. Уровень сложности этой задачи позволяет в достаточной мере ознакомиться с основными этапами разработки веб-приложений и приобрести определенные навыки программирования.