您现在的位置是:首页 > 文章详情

sqltoy-orm 5.6.26.RC10 发布,ORM 框架

日期:2024-10-07点击:116

sqltoy-orm 5.6.26.RC10 已经发布,ORM 框架

此版本更新内容包括:

1、针对batchUpdate、saveAll、updateAll、saveOrUpdateAll、loadAll等批量操作,针对超大数据集场景提供并行执行机制

@Test
public void testDeleteAll() {
    List entites = new ArrayList();
    for (int i = 1; i < 3000; i++) {
        entites.add(new ComplexpkHeadVO(LocalDateTime.parse("2020-09-08T12:11:20"), "S000" + i));
    }
    // 最小1000作为一个并行分组,并行度10、最大等待时间120秒
    lightDao.delete().parallelConfig(ParallelConfig.create().groupSize(1000)
    .maxThreads(10).maxWaitSeconds(120)).many(entites);
    //批量修改		 
    //lightDao.update().parallelConfig(ParallelConfig.create().groupSize(1000)).many(entites);
    //批量保存
    //lightDao.save().parallelConfig(ParallelConfig.create().groupSize(1000)).many(entites);  		  
    //批量saveOrUpdate,saveMode(SaveMode.UPDATE)存在则修改
    //lightDao.save().saveMode(SaveMode.UPDATE).parallelConfig(ParallelConfig.create()
    // .groupSize(1000)).many(entites);
}
 

2、sql支持if\elseif\else 逻辑

String sql = """
    select * from table where 1=1
    #[@if(:flag==1) and status=:status
        #[@if(:operateType==2) and saleType is not :saleType]
        #[@else and saleType is :saleType]
    ]
    #[@elseif(:flag==2) and name like :name]
    #[@else and orderType=:orderType]
    #[@if(:tenantId==4) and tenant=1]
    #[@elseif(:tenantId==3) and tenant=3]
""";
SqlToyResult result = SqlConfigParseUtils.processSql(sql,new String[] { "flag", "status", "name", "orderType", "saleType", "operateType", "tenantId" },new Object[] { 1, 1, "张", "SALE", null, 4, 3 });
 

详情查看:https://gitee.com/sagacity/sagacity-sqltoy/releases/5.6.26.RC10

原文链接:https://www.oschina.net/news/315031
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章