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

OSCHINA-MIRROR/wirechen-fast-sbapi

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

Краткое введение

FastSbAPI — это проект, основанный на SpringBoot и SpringDataJPA, предназначенный для быстрого создания Restul API. Он вдохновлён другим выдающимся открытым проектом: spring-boot-api-project-seed. В FastSbAPI добавлена возможность визуализации каркаса, а также используется SpringDataJPA для постоянного слоя. Это делает использование Java для быстрой разработки API хорошим выбором.

Использование учебника

Проект предлагает видеоурок, который можно посмотреть после регистрации.

Функции

  • Реализовано:
    • Возможность генерации SQL-скриптов, dataobject, repository, service и controller с помощью визуального каркаса.
    • Структура проекта, конфигурация и файл POM, которые соответствуют лучшим практикам Java.
    • Унифицированные результаты ответов и обработка исключений.
    • Простой пользовательский логин и регистрация.
    • Аутентификация на основе JWT.
    • Логирование в производственной среде с использованием logback и ежедневным роллингом записей.
    • Абстракция и упаковка основных методов.
  • В разработке:
    • Интеграция Swagger для автоматического создания документации API при генерации API.

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

В проекте используются следующие компоненты:

  • aspect: аспектно-ориентированный класс (AOP).
  • config: конфигурация проекта.
  • controller: слой маршрутизации API.
  • dataobject: объекты JavaBean. Включает DTO (объекты передачи данных), модели (данные для сохранения), RO (запросные объекты) и VO (объекты представления).
  • enum: перечисление.
  • exception: пользовательские исключения. Включает обработчик исключений.
  • repository: хранилище данных (использует SpringDataJPA в качестве постоянного слоя).
  • service: бизнес-интерфейсы. Включает реализацию сервиса.
  • utils: набор инструментов проекта.

Модель передачи данных

Основное внимание уделяется преобразованию и передаче объектов между различными слоями проекта. Выбор Java обусловлен её строгостью и высокой ремонтопригодностью. Несмотря на то что Java не является быстрым инструментом разработки, в проекте реализованы сложные преобразования между объектами для обеспечения хорошей основы для будущего обслуживания и расширения.

При запросе интерфейса клиент отправляет запрос с объектом RO (request object), а при получении результата получает объект VO (view object). Оба объекта передаются в формате JSON.

Контроллер преобразует RO в DTO или модель в зависимости от бизнес-требований. Затем сервис преобразует DTO в модель и передаёт её в репозиторий. Репозиторий работает с моделями как с хранилищем данных и взаимодействует с таблицами базы данных. Контроллер должен преобразовать DTO или модель в VO при ответе. VO может удовлетворить различные потребности переднего плана, а модель должна строго соответствовать таблицам базы данных.

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

Для работы с проектом требуется JDK 8, Maven 3 и MySQL 5.7.

Быстрый старт

  1. Проект использует Lombok, поэтому необходимо убедиться, что компилятор поддерживает этот плагин.
  2. Клонировать проект.
  3. Выполнить инициализацию SQL-скрипта.
  4. Запустить проект и перейти к http://localhost:8080/api/v1/code/index, чтобы сгенерировать код.

Конец

Автор проекта надеется на поддержку и интерес со стороны сообщества.


Обновление

Компания автора использовала этот проект в качестве основы для своего бэкенда, предоставляя API-сервисы для пяти типов клиентов. Автор также представил структуру пакета и упрощённую архитектуру бэкенда компании.

Кроме того, автор отметил, что Spring Data Rest может быть более предпочтительным решением для создания API, поскольку он позволяет автоматически генерировать Restful API на основе определения модели.

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

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

Введение

FastSbAPI — это проект, предназначенный для быстрой разработки RestFul API, созданный на основе SpringBoot и SpringDataJPA. Развернуть Свернуть
Отмена

Обновления (1)

все

Участники

все

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

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