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

OSCHINA-MIRROR/troyzhxu-bean-searcher

22.04.2025 23:47
GitLife Service Account

🌻 Лучше

  • Bean Searcher Label
    • Оптимизировать вызов интерфейса LabelLoader, чтобы гарантировать, что параметр ids в методе load(key, ids) имеет значение.
    • Оптимизировать аннотацию @LabelFor, чтобы поддерживать ссылки на поля в родительских и дочерних классах.
Последнее сообщение коммита: docs(versions): 更新 v4.4 版本功能说明
22.04.2025 23:46
GitLife Service Account

✨ Функции* Bean Searcher

  • Добавлен IndexArrayParamFilter: поддерживает разбор параметров вида key[0]=v1 & key[1]=v2
  • Улучшен SuffixOpParamFilter: теперь поддерживает объединение параметров, таких как игнорирование регистра, например: name-ct-ic=xxx
  • Улучшен MetaResolver: добавлен метод clearCache(), который позволяет вручную очищать кэш BeanMeta
  • Улучшен @DbIgnore: теперь поддерживает аннотацию других пользовательских аннотаций, делая их аналогичными @DbIgnore
  • Добавлен AnnoUtils: может использоваться для разбора составных аннотаций
  • Bean Searcher Label (Первый выпуск)
    • Предоставлен @LabelFor аннотация, которая наследует @DbIgnore, и может использоваться для аннотации и разбора полей Label. Например: поле statusName может быть помечено как Label для перечисления status. В микросервисной среде: поле user_id в таблице order сервиса заказов, а поле username находится в сервисе членства, при запросе заказа невозможно напрямую объединить таблицы. В этом случае можно пометить поле username в OrderVO как Label для поля userId: @LabelFor("userId")
      private Long userId;
      // Значение загружается удаленно с помощью соответствующего LabelLoader и автоматически устанавливается
      @LabelFor("userId")
      private String username;
    
    • Предоставлен интерфейс LabelLoader, который может использоваться для загрузки пользовательских Label, включая загрузку локальных или удаленных данных Label - Предоставлен реализованный класс EnumLabelLoader, который используется для загрузки перечислений Label, метод использования следующий:
      @Bean
      public EnumLabelLoader enumLabelLoader() {
          return new EnumLabelLoader()   // Загружает все перечисления, которые должны быть разобраны в SearchBean
                  .with(UserType.class, UserType::getLabel)
                  .with(UserStatus.class, UserStatus::getLabel)
                  .with(OrderType.class, OrderType::getLabel)
                  .with(OrderStatus.class, OrderStatus::getLabel);
      }
    ```* Bean Searcher Boot Starter
    
  • Добавлен параметр конфигурации bean-searcher.params.filter.use-index-array для управления включением IndexArrayParamFilter, по умолчанию false
  • Добавлена автоматическая конфигурация для Bean Searcher Label
  • Bean Searcher Solon Plugin
    • Добавлен параметр конфигурации bean-searcher.params.filter.use-index-array для управления включением IndexArrayParamFilter, по умолчанию false
    • Добавлена автоматическая конфигурация для Bean Searcher Label
Последнее сообщение коммита: build(bs-demo-solon): 降级 solon 版本以解决兼容性问题
04.03.2025 10:38
GitLife Service Account

🌻 Улучшения

  • Улучшен JsonFieldConvertor: теперь поддерживаются все типы составных generics

🐛 Исправление ошибок

  • Исправлено: EnumParamConvertor: проблема с неподдерживаемыми пустыми строками как параметром
Последнее сообщение коммита: v4.3.6
04.03.2025 10:38
GitLife Service Account

✨ Возможности

  • Бинарный Поискщик
    * Улучшен DateParamConvertor, теперь поддерживаются следующие 8 форматов Date параметров:
    • yyyy-MM-dd — Например: 2024-01-01
    • yyyy-M-dd — Например: 2024-1-01 (новый)
    • yyyy-MM-d — Например: 2024-01-1 (новый)
    • yyyy-M-d — Например: 2024-1-1 (новый)
    • yyyy/MM/dd — Например: 2024/01/01
    • yyyy/M/dd — Например: 2024/1/01 (новый)
    • yyyy/MM/d — Например: 2024/01/1 (новый)
    • yyyy/M/d — Например: 2024/1/1 (новый)
      * Улучшен DateTimeParamConvertor, теперь поддерживаются следующие 312 форматов DateTime параметров:
    • yyyy-MM-dd — Автоматически дополняется до yyyy-MM-dd 00:00:00.000
    • yyyy-MM-dd H — Автоматически дополняется до yyyy-MM-dd H:00:00.000 (новый)
    • yyyy-MM-dd HH — Автоматически дополняется до yyyy-MM-dd HH:00:00.000
    • yyyy-MM-dd H:m — Автоматически дополняется до yyyy-MM-dd H:m:00.000 (новый)
    • yyyy-MM-dd HH:m — Автоматически дополняется до yyyy-MM-dd HH:m:00.000 (новый)
    • yyyy-MM-dd H:mm — Автоматически дополняется до yyyy-MM-dd H:mm:00.000 (новый)
    • yyyy-MM-dd HH:mm — Автоматически дополняется до yyyy-MM-dd HH:mm:00.000
    • yyyy-MM-dd H:m:s — Автоматически дополняется до yyyy-MM-dd H:m:s.000 (новый)
    • yyyy-MM-dd HH:m:s — Автоматически дополняется до yyyy-MM-dd HH:m:s.000 (новый)
    • yyyy-MM-dd H:mm:s — Автоматически дополняется до yyyy-MM-dd H:mm:s.000 (новый)
    • yyyy-MM-dd H:m:ss — Автоматически дополняется до yyyy-MM-dd H:m:ss.000 (новый)
    • yyyy-MM-dd HH:mm:s — Автоматически дополняется до yyyy-MM-dd HH:mm:s.000 (новый)
    • yyyy-MM-dd HH:m:ss — Автоматически дополняется до yyyy-MM-dd HH:m:ss.000 (новый) * yyyy-MM-dd H:mm:ss — Автоматически дополняется до yyyy-MM-dd H:mm:ss. 000 (новый)
    • yyyy-MM-dd HH:mm:ss — Автоматически дополняется до yyyy-MM-dd HH:mm:ss. 000
    • yyyy-MM-dd H:m:s. S — Например: 2024-01-01 1:1:1. 9 (новый)
    • yyyy-MM-dd H:m:s. SS — Например: 2024-01-01 1:1:1. 09 (новый)
    • yyyy-MM-dd H:m:s. SSS — Например: 2024-01-01 1:1:1. 009 (новый)
    • yyyy-MM-dd HH:m:s. S — Например: 2024-01-01 01:1:1. 9 (новый)
    • yyyy-MM-dd HH:m:s. SS — Например: 2024-01-01 01:1:1. 09 (новый)
    • yyyy-MM-dd HH:m:s. SSS — Например: 2024-01-01 01:1:1. 009 (новый)
    • yyyy-MM-dd H:mm:s. S — Например: 2024-01-01 1:01:1. 9 (новый)
    • yyyy-MM-dd H:mm:s. SS — Например: 2024-01-01 1:01:1. 09 (новый)
    • yyyy-MM-dd H:mm:s. SSS — Например: 2024-01-01 1:01:1. 009 (новый)
    • yyyy-MM-dd H:m:ss. S — Например: 2024-01-01 1:1:01. 9 (новый)
    • yyyy-MM-dd H:m:ss. SS — Например: 2024-01-01 1:1:01. 09 (новый)
    • yyyy-MM-dd H:m:ss. SSS — Например: 2024-01-01 1:1:01. 009 (новый)
    • yyyy-MM-dd HH:mm:s. S — Например: 2024-01-01 01:01:1. 9 (новый)
    • yyyy-MM-dd HH:mm:s. SS — Например: 2024-01-01 01:01:1. 09 (новый)
    • yyyy-MM-dd HH:mm:s. SSS — Например: 2024-01-01 01:01:1. 009 (новый)
    • yyyy-MM-dd HH:m:ss. S — Например: 2024-01-01 01:1:01. 9 (новый)
    • yyyy-MM-dd HH:m:ss. SS — Например: 2024-01-01 01:1:01. 09 (новый)
    • yyyy-MM-dd HH:m:ss. SSS — Например: 2024-01-01 01:1:01. 009 (новый)
    • yyyy-MM-dd H:mm:ss. S — Например: 2024-01-01 1:01:01. 9 (новый)
    • yyyy-MM-dd H:mm:ss. SS — Например: 2024-01-01 1:01:01. 09 (новый)
    • yyyy-MM-dd H:mm:ss. SSS — Например: 2024-01-01 1:01:01. 009 (новый)
    • yyyy-MM-dd HH:mm:ss. S — Например: 2024-01-01 01:01:01. 9
    • yyyy-MM-dd HH:mm:ss. SS — Например: 2024-01-01 01:01:01. 09
    • yyyy-MM-dd HH:mm:ss. SSS — Например: 2024-01-01 01:01:01. 009 > Всё это серия форматов yyyy-MM-dd [Time], поддерживаются ещё 7 серий форматов, каждая серия включает 39 вариантов формата, подробное описание не приведено:
    • yyyy-M-dd [Time] -- Серия форматов (новый)
    • yyyy-MM-d [Time] -- Серия форматов (новый)
    • yyyy-M-d [Time] -- Серия форматов (новый)
    • yyyy/MM/dd [Time] -- Серия форматов (новый)
    • yyyy/M/dd [Time] -- Серия форматов (новый)
    • yyyy/MM/d [Time] -- Серия форматов (новый)
    • yyyy/M/d [Time] -- Серия форматов (новый)### 🐛 Устранение ошибок
  • Bean Searcher Boot Starter
Последнее сообщение коммита: v4.3.5
04.03.2025 10:37
GitLife Service Account

✨ Возможности

  • Bean Searcher

    • Добавлено: OracleTimestampFieldConvertor, для совместимости с полем TIMESTAMP в Oracle. https://gitee.com/troyzhxu/bean-searcher/issues/IA87WB.
    • Улучшено: метод field(..) в конструкторе параметров, чтобы обеспечить совместимость с использованием неопределённых типов данных (коллекций/единичных значений).
    var params = MapUtils.builder()
            // если ifTrue истинно, вернуть список, иначе вернуть единичное значение, тип которого может быть различным, начиная с v4.3.4
            .field(User::getId, ifTrue ? List.of(1, 2, 3) : 4)
            .build();
    
    var params = MapUtils.builder()
            // если ifTrue истинно, вернуть массив примитивных типов, иначе вернуть единичное значение, тип которого может быть различным, начиная с v4.3.4
            .field(User::getId, ifTrue ? new int[]{1, 2, 3} : 4)
            .build();
    
    var params = MapUtils.builder()
            // если ifTrue истинно, вернуть массив объектов, иначе вернуть единичное значение, тип которого может быть различным, начиная с v4.3.4
            .field(User::getId, ifTrue ? new Integer[]{1, 2, 3} : 4)
            .build();
    ```* Bean Searcher Boot Starter
    * Добавлен новый параметр конфигурации `bean-searcher.field-converter.use-oracle-timestamp` для управления активностью `OracleTimestampFieldConverter`, по умолчанию `true`.
    * Упрощена структура класса `BeanSearcherProperties`, внутренние подклассы были преобразованы в внешние классы.
    
    
  • Bean Searcher Solon Plugin

    • Добавлен новый параметр конфигурации bean-searcher.field-converter.use-oracle-timestamp для управления активностью OracleTimestampFieldConverter, по умолчанию true.
    • Упрощена структура класса BeanSearcherProperties, внутренние подклассы были преобразованы в внешние классы.
