Skip to content

v3.7.0

Compare
Choose a tag to compare
@troyzhxu troyzhxu released this 04 Jun 14:30
· 656 commits to master since this release

✨ Features

  • Bean Searcher
    • 新增 SqlServerDialect 方言实现,支持 SqlServer 2012+
    • 新增 OrLike 运算符,参见:#38
    • 增强 SqlExecutor:新增 SlowListener 接口,可让用户在代码中监听慢 SQL
    • 增强 DefaultDbMapping:新增 underlineCase 属性,可配置自动映射时是否开启 驼峰->下划线 的风格转换
    • 增强 Dialect:新增 hasILike() 方法,当忽略大小写查询时,可利用数据库的 ilike 关键字提升查询性能
    • 增强 EnumFieldConvertor:支持 整型 转换为枚举(按枚举序号转换)
    • 增强 EnumFieldConvertor:新增 failOnError 属性, 可配置在遇到非法值无法转换时是否报错,默认 true
    • 增强 EnumFieldConvertor:新增 ignoreCase 属性, 可配置字符串值匹配枚举时是否忽略大小写,默认 false
    • 优化 SQL 日志:普通 SQL 显示执行耗时,慢 SQL 日志级别调整为 WARN 并输出关联的实体类
    • 优化 DefaultSqlExecutor,当执行 count sql 且查询结果为 0 时,则不再执行 list sql
    • 优化 参数构建器page(..)limit(..) 方法,它们起始页码也受页码配置约束(破坏性更新
    • 优化 Dialect:为 toUpperCase(..) 添加默认实现,用户自定义方言时,只有一个 forPaginate(..) 方法必须实现
    • 优化 DefaultParamResolver:默认使用 page 分页参数提取器
    • 优化 检索器 的 count 与 sum 检索, 当无记录统计时,返回 0 而非 null, 并再次优化检索性能
    • 重构 FetchType#ALL 重命名为 FetchType#DEFAULT
  • Bean Searcher Boot Starter
    • 新增 bean-searcher.sql.slow-sql-threshold 配置键,可配置慢 SQL 阈值(单位毫秒),默认为 500
    • 新增 bean-searcher.sql.default-mapping.underline-case 配置键,可配置自动映射时是否开始 驼峰->下划线 的风格转换,默认为 true
    • 新增 bean-searcher.field-convertor.enum-fail-on-error 配置键,可配置在遇到非法值无法转换时是否报错,默认 true
    • 新增 bean-searcher.field-convertor.enum-ignore-case 配置键,可配置字符串值匹配枚举时是否忽略大小写,默认 false
    • 支持 用户配置一个 SqlExecutor.SlowListener 的 Spring Bean 来监听慢 SQL
    • 支持 用户配置 bean-searcher.sql.dialectSqlServer 来使用 Sql Server 方言
    • 升级 spring-boot -> v2.6.8