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

OSCHINA-MIRROR/hsweb-hsweb-framework

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

HSWeb4: основанный на Spring-Boot2, полностью реактивный бэкенд-фреймворк

Codecov Build Status License

Функции и особенности

  • Универсальный реактивный CRUD на основе R2DBC и Easy-ORM:

    • Поддержка H2, MySQL, SQL Server и PostgreSQL.
  • Реактивное управление транзакциями R2DBC.

  • Реактивный контроль доступа и получение информации о правах доступа:

    • RBAC (Role-Based Access Control) для контроля прав доступа.
    • Контроль доступа к данным.
    • [] Двухфакторная аутентификация.
  • Многомерное управление правами доступа.

  • Реактивная кеширование.

  • [] Нереактивная поддержка (MVC, JDBC).

  • [] Встроенные бизнес-функции:

    • Управление правами:
      • Пользовательский менеджмент.
      • [] Установка прав.
      • [] Распределение прав.
    • [] Загрузка файлов:
      • Статическая загрузка файлов.
      • [] Потоковая передача файлов.
    • Словарь данных.

Примеры

https://github.com/zhou-hao/hsweb4-examples

Сценарии применения

  1. Полностью открытый бэкенд-менеджмент.
  2. Модульный бэкенд-менеджмент.
  3. Расширяемый бэкенд-менеджмент.
  4. Интеграция с различными общими функциями бэкенда.
  5. Фронтенд и бэкенд разделены.

Обратите внимание: проект в основном основан на Spring Boot и Spring Webflux. Перед использованием HSWeb рекомендуется иметь представление о Project Reactor и Spring Boot.

Проект содержит множество модулей? Не пугайтесь! Мы не рекомендуем клонировать проект и вносить изменения напрямую. Вместо этого используйте зависимости Maven для выбора необходимых модулей. После официальной публикации все модули будут доступны в центральном репозитории Maven.

Документация

Для ознакомления с использованием каждого модуля обратитесь к файлу README.md в соответствующем модуле. Прежде чем начать использовать модуль, рекомендуется ознакомиться с его назначением.

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

  1. Java 8.
  2. Maven 3.
  3. Spring Boot 2.x.
  4. Project Reactor для реактивного программирования.
  5. HSWeb Easy ORM для R2DBC ORM.

Краткое описание модулей

Модуль Описание
hsweb-authorization Контроль прав доступа
hsweb-commons Базовые общие функции
hsweb-concurrent Пакет параллелизма, кеширования и т. д.
hsweb-core Ядро фреймворка, базовые инструменты
hsweb-datasource Источник данных
hsweb-logging Логирование
hsweb-starter Загрузчик модулей
hsweb-system Общие системные функции

Основные характеристики

  1. Реактивность: первый фреймворк, основанный на Spring Webflux, R2DBC, полностью реактивен.
  2. DSL-стиль: расширяемый универсальный CURD, поддерживает прямую передачу параметров фронтендом без необходимости беспокоиться о SQL-инъекциях.
//where name = #{name}
createQuery()
      .where("name",name)
      .fetch();

//update s_user set name = #{user.name} where id = #{user.id}
createUpdate()
      .set(user::getName)
      .where(user::getId)
      .execute();
  1. Аналогично JPA:
@Table(name = "s_entity")
public class MyEntity {
    
    @Id
    private String id;
    
    @Column
    private String name;

    @Column
    private Long createTime;
}

Просто добавьте аннотации, и вы сможете выполнять операции CRUD.

@Autowire
private ReactiveRepository<MyEntity, String> repository;
  1. Гибкий контроль прав доступа:
@PostMapping("/account")
@SaveAction
public Mono<String> addAccount(@RequestBody Mono<Account> account){
     return accountService.doSave(account);
}

Лицензия

Apache 2.0

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

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

Введение

HSWeb4 — полнофункциональная реактивная среда для управления бэкендом. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

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

Участники

все

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

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