Последнее сообщение коммита: CHANGELOG.md
04.03.2025 10:36
GitLife Service Account

✨ Возможности

  • Улучшение: BeanMeta теперь сохраняет порядок объявления полей в классах сущностей (то есть порядок генерации условий) https://github.com/troyzhxu/bean-searcher/issues/105
  • Улучшение: повышение уровня доступа метода extractFieldParams(...) в классе DefaultParamResolver, чтобы он мог быть переопределен в потомках, что позволяет пользователям выполнять пользовательскую настройку
  • Улучшение: выделение метода createBeanMeta(...) в классе DefaultMetaResolver, чтобы позволить пользователям настраивать подклассы BeanMeta

🐛 Исправление ошибок

  • Исправлено: проблема с тем, что дефолтный кэш LRUCache в классе DefaultGroupResolver не следовал правилам порядка доступа

🌻 Лучше

  • Обновлено Solon до версии 2.9.4
Последнее сообщение коммита: CHANGELOG.md
04.03.2025 10:36
GitLife Service Account

✨ Возможности

  • Bean Searcher
    • Улучшение DateTimeParamConverter: теперь поддерживаются целочисленные значения времени в качестве параметров
  • Bean Searcher Boot Starter
    • Добавлена новая функция SpringSqlExecutor: выполнение SQL с поддержкой транзакций Spring по умолчанию
    • Добавлен новый параметр конфигурации: bean-searcher.params.converter.zone-id: позволяет настроить используемую зону времени для DateTimeParamConverter
  • Bean Searcher Solon Plugin
    • Добавлена новая функция SolonSqlExecutor: выполнение SQL с поддержкой транзакций Solon по умолчанию
    • Добавлен новый параметр конфигурации: bean-searcher.params.converter.zone-id: позволяет настроить используемую зону времени для DateTimeParamConverter

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

