- Данное веб-приложение представляет собой сервис для работы с заданиями (таск-менеджер):
- Необходимо добавить описание и выбрать одну или несколько категорий задания. Для этого необходимо пройти регистрацию и авторизацию:
- Ниже в таблице можно просмотреть список всех заданий. По умолчанию отображаются только невыполненные. Для показа всех заданий есть переключатель.
- Также реализована валидация всех форм приложения с помощью JS.
- Отображение списка категорий реализовано с помощью AJAX-запроса (типа POST) на сервлет CategoryServlet. Список категорий можно поменять.
- На страницах используется динамическое обновление контента с помощью технологии AJAX.
- Проект состоит из двух слоев: слой контроллеров (реализован на сервлетах) и слой по работе с БД PostgreSQL.
- Работа с БД осуществляется через Hibernate.
- Авторизация построена на базе фильтра (класс AuthFilter) и сервлета (класс AuthServlet).
- Для отображения авторизованного пользователя на главной странице используется AJAX-запрос на AuthServlet и объект Session.
- Работа с JSON-форматом производится с помощью библиотеки GSON.
- Страницы реализованы на HTML и Bootstrap.
Для сборки проекта необходимо:
- Установить JDK 14.
- Установить Maven.
- Установить сервер БД PostgreSQL, задать логин - postgres, пароль - password.
- Установить Tomcat.
- Скачать исходный код проекта.
- Перейти в корень проекта, где лежит файл
pom.xml
. - Собрать проект командой
mvn -DskipTests=true package
. При успешной сборке должна появиться папка target ctodo-2.war
. - Переименовать war-архив в
todo.war
. - Создать в pg_Admin БД todo.
- Открыть Query Tool для созданной БД и запустить SQL-скрипт
schema.sql
, находящийся в папкеdb
. - Скопировать
todo.war
в папкуwebapps
Tomcat. - Запустить сервер с помощью
startup.bat
из папкиbin
Tomcat.
Перейдем на главную страницу приложения.
Проставим галочку в чекбоксе в столбце Статус, задание станет выполненым. Нажмем на переключатель Невыполненные задания для показа выполненных: