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

OSCHINA-MIRROR/fuhoujun-e

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Проектный демонстрационный адрес

Микросервисная демонстрация; QQ группа для общения: 204690448 540553957

Цель

Цель E-фреймворка — избавить разработчиков от необходимости создавать всё с нуля, позволяя им сосредоточиться на бизнес-функциях своих проектов.

Технические характеристики

  • Фреймворк разработан на основе микросервисной архитектуры, что обеспечивает лёгкость разделения и объединения компонентов.
  • В фреймворке используется разделение между фронтендом и бэкендом, при этом оба компонента могут быть развёрнуты отдельно. Фронтенд реализован с использованием облегчённого плоского дизайна (html+javascript+Bootstrap), который автоматически адаптируется под разные размеры экрана.
  • Бэкенд использует Spring boot и Spring Cloud, не требует развёртывания WAR-файлов и может быть запущен непосредственно из jar-файла.
  • Система безопасности основана на spring-security oauth2, обеспечивая проверку прав доступа как для фронтенда, так и для бэкенда. Реализованы пользовательское и клиентское авторизация.
  • Уровень постоянства данных основан на JPA, что позволяет эффективно работать с различными базами данных и предоставляет возможность динамических запросов с помощью аннотаций.
  • Данные передаются в формате JSON.
  • Сервисы реализованы в форме REST, что облегчает интеграцию с мобильными приложениями и использование Swagger для просмотра документации по API и тестирования сервисных интерфейсов онлайн.
  • Поддерживается единый вход (SSO), что позволяет интегрировать несколько систем в один портал.
  • Обеспечена высокая степень параллелизма и горизонтальное масштабирование, а также централизованное хранение сеансов.
  • Проект построен с использованием Gradle, что упрощает сборку различных компонентов по мере необходимости.

Сборка и настройка

  • Установите переменные среды JDK, проект требует JDK 8. Используйте кодировку UTF-8 для проекта и базы данных.
  • Если в Eclipse возникают проблемы с кодировкой журналов, настройте файл logback.groovy в проекте, чтобы установить кодировку журнала в UTF-8.
  • По умолчанию проект использует порт 8080, убедитесь, что этот порт не занят другими приложениями.
  • Для демонстрации используется база данных H2, настройка базы данных не требуется.
  • Имя пользователя и пароль по умолчанию: admin и 123456 соответственно.
  • Можно использовать MySQL, изменив настройки базы данных в файле resources/application.yml. Создание базы данных, таблиц и инициализация данных будут выполнены автоматически.
  • Подробные инструкции по сборке доступны в QQ группе (E-построение).
Построение монолитного сервиса
  • Запустите файл start-single-service.bat, после чего потребуется дождаться загрузки необходимых jar-файлов.
  • После успешной сборки перейдите в браузере по адресу http://localhost:8080.
Микросервисное построение
  • В каталоге e запустите gradlew build.
  • Затем в каталоге e выполните команду start-micro-service или start-micro-service-w (для запуска Swing-интерфейса, который позволяет просматривать логи различных проектов). Этот способ запуска предназначен только для демонстрации и быстрого старта, реальная конфигурация и запуск должны быть адаптированы под конкретные требования.
  • Успешный запуск приведёт к отображению страницы в браузере по адресу http://localhost:8080.

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

Eclipse

  • Непосредственно в каталоге e запустите команду gradlew eclipse для создания проекта в Eclipse. Импортируйте каталог e и запустите файл SingleApplicationMain в проекте e-example-single. Перейдите по адресу http://localhost:8080.
  • При запуске нескольких систем рекомендуется запускать проекты в следующем порядке:
    • e-example-ms-db
    • e-example-ms-discovery
    • e-example-ms-upm
    • e-example-ms-oauth2
    • e-example-ms-log
    • e-example-ms-demo
    • e-example-ms-ui
    • e-example-ms-gateway

Idea

  • Непосредственно в каталоге e запустите команду gradlew eclipse для создания проекта в Idea. Импортируйте каталог e и запустите файл SingleApplicationMain. Перейдите по адресу http://localhost:8080.

Разработка

  • Обычно каждый конкретный дочерний проект состоит из двух модулей: UI и Service. Структура каталогов может выглядеть следующим образом:
  • demo | |_ demo-ui | |_ demo-service
  • Можно объединять дочерние проекты в соответствии с примером, группируя их по необходимости.
  • Во время разработки рекомендуется расширять функциональность и заменять существующие функции в своём коде, вместо изменения самого фреймворка, чтобы упростить будущие обновления.

Структура фреймворка

Примеры развёртывания

О исходном коде

Исходный код фреймворка предоставляется в виде jar-файлов. При создании проекта в среде разработки исходный код автоматически загружается из Maven-репозитория. Исходный код можно просматривать и отлаживать в инструментах разработки. Также можно искать исходный код фреймворка на сайте http://search.maven.org, используя поиск по com.17jee.

Об изменении главной страницы (на примере проекта e-example-single)

    1. Изменение текста на главной странице: создайте пакет i18n в папке src/main/resources проекта e-example-single и скопируйте файлы .properties из пакета i18n фреймворка e-core-3.0.1.5 в новый пакет i18n. Внесите необходимые изменения.
    1. Изменение файлов главной страницы: создайте папку static в папке src/main/resources проекта e-example-single и скопируйте файл home_tabs.html из папки public фреймворка e-core-static-3.0.1.5. Внесите изменения в скопированный файл.
    1. Изменение файлов главной страницы: внесите изменения в файл конфигурации application.yml проекта e-example-single, указав собственный URL главной страницы через параметр e.conf.homePage.

Комментарии ( 0 )

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

Введение

Простой и удобный, стабильный и эффективный фреймворк для своевременной коммуникации (поддерживает одновременное использование нескольких портов, а также обмен данными между сокетами и WebSocket-сообщениями). Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/fuhoujun-e.git
git@api.gitlife.ru:oschina-mirror/fuhoujun-e.git
oschina-mirror
fuhoujun-e
fuhoujun-e
master