https://bs.zhxu.cn/

Последнее сообщение коммита: v4.3.2
04.03.2025 10:36
GitLife Service Account

🌻 Улучшения

  • В класс SearchResult добавлен метод empty().
  • В класс RpcNames добавлен метод newNames(), заменивший прежний метод newConfig().
  • Метод buildForRpc() конструктора параметров улучшен с точки зрения производительности.
  • Обновлены зависимости: junit -> 5.10.3, slf4j -> 2.0.16, solon -> 2.9.0.

🐛 Исправление ошибок

Последнее сообщение коммита: v4.3.1
04.03.2025 10:36
GitLife Service Account

✨ Возможности

  • Bean Searcher
    * Улучшение BeanMeta: Добавлен метод getSqlSnippets(), который позволяет пользователям получать все распаршенные SQL фрагменты, связанные с данным сущностным классом.
    * Улучшение SearchSql: Добавлен метод getSearchParams(), который позволяет пользователям в SqlInterceptor получить распаршенные параметры поиска.
    * Улучшение MapBuilder: Добавлены методы or(...) и and(...), чтобы упростить использование логических групп в бэкэнде: https://gitee.com/troyzhxu/bean-searcher/issues/I9T66B
    * Улучшение MapBuilder: Добавлены методы buildForRpc() и buildForRpc(RpcNames), чтобы создавать параметры, подходящие для запроса удалённых API сервисов.
    * Улучшение MapBuilder: Второй аргумент методов field(FieldFn, Collection) и field(String, Collection) теперь может принимать значение null.
    * Улучшение DefaultParamResolver: Добавлена возможность управления объединением или заменой группы выражений, используемых методом groupExpr(...) при помощи свойства gexprMerge: https://gitee.com/troyzhxu/bean-searcher/issues/I9TAV6
    * Добавление JoinParaSerializer: Объединяет значения параметров типа коллекция в строку, разделенную запятыми.
    * Добавление ArrayValueParamFilter: Поддерживает передачу массивовых значений параметров совместно с методами MapUtils.flat(...) и MapUtils.flatBuilder(...).
    * Добавление SuffixOpParamFilter: Упрощает передачу параметров с использованием суффиксов операторов, таких как age-gt=25 вместо age=25 & age-op=gt. * Добавление JsonArrayParamFilter: Упрощает передачу параметров с использованием JSON массивов, таких как возраст=[20,30] вместо возраст-0=20 & возраст-1=30.
    * Добавление операторов AlwaysTrue (всегда истинно: at) и AlwaysFalse (всегда ложно: af): https://gitee.com/troyzhxu/bean-searcher/issues/I9TMFI
    * Обновление OracleDialect: Использует новую синтаксическую конструкцию offset ? rows fetch next ? rows only для пагинации, поддерживающую версии Oracle 12c (выпущенные после июня 2013 года) и выше.
    * Улучшение ExprParser: Добавлены константы логических символов, такие как & для логического "И" и | для логического "ИЛИ", которые больше не могут быть переопределены.
    * Улучшение FieldParam: Внутренний класс Value получил новый метод getIndex()
  • Bean Searcher Boot Starter
    • Добавлен параметр конфигурации bean-searcher.params.group.mergeable, указывающий, можно ли объединять группы выражений, по умолчанию true.
    • Добавлен параметр конфигурации bean-searcher.params.filter.use-size-limit, указывающий, следует ли использовать SizeLimitParamFilter, по умолчанию true. Используйте следующий текст:```markdown
      use-array-valueВключает лиArrayValueParamFilter`, значение по умолчанию — `true`.
  • Новая конфигурация bean-searcher.params.filter.use-suffix-op Включает ли SuffixOpParamFilter, значение по умолчанию — false.
  • Новая конфигурация bean-searcher.params.filter.use-json-array Включает ли JsonArrayParamFilter, значение по умолчанию — false.
  • Поддерживает создание пользовательского компонента JoinParaSerializer в виде бинов.
  • Bean Searcher Solon Plugin
    • Новая конфигурация bean-searcher.params.group.mergeable Указывает, можно ли объединять групповые выражения, значение по умолчанию — true.
    • Новая конфигурация bean-searcher.params.filter.use-size-limit Включает ли SizeLimitParamFilter, значение по умолчанию — true.
    • Новая конфигурация bean-searcher.params.filter.use-array-value Включает ли ArrayValueParamFilter, значение по умолчанию — true.
    • Новая конфигурация bean-searcher.params.filter.use-suffix-op Включает ли SuffixOpParamFilter, значение по умолчанию — false.
    • Новая конфигурация bean-searcher.params.filter.use-json-array Включает ли JsonArrayParamFilter, значение по умолчанию — false.
    • Поддерживает создание пользовательского компонента JoinParaSerializer в виде бинов.

