Если у вас есть какие-либо полезные комментарии, пожалуйста, поддержите автора, нажав три кнопки в правом верхнем углу: «смотреть», «звезда» и «форк». 🙏🙏🙏
SpringBoot версия | JDK версия | MySQL | Tomcat | Ветвь |
---|---|---|---|---|
2.3.xx | 8 | 5.7.xx | 9.x | master |
3.2.xx | 17 | 8.xx | 10.x | springboot3 |
EasyAdmin — это простой и лёгкий бэкенд-фреймворк для разработки административных систем на основе технологий SpringBoot2 (JDK1.8) + MybatiPlus + LayUI + Snaker + Mysql5.7. Он позволяет разрабатывать отдельно фронтенд и бэкенд или использовать их как единое целое. EasyAdmin представляет собой облегчённую версию RuoYi.
По сравнению с RuoYi EasyAdmin имеет следующие преимущества:
Здесь не говорится, что RuoYi плохой, это отличный открытый проект, и я также являюсь пользователем RuoYi. EasyAdmin — это фреймворк, разработанный мной на основе опыта работы над многими реальными проектами. Это инструмент, подходящий для небольших и средних компаний. Проще говоря, EasyAdmin — нож для нарезки мяса, а RuoYi — нож для разделки туш. Пользователи могут выбирать между ними в зависимости от своих потребностей.
Цель проекта — создать простую и лёгкую платформу для администрирования. В настоящее время используются относительно лёгкие и простые технологии. Например: Spring Boot, hutool-all, mybatis-plus, knife4j, sa-token, javamelody, snakerflow и другие. Будущее развитие будет направлено на создание эффективных и простых архитектур для малых и средних проектов.
Подходит для следующих сценариев: студенты, работающие над дипломными проектами; начинающие разработчики, желающие попрактиковаться; частные проекты, требующие быстрой разработки; малые и средние предприятия, нуждающиеся в фреймворке; глубокое изучение Spring Boot.
Архитектура проекта гибкая и разнообразная. Поддерживаются два режима разработки: разделение фронтенда и бэкенда и неразделение. Развёртывание может осуществляться различными способами: толстый JAR, Nginx обратный прокси, Nginx прямой прокси.
Адрес проекта: https://gitee.com/lakernote/easy-admin.
📕 Дополнительная техническая статья: 👉 «Создание фреймворка с нуля».
Этот открытый проект также основан на моей серии статей «Создание фреймворка с нуля».
📗 Адрес видео: 👉 Bilibili, где вы можете одним кликом подписаться, поставить лайк и оставить комментарий.
Видео постоянно обновляется, и мы приветствуем вашу критику и предложения.
🌽 Адрес: http://101.132.189.23:81/admin/login.html.
Низкопроизводительное оборудование, лёгкое нажатие.
— Имя пользователя / пароль: laker / lakernote (сотрудник отдела кадров — старый Ли, запрашивающий отпуск).
— Имя пользователя / пароль: yang / lakernote (руководитель отдела — Ян, утверждающий отпуска).
— Имя пользователя / пароль: zhang / lakernote (генеральный директор — Чжан, утверждающий запросы на отпуск более двух дней).
В данный момент проект находится в стадии разработки. Из-за моего низкого уровня знаний фронтенд-технологий разработка идёт медленно, и многие функции ещё не реализованы. Если есть желающие присоединиться к разработке, пожалуйста, свяжитесь со мной через WeChat ☎️ [lakernote].
Функция | Состояние | Соответствующая документация |
---|---|---|
Управление пользователями, отделами, меню и ролями 🐾 | ✅ | |
Контроль доступа на основе RBAC 🐾 | ✅ | Аутентификация и авторизация sa-token |
Интеграция API-документации на основе knife4j 🐾 | ✅ | Замена Swagger на Knife4j |
Мониторинг приложений на основе javamelody 🐾 | ✅ | Javamelody — мониторинг приложений |
Рабочий процесс на основе Snakerflow 🐾 | ✅ | Лёгкий рабочий процесс Snakerflow |
Анализ поведения пользователей на основе пользовательских аннотаций и AOP 🐾 | ✅ | Пользовательские аннотации и AOP для мониторинга поведения пользователей |
Генерация кода фронтенда и бэкенда на основе Freemrker 🐾 | ✅ | |
Контроль данных на основе плагина mybatis 🐾 | ✅ | Контроль данных с помощью Mybatis-Plus |
Динамическое управление задачами на основе SpringTask 🐾 | ✅ | Динамическое управление задачами с помощью Spring Task |
Онлайн-журнал и динамическая настройка уровней журнала 🐾 | ✅ | Онлайн-журнал и динамическая настройка уровней журнала |
Обеспечение уникальности и предотвращения повторных запросов 🐾 | ✅ | Соответствующая документация |
Уникальная функция фильтрации прав доступа 🐾 | ✅ | |
Фронтенд-маршрутизация | ❎ | Передняя кнопка управления |
🌲 Программная архитектура
Другие связанные статьи:
🌳 Выбор технологии
Фронтенд:
Здесь я хотел бы выразить свою благодарность Layui, Pear-Admin-Layui и layuimini, благодаря которым я смог создать EasyAdmin всего за неделю. Я начинающий фронтенд-разработчик.
Бэкенд:
🌼 Разработка учебника
Серверная часть
sql/easy-admin.sql
.src/main/resource/application.yaml
.server:
port: 8080
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/laker?serverTimezone=GMT%2B8&characterEncoding=utf8&useSSL=false
EasyAdminApplication.java
.В системе Windows браузер автоматически откроет главную страницу. Имя пользователя и пароль суперпользователя: admin/ilovelaker.
Клиентская часть
Есть два способа на выбор.
Способ 1: режим виртуального диска Spring Boot.
Запуск EasyAdminApplication.java
автоматически откроет главную страницу в браузере. Это относится к режиму интегрированной разработки.
Способ 2: чистый статический режим.
Это чисто статический метод, который можно запустить непосредственно в браузере, что относится к режиму разделения фронтенда и бэкенда.
web/admin/config/pear.config.yml
.## 配置 серверный адрес
admin:
server: http://localhost:8080
web/admin/index.html
выполните следующие действия, чтобы получить доступ к браузеру.Выполните CodeGenerator.java
, введите информацию в соответствии с подсказками. Ниже приведены примеры и пояснения.
-------- генерация файла вывода каталога ---------
D:\JT\easy-admin / src / main / java
-----------------
Введите имя модуля:
module.ext // влияет только на путь генерации кода Java D:\JT\easy-admin /src/main/java/com/laker/admin/module/ext
Пожалуйста, введите имя таблицы, разделяя несколько английских запятых:
ext_log // влияет на путь к интерфейсу определения http://xx:port/ext/log
// доступ к новому модулю через меню разрешений view/ext/log.html
После создания вы можете настроить доступ к пути view/ext/log.html
в меню разрешений, чтобы посетить новый модуль.
Имя таблицы базы данных: имя модуля + сущность, например: ext_log.
Поля базы данных: первичный ключ определяется как bigint и называется businessId, например: logId.
Онлайн-журнал
mvn clean package
, будет создан ZIP-файл, содержащий интерфейс и серверную часть, конфигурацию и сценарии запуска.Каталог:
target/easyAdmin-local-1.0.0.zip
.
Структура каталогов easyAdmin.zip выглядит следующим образом:
Выполните easy-admin.sql
.
Измените application-{profile}.yaml
, чтобы заполнить фактический IP-адрес и порт вашего сервера.
server:
port: 8080
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/laker?serverTimezone=GMT%2B8&characterEncoding=utf8&useSSL=false
nohup java -jar easy-admin-1.0.0.jar &
Рекомендуется использовать скрипт для запуска
sh run.sh start
, поскольку проверка подлинности включает в себя безопасность Java.
Сначала измените конфигурацию web/admin/config/pear.config.yml
, указав реальный IP-адрес и номер порта вашего сервера.
## Конфигурация серверного адреса
admin:
сервер: http://локальный хост: 8080
Вы также можете разместить интерфейс в Nginx.
Доступ к браузеру через http://ip:port/admin
.
Если развёртывание не удалось, обратитесь к Easyadmin развёртывание и развёртывание часто встречающихся проблем или свяжитесь с автором.
Личный WeChat: lakernote (присоединяйтесь к группе, добавьте меня, потяните вас, примечание: easyadmin).
Также есть публичный аккаунт WeChat: Ли Ге обсуждает архитектуру.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )