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

OSCHINA-MIRROR/sagacity-sagacity-sqltoy

Имя тега
Описание
Сообщение коммита
Операция
1. Метод getTables оптимизирован для фильтрации разделённых таблиц PostgreSQL, сохраняя базовые разделённые таблицы и исключая подразделённые таблицы. 2. Улучшена обработка неполных выражений с параметром типа boolean в конструкции @if(:param1<>A && :boolParam) [полное выражение: booleanParam==true]. ```xml <!-- Другие ненадёжные spring-фреймворки могут быть расширены на основе sagacity-sqltoy --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <version>5.6.43.RC2</version> </dependency> <!-- springboot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <version>5.6.43.RC2</version> </dependency> <!-- плагин solon --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <version>5.6.43.RC2</version> </dependency> ```
02.04.2025 05:22
1. Оптимизация метода getTables для фильтрации разделённых таблиц PostgreSQL, сохраняется базовая разделённая таблица, а подразделённые таблицы исключаются. 2. Улучшение обработки неполного выражения с параметром типа boolean @if(:param1<>A && :boolParam) [полное выражение: booleanParam == true]. ```xml <!-- Другие ненаследованные от Spring фреймворки могут быть расширены на основе sagacity-sqltoy --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <version>5.6.43</version> </dependency> <!-- springboot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <version>5.6.43</version> </dependency> <!-- плагин для solon --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <version>5.6.43</version> </dependency> ```
02.04.2025 05:22
1. Исправление缺陷 в sql-запросе link, результат которого является List、Set、Array ```xml <sql id="common_resourceRoles" debug="false" dataSource="portalDataSource"> <link id-columns="res_url" columns="role_code" distinct="true" result-type="SET"/> <value> <![CDATA[ select t3.res_url, t2.role_code from SAG_ROLE_RESOURCES t1 left join sag_resource t3 on t3.res_id=t1.res_id left join sag_role t2 on t2.role_id=t1.role_id where t3.res_url is not null and t3.NODE_LEVEL >= 3 and t3.status=1 and t1.status=1 -- and t3.view_type='F' and t3.app_code=:appCode order by t3.res_url ]]> </value> </sql> ``` 2. Оптимизация вывода логов, добавление функции преобразования времени для параметров типа дата и время ```sql select * from table where create_time=to_date('2024-10-11 12:30:11.039','YYYY-MM-DD HH24:MI:SS.FF') ```
03.03.2025 11:40
1. Исправлено недостаток в修复SQL查询link操作结果为列表、集合、数组的情况 2. Оптимизирован вывод логов, добавлены функции преобразования времени для параметров типа дата, время Исправлено: 1. "в修复SQL查询link操作结果为列表、集合、数组的情况" на "в修复SQL查询link操作结果为列表、集合、数组的情况" 2. "дата, время" оставлено без изменений, так как это термины, а не текст для перевода.
03.03.2025 11:40
1. Исправлено отсутствие обработки последней группы при получении результата в виде List или Set в методе группировки link. ```xml <sql id="common_resourceRoles" debug="false" dataSource="portalDataSource"> <link id-columns="res_url" columns="role_code" distinct="true" result-type="SET"/> <value> <![CDATA[ select t3.res_url, t2.role_code from SAG_ROLE_RESOURCES t1 left join sag_resource t3 on t3.res_id=t1.res_id left join sag_role t2 on t2.role_id=t1.role_id where t3.res_url is not null and t3.NODE_LEVEL >= 3 and t3.status=1 and t1.status=1 -- and t3.view_type='F' and t3.app_code=:appCode order by t3.res_url ]]> </value> </sql> ``` 2. Улучшена производительность вывода логов, добавлены функции преобразования времени для параметров типа дата и время. ```sql select * from table where create_time=to_date('2024-10-11 12:30:11.039','YYYY-MM-DD HH24:MI:SS.FF3') ``` ```xml <!-- Для расширения других неспринговых фреймворков можно использовать sagacity-sqltoy --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <version>5.6.42</version> </dependency> <!-- Для springboot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <version>5.6.42</version> </dependency> <!-- Для плагина solon --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <version>5.6.42</version> </dependency> ```
02.04.2025 05:12
1. Исправление缺陷 в DateUtil при преобразовании строки в дату, когда строковое значение не соответствует правилам ```xml <!-- Другие независимые от Spring фреймворки могут быть расширены на основе sagacity-sqltoy --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <version>5.6.41</version> </dependency> <!-- Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <version>5.6.41</version> </dependency> <!-- Solon плагин --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <version>5.6.41</version> </dependency> ``` Исправление дефекта в DateUtil при преобразовании строки в дату, когда строковое значение не соответствует правилам: ```xml <!-- Другие независимые от Spring фреймворки могут быть расширены на основе sagacity-sqltoy --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <version>5.6.41</version> </dependency> <!-- Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <version>5.6.41</version> </dependency> <!-- Solon плагин --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <version>5.6.41</version> </dependency> ```
03.03.2025 11:40
1. Параметры условий запроса поддерживают JSONArray и JSONObject. 2. Поддержка нескольких полей в операторе IN (id, type) IN (:list[i].id, :typeCode), где значения параметров могут существовать как частичные массивы. ```xml <!-- Для расширения других независимых от Spring фреймворков можно использовать sagacity-sqltoy --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <!-- Версия для JDK8: 5.6.40.RC3.jre8 --> <version>5.6.40.RC3</version> </dependency> <!-- Для Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <!-- Версия для JDK8: 5.6.40.RC3.jre8 --> <version>5.6.40.RC3</version> </dependency> <!-- Плагин для Solon --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <!-- Версия для JDK8: 5.6.40.RC3.jre8 --> <version>5.6.40.RC3</version> </dependency> ```
13.02.2025 04:38
1. Параметры условий запроса поддерживают JSONArray и JSONObject. 2. Поддержка нескольких полей в in (id, type) in (:list.id, :typeCode), где значения параметров могут содержать частичные массивы. ```xml <!-- Для расширения других независимых от Spring фреймворков используйте sagacity-sqltoy --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <!-- Версия для JDK8: 5.6.40.jre8 --> <version>5.6.40</version> </dependency> <!-- Для Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <!-- Версия для JDK8: 5.6.40.jre8 --> <version>5.6.40</version> </dependency> <!-- Solon плагин --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <!-- Версия для JDK8: 5.6.40.jre8 --> <version>5.6.40</version> </dependency> ```
13.02.2025 04:38
1. Оптимизация версии 5.6.38 — добавление меток `-- @fast_start` и `-- @fast_end`, поддерживающих возможность использования только метки `start`. 2. Улучшение поддержки метода `lightDao.Store().resultTypes(Class... classes)` для множества типов результатов вместо установки параметра `.moreResult(true)`. 3. Улучшение метода `loadAll`, с целью улучшения параллельной обработки больших объёмов данных (ранее использовалась последовательность разделения на части и дальнейшая параллелизация, что приводило к отсутствию эффективного параллельного выполнения). ```java // Поддерживает два режима: `-- @fast_start` или `/*@fast_start*/` String sql = """ select * from sqltoy_order_info soi where 1=1 -- @fast_start /*@fast_start*/( select * from table1 ) and status=1 """; ``` ```xml <!-- Другие независимые от Spring фреймворки могут использовать расширение sagacity-sqltoy --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <!-- Для JDK8 номер версии: 5.6.39.jre8 --> <version>5.6.39</version> </dependency> <!-- Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <!-- Для JDK8 номер версии: 5.6.39.jre8 --> <version>5.6.39</version> </dependency> <!-- Solon плагин --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <!-- Для JDK8 номер версии: 5.6.39.jre8 --> <version>5.6.39</version> </dependency> ```
10.02.2025 12:23
1. Добавьте использование `/* @fast_start */` и `/* @fast_end */` вместо метки @fast для указания начала и конца быстрого пагинационного запроса, что облегчит отладку SQL. 2. Поддержка @fast включает случаи, когда между @fast и левой скобкой есть пробелы. ```java // Поддерживает два режима: -- @fast_start или /*@fast_start*/ String sql = """ select * from sqltoy_order_info soi where 1=1 -- @fast_start /*@fast_start*/ ( select * from table1 ) /*@fast_end*/ -- @fast_end and status=1 """; ``` ```xml <!-- Для расширения других независимых от Spring фреймворков используйте sagacity-sqltoy --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <!-- Версия для JDK8: 5.6.38.jre8 --> <version>5.6.38</version> </dependency> <!-- Для Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <!-- Версия для JDK8: 5.6.38.jre8 --> <version>5.6.38</version> </dependency> <!-- Для плагинов Solon --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <!-- Версия для JDK8: 5.6.38.jre8 --> <version>5.6.38</version> </dependency> ```
03.02.2025 19:51
1. Предоставьте возможность многократного перевода одного и того же поля или выполнение перевода в зависимости от логических условий. ```xml <sql id="sqltoy_complax_trans"> <!-- where like colName==xxx | colName!=xxx | colName in (a,b) |colName out (a,b) --> <translate cache="dictCache" cache-type="purchase_deliver_type" columns="deliver_type" where="order_type=='purchase'"/> <translate cache="dictCache" cache-type="sales_deliver_type" columns="deliver_type" where="order_type=='sales'"/> <value><![CDATA[ select order_id, order_type, deliver_type from order_info ]]></value> </sql> ``` ![введите описание изображения здесь](https://foruda.gitee.com/images/1735886329167092167/178670dc_443346.png "Скриншот экрана") ```java // Демонстрация использования режима базового кода для кэшированного перевода, маскировки номеров телефонов, применения пользовательских фильтров и т.д. Page<StaffInfoVO> result = lightDao.findPageEntity(new Page(), StaffInfoVO.class, EntityQuery.create().where("STATUS=1 #[and STAFF_NAME like :staffName]").orderByDesc("ENTRY_DATE") .values(new StaffInfoVO().setStaffName("张")).filters(new ParamsFilter("staffName").rlike()) .translates(new Translate("organIdName").setKeyColumn("organId").setColumn("organName") .setCompareColumn("orderType").setCompareType("eq").setCompareValues("PO")) .secureMask(MaskType.TEL, "telNo")); ``` ```xml <!-- Другие независимые от Spring фреймворки могут использовать sagacity-sqltoy для расширения --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <!-- версия для JDK8: 5.6.37.jre8 --> <version>5.6.37</version> </dependency> <!-- Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <!-- версия для JDK8: 5.6.37.bkj8 --> <version>5.6.37</version> </dependency> <!-- плагины Solon --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <!-- версия для JDK8: 5.6.37.jre8 --> <version>5.6.37</version> </dependency> ```
25.12.2024 17:59
1. Предоставьте возможность для многократного перевода одного и того же поля или выполнения перевода в зависимости от конкретных логических условий ```xml <sql id="sqltoy_complex_translation"> <!-- where like colName==xxx | colName!=xxx | colName in (a,b) |colName not in (a,b) --> <translate cache="dictCache" cache-type="purchase_delivery_type" columns="delivery_type" where="order_type=='purchase'"/> <translate cache="dictCache" cache-type="sales_delivery_type" columns="delivery_type" where="order_type=='sales'"/> <value><![CDATA[ select order_id, order_type, delivery_type from order_info ]]></value> </sql> <!-- Другие независимые от Spring фреймворки могут использовать sagacity-sqltoy для расширения --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <!-- версия для JDK8: 5.6.36.RC8.jre8 --> <version>5.6.36.RC8</version> </dependency> <!-- Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <!-- версия для JDK8: 5.6.36.RC8.jre8 --> <version>5.6.36.RC8</version> </dependency> <!-- плагин Solon --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <!-- версия для JDK8: 5.6.36.RC8.jre8 --> <version>5.6.36.RC8</version> </dependency> ```
25.12.2024 17:59
1. Предоставьте возможность для многократного перевода одного и того же поля или выполнения перевода в зависимости от конкретных логических условий ```xml <sql id="sqltoy_complex_translation"> <!-- where like colName==xxx | colName!=xxx | colName in (a,b) |colName not in (a,b) --> <translate cache="dictCache" cache-type="purchase_delivery_type" columns="delivery_type" where="order_type=='purchase'"/> <translate cache="dictCache" cache-type="sales_delivery_type" columns="delivery_type" where="order_type=='sales'"/> <value><![CDATA[ select order_id, order_type, delivery_type from order_info ]]></value> </sql> <!-- Другие независимые от Spring фреймворки могут использовать sagacity-sqltoy для расширения --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <!-- Для JDK8 версия должна быть: 5.6.36.RC7.jre8 --> <version>5.6.36.RC7</version> </dependency> <!-- Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <!-- Для JDK8 версия должна быть: 5.6.36.RC7.jre8 --> <version>5.6.36.RC7</version> </dependency> <!-- Solon плагины --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <!-- Для JDK8 версия должна быть: 5.6.36.RC7.jre8 --> <version>5.6.36.RC7</version> </dependency> ```
25.12.2024 17:59
1. Предоставьте возможность многократного перевода одного и того же поля или выполнения перевода в зависимости от конкретных логических условий. ```xml <sql id="sqltoy_complax_trans"> <!-- where like colName==xxx | colName!=xxx | colName in (a,b) |colName out (a,b) --> <translate cache="dictCache" cache-type="purchase_deliver_type" columns="deliver_type" where="order_type=='purchase'"/> <translate cache="dictCache" cache-type="sales_deliver_type" columns="deliver_type" where="order_type=='sales'"/> <value><![CDATA[ select order_id, order_type, deliver_type from order_info ]]></value> </sql> ```
25.12.2024 17:59
1. Предоставьте возможность многократного перевода одного и того же поля или выполнения перевода в зависимости от конкретных логических условий. ```xml <sql id="sqltoy_complax_trans"> <!-- where like colName==xxx | colName!=xxx | colName in (a,b) |colName out (a,b) --> <translate cache="dictCache" cache-type="purchase_deliver_type" columns="deliver_type" where="order_type=='purchase'"/> <translate cache="dictCache" cache-type="sales_deliver_type" columns="deliver_type" where="order_type=='sales'"/> <value><![CDATA[ select order_id, order_type, deliver_type from order_info ]]></value> </sql> ```
25.12.2024 17:59
1. Предоставьте возможность многократного перевода одного и того же поля или выполнения перевода в зависимости от конкретных логических условий. ```xml <sql id="sqltoy_complax_trans"> <!-- where like colName==xxx | colName!=xxx | colName in (a,b) |colName out (a,b) --> <translate cache="dictCache" cache-type="purchase_deliver_type" columns="deliver_type" where="order_type=='purchase'"/> <translate cache="dictCache" cache-type="sales_deliver_type" columns="deliver_type" where="order_type=='sales'"/> <value><![CDATA[ select order_id, order_type, deliver_type from order_info ]]></value> </sql> ```
25.12.2024 17:59
1. Предоставьте возможность многократного перевода одного и того же поля или выполнение перевода в зависимости от конкретных логических условий. ```xml <sql id="sqltoy_complex_translation"> <!-- where like colName==xxx | colName!=xxx | colName in (a,b) |colName not in (a,b) --> <translate cache="dictCache" cache-type="purchase_delivery_type" columns="delivery_type" where="order_type=='purchase'"/> <translate cache="dictCache" cache-type="sales_delivery_type" columns="delivery_type" where="order_type=='sales'"/> <value><![CDATA[ select order_id, order_type, delivery_type from order_info ]]></value> </sql> ``` ![Скриншот экрана](https://foruda.gitee.com/images/1735886329167092167/178670dc_443346.png) ```xml <!-- Для расширения других фреймворков помимо Spring можно использовать sagacity-sqltoy --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <!-- версия для JDK8: 5.6.36.jre8 --> <version>5.6.36</version> </dependency> <!-- для Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <!-- версия для JDK8: 5.6.36.jre8 --> <version>5.6.36</version> </dependency> <!-- плагины для Solon --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <!-- версия для JDK8: 5.6.36.jre8 --> <version>5.6.36</version> </dependency> ```
25.12.2024 17:59
1. Устранена проблема с отсутствием данных в полях типа BLOB в базе данных. 2. Обновлены зависимости solon до версии 3.0.5 и springboot до версии 3.4.1. Спасибо за обратную связь: @Legendary ```xml <!-- Расширение sagacity-sqltoy для других фреймворков помимо Spring --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <!-- Версия для JDK8: 5.6.35.jre8 --> <version>5.6.35</version> </dependency> <!-- Для Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <!-- Версия для JDK8: 5.6.35.jre8 --> <version>5.6.35</version> </dependency> <!-- Solon плагин --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <!-- Версия для JDK8: 5.6.35.jre8 --> <version>5.6.35</version> </dependency> ```
25.12.2024 10:14
1. Устранена проблема с `@value(:inField)` при количестве идентификаторов (`:ids`) более 1000. 2. Обновлено зависимое софт Solon до версии 3.0.4 и Spring Boot до версии 3.4. ```xml <!-- Другие независимые от Spring фреймворки могут использовать sagacity-sqltoy для расширения --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy</artifactId> <!-- Для JDK8 номер версии: 5.6.34.jre8 --> <version>5.6.34</version> </dependency> <!-- Spring Boot --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-spring-starter</artifactId> <!-- Для JDK8 номер версии: 5.6.34.jre8 --> <version>5.6.34</version> </dependency> <!-- Solon плагины --> <dependency> <groupId>com.sagframe</groupId> <artifactId>sagacity-sqltoy-solon-plugin</artifactId> <!-- Для JDK8 номер версии: 5.6.34.jre8 --> <version>5.6.34</version> </dependency> ```
12.12.2024 14:17
1
https://api.gitlife.ru/oschina-mirror/sagacity-sagacity-sqltoy.git
git@api.gitlife.ru:oschina-mirror/sagacity-sagacity-sqltoy.git
oschina-mirror
sagacity-sagacity-sqltoy
sagacity-sagacity-sqltoy