🌻 Лучше

  • Обновление Junit до версии 5.10.2.
  • Обновление Solon до версии 2.8.3.

Текст был корректно оформлен согласно правилам перевода.
Последнее сообщение коммита: update README.zh-CN.md
04.03.2025 10:35
GitLife Service Account

🌻 Улучшено

  • Улучшен JsonFieldConvertor, теперь он поддерживает поля типа byte[], возвращаемые базой данных (например, поле JSON в базе данных H2)
Последнее сообщение коммита: 注释
04.03.2025 10:35
GitLife Service Account

🐛 Устранение ошибок

  • Устранена проблема с генерацией условий HAVING, используемых в динамическом запросе с параметрами полей в базе данных PostgreSQL. В случае, когда это условие содержало алиас поля, которое присутствовало в списке выборки (SELECT), генерировалось некорректное условие HAVING. Эта особенность синтаксиса поддерживается в MySQL, но не поддерживается в PostgreSQL.

🌻 Улучшения

  • Оптимизация условия соответствия полей в конверторе ListFieldConvertor: поля типа List, для которых не указан тип базы данных (dbType)
  • Оптимизация компонента bean-searcher-solon-plugin для использования без необходимости конфигурации
  • Обновление до версии solon 2.7.5
  • Обновление до версии spring-boot 2.7.18
  • Обновление до версии slf4j-api 2.0.13
  • Поддержка JDK 8
