BootDo-JPA: открытый фреймворк, ориентированный на обучение
Платформа
Группа [1] 
BootDo-JPA — это высокоэффективный, низкоуровневый, обучающий и ориентированный на микросервисы открытый Java EE фреймворк разработки.
BootDo-JPA построен на основе SpringBoot и включает в себя следующие компоненты:
- SpringDataJPA для доступа к данным;
- ApacheShiro для авторизации;
- Ehcahe для кэширования часто используемых данных.
Основная цель BootDo-JPA — поддержка обмена опытом и обучения для систем управления бэкендом. Фреймворк включает базовые функции системы управления бэкендом и эффективный инструмент генерации кода.
Функции включают:
- управление системой (пользовательское управление, управление организацией, региональное управление);
- управление контентом (управление контентом, управление категориями, управление веб-сайтом, управление общими сообщениями, управление файлами);
- онлайн-управление (простой процесс отпуска);
- генерация кода (автоматизация повторяющихся задач).
Интерфейс пользователя разработан с использованием Twitter Bootstrap, который обеспечивает простоту структуры, высокую производительность и привлекательный внешний вид.
Фреймворк использует многоуровневую архитектуру, двойную проверку и шифрование данных для обеспечения безопасности. Управление проектами осуществляется с помощью Maven, что упрощает разработку и расширение проекта.
В настоящее время BootDo-JPA состоит из четырёх основных модулей:
- Модуль управления системой (SYS), включающий корпоративную структуру (пользовательский менеджмент, организационный менеджмент, региональный менеджмент), управление меню, управление ролями, управление словарями и другие функции.
- Модуль управления контентом (CMS), включающий управление контентом (статьи, ссылки), управление категориями, управление сайтом, общие сообщения, управление файлами и другие функции.
- Онлайн-модуль управления (OA), предоставляющий простой процесс отпуска.
- Модуль генерации кода (GEN), автоматизирующий повторяющиеся задачи.
BootDo-JPA предоставляет ряд инструментов для упаковки, включая инструменты ведения журнала, кэширования, проверки сервера, управления словарями, а также другие полезные инструменты. Кроме того, предоставляется мощный инструмент генерации кода.
Встроенные функции
- Управление пользователями: пользователи являются операторами системы, эта функция в основном предназначена для настройки пользователей системы.
- Управление организациями: настройка организационных структур системы (компании, отделы, группы), представление в виде дерева, возможность свободно настраивать иерархию.
- Региональное управление: модель городских районов системы, например, страна, провинция, город, район.
- Управление меню: настройка меню системы, прав доступа, разрешений кнопок и других функций.
- Управление ролями: распределение прав доступа ролей, настройка ролей по организациям для разграничения доступа к данным.
- Управление словарями: ведение часто используемых фиксированных данных в системе, таких как да/нет, пол, категория, уровень и т. д.
- Ведение журнала операций: запись и поиск обычных операций системы; запись и поиск аномальных событий системы.
- Мониторинг пула соединений: мониторинг текущего состояния пула подключений к базе данных, анализ SQL для выявления узких мест в производительности системы.
- Механизм рабочего процесса: реализация бизнес-процессов, онлайн-дизайн процессов.
Выбор технологии
-
Бэкенд:
- Основная структура: Spring Boot.
- Структура безопасности: Apache Shiro.
- Шаблонизатор: Thymeleaf.
- Слой персистентности: SpringDataJPA.
- Пул подключений к БД: Alibaba Druid.
- Кэширование: Ehcache, Redis.
- Управление журналами: SLF4J.
- Инструменты: Apache Commons, Jackson.
-
Фронтенд:
- JS-фреймворк: jQuery.
- Проверка на стороне клиента: JQuery Validation.
- Редактор форматированного текста: summernote.
- Таблицы данных: bootstrapTable.
- Всплывающие окна: layer.
- Элементы управления деревом: jsTree.
-
Платформа:
- Серверные промежуточные программы: встроенные в SpringBoot.
- Поддержка баз данных: в настоящее время поддерживается только MySQL, но не ограничивается базами данных.
- Среда разработки: Java, Eclipse Java EE, Maven, Git.
Меры безопасности
- Язык разработки: система разработана на языке Java, который обладает выдающимися универсальностью, эффективностью, переносимостью платформы и безопасностью.
- Многоуровневая архитектура: чёткое разделение на уровни (база данных, доступ к данным, бизнес-логика, представление), низкая связанность, каждый уровень должен проходить через интерфейс для подключения и выполнять проверку параметров (например, представление не может напрямую манипулировать базой данных), обеспечивая безопасность операций с данными.
- Двойная проверка: двойная проверка форм пользовательского ввода, включая серверную и клиентскую проверку, предотвращая изменение пользователем браузера (например, невозможность записи в текстовое поле, скрытие переменных для изменения, загрузка незаконных файлов и т. д.), обходя клиентскую проверку для прямого доступа к базе данных.
- Безопасное кодирование: все данные, отправляемые формами, проходят безопасное кодирование на сервере, предотвращая получение пользователями конфиденциальной информации через вредоносные сценарии и инъекции SQL, обеспечивая безопасность данных.
- Шифрование паролей: пароли пользователей при входе в систему подвергаются хешированию SHA1, которое является необратимым методом. Это гарантирует, что даже если пароль будет раскрыт, он останется зашифрованным.
- Принудительный доступ: система требует аутентификации пользователя для всех административных ссылок, предотвращая прямой доступ пользователей путём ввода URL.
Обратная связь
QQ группа 222702741
.
Лицензионное соглашение
Это программное обеспечение использует лицензию Apache License 2.0, пожалуйста, строго соблюдайте условия лицензии.
[x] Примечание: некоторые функции всё ещё находятся в разработке.
Имя пользователя и пароль системы
Имя пользователя: admin Пароль: 111111
Если вы считаете, что это вам помогло, пожалуйста, оставьте автору чашку кофе, указав своё имя или псевдоним, чтобы автор мог выразить свою благодарность.
Благодарности
Спасибо следующим пользователям за поддержку:
...
...
Комментарии ( 0 )