极致查询性能 sqltoy-orm-4.12.8 发版增加对国产达梦数据库支持

栏目: 软件资讯 · 发布时间: 4年前

内容简介:更新内容 1、主要增加对国产达梦数据库的支持(目前除updateFetch:单次交互完成锁记录、修改、返回结果报游标错误外其他功能都通过测试) 2、修复因增加oceanBase方言导致sqlite方言未放入方言池中产生的bug 3、增加...

更新内容

1、主要增加对国产达梦数据库的支持(目前除updateFetch:单次交互完成锁记录、修改、返回结果报游标错误外其他功能都通过测试)
2、修复因增加oceanBase方言导致 sqlite 方言未放入方言池中产生的bug
3、增加findEntity分页功能,便于单表查询直接可以链式代码中完成
4、优化Query()链式查询增加分页,同时将Page()链式分页代码标注为作废
5、优化一些注释和日志输出

开源地址:

sqltoy特点说明:

  • 支持 mysql 、postgresql、db2、oracle、sqlserver、sqlite、clickhouse、elasticsearch、 mongodb
  • 具有JPA模式的CRUD功能(即CRUD无需写sql),无需写Dao,sqltoy提供了SqlToyLazyDao,同时提供了quickvo从数据库生成POJO。
  • 根本上杜绝了 sql 注入问题
  • 最科学的sql编写方式

* sqltoy的sql编写(支持嵌套)

select 	*
from sqltoy_device_order_info t 
where #[t.ORDER_ID=:orderId]
      #[and t.ORGAN_ID in (:authedOrganIds)]
      #[and t.STAFF_ID in (:staffIds)]
      #[and t.TRANS_DATE>=:beginDate]
      #[and t.TRANS_DATE<:endDate] 

* mybatis同样功能实现

select *
 from sqltoy_device_order_info t 
 <where>
    <if test="orderId!=null">
	and t.ORDER_ID=#{orderId}
    </if>
    <if test="authedOrganIds!=null">
	and t.ORGAN_ID in
	<foreach collection="authedOrganIds" item="order_id" separator="," open="(" close=")">  
            #{order_id}  
 	</foreach>  
    </if>
    <if test="staffIds!=null">
	and t.STAFF_ID in
	<foreach collection="staffIds" item="staff_id" separator="," open="(" close=")">  
            #{staff_id}  
 	</foreach>  
    </if>
    <if test="beginDate!=null">
	and t.TRANS_DATE>=#{beginDate}
    </if>
    <if test="endDate!=null">
	and t.TRANS_DATE<#{endDate}
    </if>
</where>
  • 缓存翻译大幅提升性能,减少多表关联,让sql直观可维护

极致查询性能 sqltoy-orm-4.12.8 发版增加对国产达梦数据库支持

  • 最高等级的分页优化

极致查询性能 sqltoy-orm-4.12.8 发版增加对国产达梦数据库支持

  • 支持用算法代替sql实现行列转换、同比环比、分组汇总等

极致查询性能 sqltoy-orm-4.12.8 发版增加对国产达梦数据库支持

极致查询性能 sqltoy-orm-4.12.8 发版增加对国产达梦数据库支持

  • 支持分库分表
  • sqltoy支持跨数据库函数自适应:一套sql可以自适应多种数据库
  • 提供了5种默认的非数据库相关的主键策略
1、shortNanoTime 22位有序安全ID,格式: 13位当前毫秒+6位纳秒+3位主机ID
2、nanoTimeId 26位有序安全ID,格式:15位:yyMMddHHmmssSSS+6位纳秒+2位(线程Id+随机数)+3位主机ID
3、uuid:32 位uuid
4、SnowflakeId 雪花算法ID
5、redisId 基于 redis  来产生规则的ID主键
  • 提供了通用字段赋值处理

极致查询性能 sqltoy-orm-4.12.8 发版增加对国产达梦数据库支持

  • 提供了树形表的统一处理机制

极致查询性能 sqltoy-orm-4.12.8 发版增加对国产达梦数据库支持

  • sql文件更新自动重载,便于开发阶段无需重启应用
  • 慢sql统计功能
  • 便于跟其他拓展平台集成,如报表平台、配置化服务平台

```java

public class SqlToyContext implements ApplicationContextAware {

   // 省略其他代码

  /**
     * @todo 提供可以动态增加解析sql片段配置的接口,并返回具体id,用于第三方平台集成,如报表平台等
     * @param sqlSegment
     * @return
     * @throws Exception
     */
    public synchronized SqlToyConfig parseSqlSegment(Object sqlSegment) throws Exception {
        return scriptLoader.parseSqlSagment(sqlSegment);
    }

}

```


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

应用Rails进行敏捷Web开发

应用Rails进行敏捷Web开发

Dave Thomas, David Hansson等 / 林芷薰 / 电子工业出版社 / 2006-7 / 65.00元

这是第一本关于Ruby on Rails的著作。 全书主要内容分为两大部分。在“构建应用程序”部分中,读者将看到一个完整的“在线购书网站” 示例。在演示的过程中,作者真实地再现了一个完整的迭代式开发过程,让读者亲身体验实际应用开发中遇到的各种问题、以及Rails如何有效解决这些问题。在随后的“Rails框架”部分中,作者深入介绍了Rails框架的各个组成部分。尤为值得一提的是本部分的后几章......一起来看看 《应用Rails进行敏捷Web开发》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具