1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/liuge1988-mango-platform

Клонировать/Скачать
README.md 13 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 01.12.2024 21:04 fc5d8b3

Проект Mango

Mango — это система управления правами доступа, основанная на таких технологиях, как Spring Boot, Spring Cloud, Vue.js и Element UI. Она представляет собой систему с разделением на клиентскую и серверную части, которая обеспечивает управление правами доступа.

Система Mango также является примером платформы для быстрой разработки на Java EE, которая может быть использована разработчиками как для изучения технологий, так и для создания конкретных проектов.

Обложка книги

[Изображение]

Ссылки на книгу

Техническая коммуникация

Для обсуждения вопросов и обмена опытом автор создал группу в QQ. Присоединяйтесь!

QQ: 429854222

Блог автора: https://www.cnblogs.com/xifengxiaoma/

Функциональный список

✔ Система входа: вход пользователя, аутентификация (с использованием токенов).

✔ Управление пользователями: создание, изменение, удаление и поиск пользователей.

✔ Управление организациями: создание, изменение, удаление и поиск организаций.

✔ Управление ролями: создание, изменение, удаление и поиск ролей.

✔ Управление меню: создание, изменение, удаление и поиск меню.

✔ Управление словарями: создание, изменение, удаление и поиск словарей.

✔ Управление конфигурацией: создание, изменение, удаление и поиск конфигурации.

✔ Журнал входа: запись журнала входа пользователей, просмотр записей журнала входа.

✔ Операционный журнал: запись операционного журнала пользователей, просмотр записей операционного журнала.

✔ Онлайн-пользователи: отображение статистики текущих онлайн-пользователей на основе статуса входа.

✔ Мониторинг данных: настройка информации Druid, предоставление эффективного мониторинга SQL-данных.

✔ Агрегированный документ: настройка Swagger-документа, предоставление лаконичного и красивого API-документа.

✔ Резервное копирование и восстановление: резервное копирование данных системы и их восстановление.

✔ Переключение тем: поддержка переключения тем, настройка цвета темы, реализация переключения тем.

✔ Сервисное управление: интеграция с Consul для регистрации сервисов и обнаружения.

✔ Серверное наблюдение: интеграция со Spring Boot Admin для всестороннего наблюдения за сервисами.

✔ Вызов сервиса: интеграция с Ribbon и Feign для вызова сервисов и балансировки нагрузки.

✔ Отключение сервиса: интеграция с Hystrix и Turbine для отключения сервисов и мониторинга.

✔ Сетевой шлюз: интеграция с Spring Cloud Zuul для реализации единого сетевого шлюза API.

✔ Трассировка цепочки: интеграция с Sleuth и Zipkin для отслеживания распределённых цепочек вызовов.

✔ Центр конфигурации: интеграция с Cloud Config и Bus для реализации распределённого центра конфигурации.

Архитектура программного обеспечения

Клиентская архитектура

Среда разработки

IDE: VS Code 1.27

NODE: Node 10.15.x

NPM: NPM 6.4.x

Выбор технологии

Frontend framework: Vue 2.x

Компоненты страницы: Element 2.x

Управление состоянием: Vuex 2.x

Взаимодействие с сервером: axios 0.18.x

Иконки: Font Awesome 4.x

Структура проекта

mango-ui

— build: модули, связанные с компиляцией проекта, автоматически генерируются шаблонами проекта.

— config: модули, связанные с конфигурацией проекта, автоматически генерируются шаблонами проекта.

— src: исходный код проекта, основная работа по разработке выполняется в этом каталоге.

— assets: статические ресурсы, такие как значки, шрифты и информация о локализации.

— components: библиотека компонентов, инкапсуляция часто используемых компонентов.

— http: модуль взаимодействия с сервером, унифицированный интерфейс запросов к серверу API.

— i18n: модуль интернационализации, использование Vue i18n для интернационализации.

— mock: модуль Mock, имитация вызовов интерфейса и возврат настроенных данных.

— permission: модуль контроля разрешений, обработка логики аутентификации разрешений.

