内容简介:sqltoy开源项目地址: github地址: https://github.com/chenrenfei/sagacity-sqltoy gitee地址: https://gitee.com/sagacity/sagacity-sqltoy sqltoy文档地址: https://chenrenfei.github.io/sqltoy/#/ 变更内...
sqltoy开源项目地址:
github地址: https://github.com/chenrenfei/sagacity-sqltoy
gitee地址: https://gitee.com/sagacity/sagacity-sqltoy
sqltoy文档地址: https://chenrenfei.github.io/sqltoy/#/
变更内容:
1、修复查询条件包含3个或以上in (:params) ,且中间条件参数值为null 处理异常。
做开源的目的:
- sqltoy积累了十年,其特性来源于项目实践和灵感,而绝不是为了写而写,我更希望可以用一个现成的!
但你看mybatis的 sql 写法,而其他人则完全走偏变本加厉,引入markdown或动态语言,完全不是在解决问题抓住问题的本质,而是将简单的问题变得复杂,玩炫技耍酷!跟你想要的完全不是一回事!
sql的本质是什么?尽最大可能保持跟客户端(dbeaver)上调试时的一致!无论开发和后期变更运维都极为简单!
<sql id="sqltoy_query_staffInfo">
<value>
<![CDATA[
select * from sqltoy_staff_info t
where #[t.staff_name like :staffName]
#[and t.status in (:status)]
]]>
</value>
</sql>
- 灵感的东西富有哲理和高度抽象,往往难以超越,每次看到大家在谈sql写法和分页,我真想告诉你一下,应该是这样!建议可以跟sqltoy对比一下,宣传真正有价值的东西!让996的兄弟们有正确的认识和解决问题的策略!
- 更希望sqltoy可以发展或者在另外的产品上发展,让更多的人可以体验这种简洁舒心、可以依靠不愁搞不定那种感觉!
sqltoy-orm主要特点:
- 具有基于对象类似于hibernate的crud,配套有quickvo从数据库产生pojo
- 极为科学优雅的sql编写方式
- 极具特色的缓存翻译:
- 根本杜绝sql注入
- 极为强大的分页优化
- 支持分库分表
- 支持跨库函数自适配
- 支持行列旋转、多维度分组汇总、同比环比计算
- sql文件自动更新检测
- 提供了通用字段赋值功能
- 提供updateFetch 单次交互完成锁记录修改并返回结果
- 除了分页外提供取top记录、取随机记录、唯一性验证、树机构表统一处理和查询策略
- 除数据库自身的identity或sequnce外提供了4种主键策略:22位或26位纳秒、uuid、雪花算法、 redis 规则主键
- 提供了数据脱敏、数字格式、日期格式化(不是sql)
<!-- 缓存翻译,可以对例如:A,B 这种拼连的进行翻译(要指定分隔符号后最后拼装符号 split-regex="," link-sign=",")
uncached-template 是针对未能匹配时显示的补充,${value} 表示显示key值,可以key=[${value}未定义
这种写法 -->
<translate cache="dictCache" cache-type="POST_TYPE" columns="POST_TYPE"
cache-indexs="1" uncached-template="" />
<!-- 安全掩码:tel\姓名\地址\卡号 -->
<!--最简单用法: <secure-mask columns="" type="tel"/> -->
<secure-mask columns="" type="name" head-size="3" tail-size="4" mask-code="*****" mask-rate="50" />
<!-- 分库策略 -->
<sharding-datasource strategy="multiDataBase" />
<!-- 分表策略 -->
<sharding-table tables="" strategy="hisRealTable" params="" />
<!-- 分页优化,缓存相同查询条件的分页总记录数量,
alive-max:表示相同的一个sql保留100个不同条件查询
alive-seconds:相同的查询条件分页总记录数保留时长(单位秒) -->
<page-optimize alive-max="100" alive-seconds="600" />
<!-- 日期格式化 -->
<date-format columns="" format="yyyy-MM-dd HH????????ss" />
<!-- 数字格式:包括:#,###.00(可以自定义)、captial(数字转中文大写)、capital-rmb(大写金额)
比较实用的,财务单据上经常要用到
-->
<number-format columns="" format="capital-rmb" />
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Hacking Growth
Sean Ellis、Morgan Brown / Crown Business / 2017-4-25 / USD 29.00
The definitive playbook by the pioneers of Growth Hacking, one of the hottest business methodologies in Silicon Valley and beyond. It seems hard to believe today, but there was a time when Airbnb w......一起来看看 《Hacking Growth》 这本书的介绍吧!