更新日志

1.1.7

  • 升级 mhdt 至 1.6.8
  • 修复Spring扩展,版本号打印缺失错误显示
  • Mongodb
    • 修复批量修改Beans异常
  • Unabo.openSession 静态方法,处理手动事务,支持多数据源 ( Tip: Spring事务不支持多数据源同时回滚,这个时候手动事务是更好的选择)

1.1.6

  • 更新对SqlServer,达梦的支持
  • 修复 online.sanen.unabo.nosql.Behavior 相关操作bug.
  • 修复 SimpleCondition强转类型导致的类身份证(长整数)查询异常.
  • SQL
    • 修复某些情况下 Table 注解中指定 schema 不生效的问题
    • 修复createSQL后跟addCondition,SQL插入位置不对
  • Mongodb
    • schema和tableName将不再通过 GetSchemaAndTableNamePipeline (废弃) 获取
    • Between查询逻辑「大于等于 && 小于」 修改为 「大于等于 && 小于等于

1.1.5

  • 修改 DatasouceType 类名为 DatasourceType
  • SimpleCondition新增valueCastType(boolean flag) 设置value值是否自动强转

1.1.4

  • 修复 queryTable#setExceptFields 设置不对
  • 修复 Mongodb queryMap#insert 字段乱序
  • createTable兼容LocalDateTime类型
  • C.not_in 支持英文逗号分割字符串,如: 苹果,梨子,香蕉
  • 条件值自动类型转换,如: age>'10' 将自动转为 age>10
  • 修复别名设置不当,如空字符串,导致的字段名异常

1.1.3

  • 移除 uniqueOption 相关方法
  • 统一 unique 返回值为 Optional<T>
  • 新增 C.parseConditionsFromJSON(String json) 解析json字符串为Condition数组
  • 新增 Condition#boolean isEnable()方法,只有启用的条件才会参与过滤,默认值true
  • 新增 Cs.in 支持字符串 1,2,3 或 张三,李四,王五,默认 value 值为数组
  • 修复 queryTable 查询结果与指定字段顺序不一致
  • 优化 mongodb 查询速度与字段顺序问题
  • 新增Cs枚举,用于在条件中字段比较,cc后缀代表 column compare
  • 新增项有: GT_CC, GT_EQUALS_CC,LT_CC,LT_EQUALS_CC,EQUALS_CC,NO_EQUALS_CC,BETWEEN_CC,NOT_BETWEEN_CC

1.1.2

  • 修复SQL打印

1.1.1

  • 支持 Springboot3

1.1.0

  • #sort方法分开排序
  • #getTableNames() By oracle 获取所有表而不再是用户下的表
  • 修复#count(String tableName)方法在表名为 "schema.tableName" 时的异常
  • Condition支持函数,C.gt("name",2,"length(%s)"),字符串插值项作为填充字段
  • 修复长期使用下TheadLocal缓存可能导致的内存泄露
  • 丰富dataInfomation接口获取数据源信息

1.0.9

  • Sql.queryTable
    • sort 生成sql附带表名,如 order by tableName.id desc
  • online.sanen.unabo.api.structure.Column
    • #getClsByDataType更名为javaClassByDataType
  • 自动添加 HikariCPdbcp2连接池依赖

1.0.8

  • Mongodb
    • 修复 批量修改无效
    • 修复 流查询映射异常
    • 重写 日志输出,解决stream输出异常,(重写带来的弊端:内部command也会输出到控制台)
    • getTableNames 因为视图不支持mapreduce,对 “视图” 取所有数据字段并集
    • 修复 isShowLog 未生效
    • 新增 bootstrap接口lastCommand()方法返回上一次执行的命令
  • Sql.stream
    • 提升速度
    • 支持别名
    • 提供rowProcess接口避免在大数据下重复迭代
  • querySQL
    • 支持alias别名化

1.0.7

  • mhdt 依赖升级1.6.0
  • Mongodb
    • 修复 limit 方法入参长度为1时的异常
    • 修复将id设置为 ExceptField但查询结果未受影响
    • MongoDBTemplate 完善 Todo方法 getColumns
    • getTableNames 排除 .chunks和 .files后缀
    • QueryTable 接口新增 createView
  • PostgreSQL
    • getTableNames方法返回的表名将带上表空间,如:test.user ,如没有携带schema默认值为public
  • Spring
    • 配置
      • enabled 更名为 enable
      • 新增 show-version 是否打印版本信息

1.0.6

  • 连接池工厂

    • duid 连接池默认设置 druidDataSource.setMaxOpenPreparedStatements(0);
  • Mongodb

    • unique方法因Optional使用不当导致的空指针异常
    • 修改默认连接超时为3秒
  • Api

    • QueryMap 接口支持addCondition
    • 兼容 Springboot 3.X
    • Bootstrap 继承 java.lang.AutoCloseable 接口达到自动释放资源的目的, 示例:
        try(Bootstrap bootstrap = 创建实例代码){
                        
        } 
    

    也可手动释放资源

  bootstrap.close()

1.0.5-Release

  • Sql
    • createSQL 自动去除 “空格,缩进,换行符” 以减少对addCondition的干扰
    • 修复 between 不支持数值
    • Sql.Blob类型 统一返回Inputstream
  • Mongodb
    • 查询结果将变为有序的或依据 setFields 字段排序
    • 新增聚合操作接口Aggregate (优先实现mongodb)

1.0.5.1

  • 修复 sql注入导致的查询时间异常

1.0.4

  • Api
    • 修复 条件 "in,not in" 无法正常查询
    • 新增 SimpleCondition.isEffective 检测条件有效性
    • 支持 达梦数据库
  • Sql
    • 修复 C.contains 存在sql注入
    • 修复 C.in、C.notIn 存在sql注入
  • Mongodb
    • 获取全表字段不统一(原因是取第一条数据,现改为取全表)
    • 修复 list(Class<?> entityClass) 返回结果依然是Map类型
    • QueryTable.dropColumn 删除表字段
    • 在同时指定“字段”和”别名“时,查询结果会被别名覆盖
    • 支持between条件

1.0.3

  • Api
    • 不再依赖默认的数据库【连接池】和【驱动】,需要自行在项目中手动添加依赖并指定版本(因为发现有依赖和java版本挂钩的情况,如: hikaricp 5.x是依赖java11)
    • 多数据源连接异常不会导致程序崩溃
  • Mongodb
    • 支持mongodb 新增online.sanen.unabo.extend.nosql包,并在当前版本基础上持续更新
  • Sql
    • unique方法注解为deprecated,查询返回null为程序埋下隐患,此方法将在未来版本中删除 (用uniqueOptional替代);
    • 删除一些无用的重载 如:update(String primaryKey)
  • Spring
    • 配置项
      • 修改 instances 改为 sql-instances
      • 新增 nosql-instances 来区分 “非关系型" 数据库连接
    • 注解
      • 解决 @Autowired 在多数据源在下依据 [beanName] 注入错乱

1.0.2

  • Spring
    • 配置
      • 扩展升级为可配置多数据源
  • Sql
    • 优化mysql批量操作
  • 升级依赖版本包括最新的sqlite(3.36.0.2)

1.0.1-Release

  • Spring
    • 配置
      • 更改配置事务工厂方法名 configuration.setTransactionFactory(TransactionFactoryEnum.JdbcTransactionFactory);
  • 修复因为表字段缓存导致的bug;

1.0.0-PRE

  • 由原项目Cdm(Common datasource manager)迁移到Unabo