— router: модуль маршрутизации, отвечает за настройку различных маршрутов страниц.

— store: модуль управления состоянием, предоставляет способ совместного использования состояния между компонентами.

— utils: модуль инструментов, предоставляет некоторые общие методы инструментов.

— views: модуль страниц, в основном размещает различные компоненты представления страниц.

Серверная архитектура

Среда разработки

IDE: eclipse 4.x

JDK: JDK1.8.x

Maven: Maven 3.5.x

MySQL: MySQL 5.7.x

Consul: Consul 1.4.0

Выбор технологии

Основная структура: Spring Boot 2.x

Сервисное управление: Spring Cloud Finchley

Безопасность: Spring Security 5.x

Представление: Spring MVC 5.x

Постоянное хранилище: MyBatis 3.x

Пул соединений с базой данных: Druid 1.x

Очередь сообщений: RabbitMQ

Документ API: Swagger 2.9.x

Ведение журнала: SLF4J, Log4j

Структура проекта

mango-common: общий код, в основном содержит некоторые классы инструментов.

mango-core: инкапсулирует бизнес-модули, в основном инкапсулирует общие бизнес-модули.

mango-admin: бэкэнд-управление, включая управление пользователями, управление ролями, управление меню и т. д.

mango-backup: резервное копирование системных данных, можно выбрать независимую установку.

mango-monitor: мониторинг системы, мониторинг служб Spring Boot.

mango-producer: пример поставщика услуг, удобный для построения модулей на этой основе.

mango-consumer: пример потребителя услуг, удобный для построения модулей на этой основе.

mango-hystrix: отключение службы и мониторинг, сбор и обобщение статистики отключения.

mango-zuul: сетевой шлюз API, централизованное управление и пересылка внешних вызовов запросов.

mango-config: центр конфигурации, генерация интерфейсов доступа к файлам конфигурации GIT.

mango-consul: центр регистрации, каталог установки и руководства по установке.

mango-zipkin: отслеживание цепочки, каталог установки и руководство по установке.

config-repo: репозиторий конфигурации, централизованно хранит файлы конфигурации системы в GIT.

mango-pom: агрегатный модуль, только для упрощения упаковки, выполнение упаковки всех модулей одним ключом.

Руководство по установке

Установка клиента

Получите исходный код клиента, весь клиентский проект — это один проект mango-ui, скопируйте его в локальный каталог.

Скомпилируйте исходный код в каталоге mango-ui с помощью команды npm install, чтобы загрузить и установить зависимости проекта.

Запустите проект с помощью команды npm run dev, запустите проект, после запуска вы можете получить доступ через http://localhost:8080.

Упакуйте проект с помощью команды npm run build, упакуйте клиентский проект, после упаковки будет создан каталог dist. Поместите сгенерированный каталог непосредственно в веб-сервер, такой как Tomcat, и запустите службу для доступа.

Включите или отключите функцию Mock: эта система использует архитектуру разделения клиента и сервера, если функция Mock включена на клиенте, большинство интерфейсных данных могут быть смоделированы. Измените значение переменной openMock в файле src/mock/index.js, чтобы включить или отключить функцию Mock.

Измените конфигурацию: если вы хотите настроить порт (по умолчанию 8080), вы можете изменить свойство port в config/index.js. Конфигурация серверного интерфейса и резервного сервера находится в src/utils/global.js, пожалуйста, внесите соответствующие изменения, если необходимо.

Установка сервера

Получите исходный код сервера, получите все проекты в структуре, указанной выше, и скопируйте их в локальный каталог.

Импортируйте проект Maven с помощью Eclipse, перед этим убедитесь, что у вас установлены JDK и Maven.

Скомпилируйте исходный код:

А. Запустите Maven с помощью mvn clean install для компиляции исходного кода.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/liuge1988-mango-platform.git
git@api.gitlife.ru:oschina-mirror/liuge1988-mango-platform.git
oschina-mirror
liuge1988-mango-platform
liuge1988-mango-platform
master