Последнее сообщение коммита: CHANGELOG.md
04.03.2025 10:34
GitLife Service Account

🐛 Устранение ошибок

  • Исправлено: возникновение исключения NullPointerException при использовании @SearchBean.fields в некоторых случаях

🌻 Улучшения

  • Обновлено slf4j-api до версии 2.0.11
  • Обновлено solon до версии 2.6.5
Последнее сообщение коммита: v4.2.7
04.03.2025 10:34
GitLife Service Account

✨ Возможности

  • Улучшение JsonFieldConvertor: теперь поддерживаются сложные JSON массивы для конвертации в поля типа List<T>

🌻 Лучше

  • Обновление solon до версии 2.6.4
  • Обновление spring-boot до версии 3.2.1
  • Обновление slf4j-api до версии 2.0.10
Последнее сообщение коммита: v4.2.6
04.03.2025 10:34
GitLife Service Account

🐛 Устранение ошибок

  • Устранена проблема с генерацией подстроки order by, когда поле сортировки по умолчанию @SearchBean.orderBy является одним конкатенированным аргументом, и при запросе никакие параметры не передаются.
    https://gitee.com/troyzhxu/bean-searcher/issues/I8NT9X

🌻 Обновление зависимостей

  • spring-boot -> 3.1.6
  • solon -> 2.6.2
  • slf4j -> 2.0.9
  • xjsonkit -> 1.4.3
