SqlDdlDao 和 SqlDdlStreamDao 是在各个数据库中执行 sql 操作的接口.
目前已有多种数据库Dao实现了此接口:
另外还有用于查询 list 和 Stream 的实现类:SqlDdlDaoListImpl / SqlDdlDaoStreamAsyncImpl

另外还有针对不同数据库联合查询的实现类: SqlDdlDaoMultipleImpl
XxxGroupByUtil 和 XxxGroupByUtil 可以在各个数据库中执行 groupby 操作.
XxxGroupByStreamUtil 接收 Stream 数据, XxxGroupByUtil 接收 Iterable 数据.
目前有3种实现: mongo, solr, java
他们都支持基础的聚合函数,比如: sum,min,max,count,count distinct等
其中 java 实现已经准备了大量自定义聚合函数(UDAF),并支持业务代码随时注册新的函数.
SybnQuery 属于 sybn-core 项目
动态的查询对象,借鉴于 queryDSL 中的动态查询对象。用于动态构建查询,并用于读写不同数据库。

当我们需要把http请求参数, 组装成 sql where 条件时, 经常会遇到可选参数问题, 页面上有 10 个参数, 填了几个就几个条件.
此时一般会使用 mybatis 的 xml 或者 jpa 的 query 来解决.
本工具包已提供的与以上两种方式近似的 xml 和 query 方案, 但是在实际使用中发现还是不够满足需求.
在 es, mongo, presto, clickhouse 等数据库中 1 != “1”, 此时需要将 http 传输的 String 型参数转换为各种不同的数据类型.
SybnMain 工具属于 sybn-core 项目
设计思想类似 于 spark-submit ,用于将 jar 包中的多个主函数统一在一个入口进行管理。
SybnMain 有如下功能: