Stop mybaits(plus) and a bunch of extensions, the new generation of domestic sqltoy-orm 5.2.54 release

Open source address:

Update details

1. Add default value setting in sql query filters
2. Fix the defect of @ loop in the loop content starting with: loopValues[i] parameter and no spaces
3. Strengthen for (h2\kingbase\postgresql15\dm\sqlite\gaussdb) saveOrUpdate\saveAllIgnoreExist scenario
4. Check (h2\kingbase\postgresql15\dm\sqlite\gaussdb) whether the identity primary key can be directly assigned when saving 5.
For the BLOB type, return directly from rs.getObject(), change it to getObject and convert it to byte [] Array returns to avoid the error that the BLOB report has been closed
6. For Oracle, db2, sqlserver, dm, kingbase, the multi-tenant is changed to the default TenantFilterInterceptor of the framework in the saveOrUpdate scenario, that is, for merge into xxx ta using () as tv on (ta.xx=tv.xx and ta.tenantId=?) Mode
7. For Gaussdb array storage error, change to pst.setArray()
8. Compatible query parameter: names(paradeName1).values(new Object[] {v1,v2}) a single parameter name, the value is compatible with the array scene

Key advantages of sqltoy:

//------------------了解 sqltoy的关键优势: -------------------------------------------------------------------------------------------*/
//1、最简最直观的sql编写方式(不仅仅是查询语句),采用条件参数前置处理规整法,让sql语句部分跟客户端保持高度一致
//2、sql中支持注释(规避了对hint特性的影响,知道hint吗?搜oracle hint),和动态更新加载,便于开发和后期维护整个过程的管理
//3、支持缓存翻译和反向缓存条件检索(通过缓存将名称匹配成精确的key),实现sql简化和性能大幅提升
//4、支持快速分页和分页优化功能,实现分页最高级别的优化,同时还考虑到了cte多个with as情况下的优化支持
//5、支持并行查询
//6、根本杜绝sql注入问题
//7、支持行列转换、分组汇总求平均、同比环比计算,在于用算法解决复杂sql,同时也解决了sql跨数据库问题
//8、支持保留字自动适配
//9、支持跨数据库函数自适配,从而非常有利于一套代码适应多种数据库便于产品化,比如oracle的nvl,当sql在mysql环境执行时自动替换为ifnull
//10、支持分库分表
//11、提供了取top、取random记录、树形表结构构造和递归查询支持、updateFetch单次交互完成修改和查询等实用的功能
//12、sqltoy的update、save、saveAll、load 等crud操作规避了jpa的缺陷,参见update(entity,String...forceUpdateProps)和updateFetch
//13、提供了极为人性化的条件处理:排它性条件、日期条件加减和提取月末月初处理等
//14、提供了查询结果日期、数字格式化、安全脱敏处理,让复杂的事情变得简单,大幅简化sql或结果的二次处理工作
//-----------------------------------------------------------------------------------*/

Introduction to sqltoy features:

  • The core construction idea of ​​sqltoy

  • The core points of sqltoy compared with mybatis (plus): query statement writing, readability, maintainability

  • Object crud is the foundation, but sqltoy has targeted improvements: update, updateSaveFetch, updateFetch, etc.

  • sqltoy's cache translation greatly reduces table associations and simplifies sql, making your query performance geometrically improved

Explain why sqltoy kills mybatis (plus) in seconds

  • Extreme pagination also helps you achieve a significant improvement in query performance
  1. Fast paging: @fast () realizes fetching single-page data first and then associated query, which greatly improves the speed
  2. Paging optimizer: page-optimize makes paging query from two times to 1.3~1.5 times (the total number of records with the same query condition can be realized in a cache without repeated query within a certain period
  3. The process of sqltoy’s pagination to fetch total records is not a simple select count (1) from (original sql); but an intelligent judgment whether to become: select count (1) from 'from statement after', and automatically remove the outermost order by
  4. sqltoy supports parallel query: parallel="true", query the total number of records and single-page data at the same time, greatly improving performance
Explain why sqltoy kills mybatis (plus) in seconds
 
  • Convenient Cross-Database Statistical Computing: Data Rotation
Explain why sqltoy kills mybatis (plus) in seconds
  • Convenient cross-database statistical calculation: Infinitus group statistics (including summary and averaging)
Explain why sqltoy kills mybatis (plus) in seconds
  • Convenient cross-database statistical calculation: year-on-year comparison
Explain why sqltoy kills mybatis (plus) in seconds

Guess you like

Origin www.oschina.net/news/244953/sqltoy-orm-5-2-54-released