Последнее сообщение коммита: CHANGELOG.md
04.03.2025 10:34
GitLife Service Account
  • Добавьте значение по умолчанию SQL_DATE для конфигурационного параметра bean-searcher.params.convertor.date-target.
  • Добавьте значение по умолчанию SQL_TIMESTAMP для конфигурационного параметра bean-searcher.params.convertor.date-time-target.
  • Добавьте значение по умолчанию SQL_TIME для конфигурационного параметра bean-searcher.params.convertor.time-target.
Последнее сообщение коммита: v4.2.4
04.03.2025 10:34
GitLife Service Account

✨ Возможности

  • Bean Searcher

    • Улучшение BaseSearcher, добавлено свойство failOnParamError, которое позволяет конфигурировать выбрасывание исключения при ошибке параметра; значение по умолчанию — false.
    • Улучшение DateParamConvertor, теперь поддерживаются преобразования подклассов java.util.Date; также добавлено свойство target, позволяющее конфигурировать целевой тип преобразования.
    • Улучшение DateTimeParamConvertor, теперь поддерживаются преобразования подклассов java.util.Date; также добавлено свойство target, позволяющее конфигурировать целевой тип преобразования.
    • Улучшение TimeParamConvertor, добавлено свойство target, позволяющее конфигурировать целевой тип преобразования.
  • Bean Searcher Boot Starter

    • Добавлена конфигурация bean-searcher.params.fail-on-error, которая указывает, следует ли выбрасывать исключение при ошибке параметра; значение по умолчанию — false.
    • Добавлена конфигурация bean-searcher.params.convertor.date-target.
    • Добавлена конфигурация bean-searcher.params.convertor.date-time-target.
    • Добавлена конфигурация bean-searcher.params.convertor.time-target.
  • Bean Searcher Solon Plugin

    • Добавлена конфигурация bean-searcher.params.fail-on-error, которая указывает, следует ли выбрасывать исключение при ошибке параметра; значение по умолчанию — false.
    • Добавлена конфигурация bean-searcher.params.convertor.date-target.
    • Добавлена конфигурация bean-searcher.params.convertor.date-time-target.
    • Добавлена конфигурация bean-searcher.params.convertor.time-target.### 🐛 Исправление ошибок
  • Bean Searcher

    • Исправление: проблема с выбросом исключения IllegalArgumentException, когда тип поля в сущностях является целым числом, а передаются буквы как параметры
    • Исправление: потеря части условий при логической группировке в некоторых случаях: https://gitee.com/troyzhxu/bean-searcher/issues/I7PZQ1

🌻 Улучшения

  • Обновление Solon до версии v2.4.1
  • Обновление Spring Boot до версии v3.1.2
