Пример веб-приложения на популярном стеке технологий и инструментов Java Enterprise с авторизацией и правами доступа на основе ролей. Работа с приложением реализована через веб-интерфейс с применением Ajax, а также по REST в формате JSON. Весь функционал приложения покрывается JUnit-тестами.
Приложение разработано на Java 8 с использованием следующих фреймворков и инструментов:
Maven, Spring Framework, Spring Data JPA, Spring Security, Hibernate ORM, Hibernate Validator, Apache Tomcat, PostgreSQL, SLF4J, Logback, JSP, Jackson, JUnit, JavaScript, JQuery + plugins, Bootstrap
Демонстрация приложения доступна в облаке по адресу http://tandser.herokuapp.com. Как правило, старт приложения занимает не больше минуты, � это время необходимо Heroku, чтобы развернуть приложение на сервере. Если при первом обращении приложение оказалось недоступным, повторите попытку.
Для входа в приложение воспользуйтесь аккаунтами тестовых персонажей (см. info.md) или зарегистрируйтесь.
Приложение интернационализовано. Имеется поддержка русского и английского языков. Пользование приложением осуществляется через регистрацию и дальнейшую авторизацию.
В приложении пользователям доступна функция сохранения информации о приёме пищи, при этом записи подсвечиваются в соответствии с указанной пользователем нормой калорий относительно суток. Цвет даёт наглядное представление о том, превышена ли пользователем норма калорий или нет.
Администратору кроме функции сохранения информации о приёме пищи, доступны функция управления пользователями (запрет доступа, удаление) и изменения информации в пользовательском профиле.
Как пользователи, так и администраторы приложения в любой момент могут редактировать и удалять записи о приёмах пищи, а также обновлять информацию в личном профиле.
В приложении используется база данных PostgreSQL. Локальная конфигурация JDBC-драйвера располагается в src / main / resources / properties / localhost.properties. Инициализация базы данных осуществляется с помощью сценариев, которые можно обнаружить в src / main / resources / ddl. Будьте внимательны при развёртывании приложения на вашем компьютере и в случае необходимости отредактируйте локальный профиль конфигурации Spring-контекста (см. src / main / resources / spring / repository.xml), конфигурацию драйвера и сценарии для базы данных под ваши настройки.
Доступ к веб-службе REST выполняется через базовую авторизацию зарегистрированных в приложении пользователей. Смотрите таблицу в info.md, в которой отражена структура служб, которая включает поддерживаемые HTTP-методы и целевые URL для различных операций.