Последнее сообщение коммита: v4.2.3
04.03.2025 10:33
GitLife Service Account
  • Устранение конфликта между NumberParamConvertor и EnumParamConvertor, теперь NumberParamConvertor不再处理枚举字段的转换
  • Улучшение JsonFieldConvertor, который теперь поддерживает преобразование JSON значений типа не String (например: PGobject) в объекты

  • Разрешение конфликта между NumberParamConvertor и EnumParamConvertor, теперь NumberParamConvertor больше не выполняет преобразование поля enum
  • Улучшение JsonFieldConvertor, которое теперь поддерживает преобразование JSON значений типа не String (например: PGobject) в объекты

  • Разрешение конфликта между NumberParamConvertor и EnumParamConvertor. Теперь NumberParamConvertor не выполняет преобразование полей enum.
  • Улучшение JsonFieldConvertor. Теперь он поддерживает преобразование JSON значений типа не String (например: PGobject) в объекты.
Последнее сообщение коммита: v4.2.2
04.03.2025 10:33
GitLife Service Account

✨ Возможности

  • Bean Searcher
    • Улучшение: DateFieldConvertor поддерживает преобразование типа Instant: https://gitee.com/troyzhxu/bean-searcher/pulls/9
    • Новое: EnumParamConvertor для полей с типом enum автоматически конвертирует параметры типа String/Enum в номер значения (по умолчанию) или значение поля (определено атрибутом @DbField.type)
    • Оптимизация: при возникновении ошибки метода PreparedStatement.setObject(...) все равно выводится лог SQL
  • Bean Searcher Boot Starter
    • Автоматическое конфигурирование EnumParamConvertor
  • Bean Searcher Solon Plugin
    • Автоматическое конфигурирование EnumParamConvertor

🐛 Исправление ошибок

  • Bean Searcher
    • Исправлено использование динамического диалекта, когда основной диалект недоступен
  • Bean Searcher Boot Starter
    • Исправлено автоматическое конфигурирование при использовании динамического диалекта
  • Bean Searcher Solon Plugin
    • Исправлено автоматическое конфигурирование при использовании динамического диалекта

🌻 Улучшения

  • Обновлен Solon до версии v2.3.8
  • Обновлен SpringBoot до версии v3.1.1
Последнее сообщение коммита: v4.2.1
04.03.2025 10:33
GitLife Service Account

✨ Возможности

  • Bean Searcher
    • Добавлены классы DynamicDialect и DynamicDialectSupport для поддержки динамических диалектов
    • Переработана методика FieldParam.Value.isEmptyValue(), переименованная в FieldParam.Value.isEmpty()
    • Переработан класс AbstractSearcher, переименован в BaseSearcher
    • Функционал: если атрибут tables отсутствует в аннотации @SearchBean у подкласса, то он будет пытаться наследовать его из аннотации родительского класса (TODO)
    • Улучшена конвертация DateTimeParamConvertor, теперь она поддерживает парсинг параметров в форматах yyyy-MM-dd HH:mm:ss.SSS, yyyy-MM и yyyy
    • Обновлено slf4j до версии 2.0.7
  • Bean Searcher Boot Starter
    • Добавлен новый параметр конфигурации bean-searcher.sql.dialect-dynamic, указывающий на использование динамического диалекта, значение по умолчанию — false
    • При использовании динамического источника данных, поддерживаются маппинги источников данных и диалектов через внедрение бинов с помощью DataSourceDialect
    • Обновлено springboot до версии 3.0.6
  • Bean Searcher Solon Plugin
    • Добавлен новый параметр конфигурации bean-searcher.sql.dialect-dynamic, указывающий на использование динамического диалекта, значение по умолчанию — false
    • При использовании динамического источника данных, поддерживаются маппинги источников данных и диалектов через внедрение бинов с помощью DataSourceDialect
    • Обновлено solon до версии 2.2.17

🐛 Исправление ошибок

Последнее сообщение коммита: v4.2.0
04.03.2025 10:33
GitLife Service Account

🌻 Лучше

  • Улучшение производительности выполнения DefaultSqlExecutor
Последнее сообщение коммита: CHANGELOG.md
1
https://api.gitlife.ru/oschina-mirror/troyzhxu-bean-searcher.git
git@api.gitlife.ru:oschina-mirror/troyzhxu-bean-searcher.git
oschina-mirror
troyzhxu-bean-searcher
troyzhxu-bean-searcher