Isto eliminará a páxina "CHANGELOG". Por favor, asegúrate de que é o que queres.
# CHANGELOG
BaseMapper<Entity> mapper = SqlHelper.getMapper(Entity.class);left join (subSelect) 优化TableName注解属性excludeProperty支持排除字段UpsertWrapper支持clear清空Wrapper子类新增func方法,主要为了支持在if else情况下使用Wrapper的不同method不会导致断链(链式调用不能一链到底)BaseMapper部分入参为Wrapper的select方法支持wrapper.first来设置RDS的hintKtUpdateWrapper#set支持value为nullIService部分method调整为default方法setFieldValByName和getFieldValByName)某些情况下会发生异常的问题KtWrapper嵌套函数问题"null"null as xxx的情况Function<Param, Param> func 的method,入参更改为 Consumer<Param> consumer,不影响规范的使用mybatis 到 3.5.0 版本mybatis-spring 到 2.0.0 版本jsqlparser 到 1.4 版本IService 的 getOne(Wrapper<T> queryWrapper) 方法如果获取到多条数据将会抛出 TooManyResultsException 异常@select 问题mybatis-config.xml 方式构建的 Configuration 的 mapUnderscoreToCamelCase 默认值非 true 的问题mapper 使用纯注解下可能触发的重试机制在个别情况下启动报错的问题defaultEnumTypeHandler 来进行通用枚举处理wrapper 的 in 以及 notIn 方法内部对入参 coll 及 动态数组 的非empty判断(注意: 如果以前有直接使用以上的方法的入参可能为 empty 的现在会产出如下sql: in () 或 not in () 导致报错)wrapper 的 notInOrThrow 和 inOrThrow 方法(使用新版的 in 以及 notIn 效果一样,异常则为sql异常)IService 的 query 链式调用的 delete 操作MybatisMapperRefresh该类并打上过时标志IService 新增的 update 链式调用支持 remove 操作IService 新增的 query 链式调用的 delete 打上过时标识BaseMapper 子类时,TableInfo 缓存的 Configuration 只保留最后一个MergeSegments 获取 getSqlSegment 方式BaseMapper 的 update 方法的第一个入参支持为 nullIService 增加4个链式调用方法beetl 模板IdWorker 增加毫秒时间 ID 可用于订单 IDinOrThrow 方法,入参为 empty 则抛出 MybatisPlusExcuption 异常MetaObjectHandler 新提供几个能根据注解才插入值的 default 方法KtQueryWrapper 和 KtUpdateWrapper类自定义sql + ${ew.customSqlSegment} 方式InsertBatchSomeColumn 选装件的setTotal(Long total)->setTotal(long total)`Page 的 setSearchCount 为 publicTenantSqlParser 如果 where 条件的开头是一个 orExpression,直接在左边用and拼接租户信息会造成逻辑不符合预期的问题lambda 方法会向下传递 sqlSelectServiceImpl 个别 batch 操作 flushStatements 问题InsertBatchAllColumn 选装件ServiceImpl 的 batch 操作之外的事务注解Model 的事务注解AbstractSqlInjector 的 isInjectSqlRunner 方法(SqlRunner初始化较早,目前isInjectSqlRunner无法控制)MybatisSessionFactoryBuildermybatis-plus-generator 包的依赖,自己按需引入page 分页新增控制是否优化 Count Sql 设置
// 不进行 count sql 优化
page.setOptimizeCountSql(false);
注入定义填充,支持sql注入器,主键生成器.
fixed github issues/231
fixed github issues/234
修改逻辑删除 selectByIds coll 问题
fixed gitee issues/IHF7N
fixed gitee issues/IHH83
兼容配置方式,优先使用自定义注入.
其他优化
字符串类型 IdWorker.getIdStr() 字符串类型TableField 注解新增属性 update 预处理 set 字段自定义注入 fixed gitee IHART
例如:@TableField(.. , update="%s+1") 其中 %s 会填充为字段
输出 SQL 为:update 表 set 字段=字段+1 where ...
例如:@TableField(.. , update="now()") 使用数据库时间
输出 SQL 为:update 表 set 字段=now() where ...
TableField 注解新增属性 condition 预处理 WHERE 实体条件自定义运算规则
@TableField(condition = SqlCondition.LIKE)
private String name;
输出 SQL 为:select 表 where name LIKE CONCAT('%',值,'%')
添加 spring-boot-starter 模块内置 jdbc mp 包不需要单独引入 更舒服的使用 boot
添加对 SQL Server 视图生成的支持
允许字段策略独立设置,默认为 naming 策略
strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略
strategy.setColumnNaming(NamingStrategy.underline_to_camel);// 允许字段策略独立设置,默认为 naming 策略
代码生成器抽象 AbstractTemplateEngine 模板引擎抽象类,可自定义模板引擎,新增内置 freemarker 可选
// 选择 freemarker 引擎
mpg.setTemplateEngine(new FreemarkerTemplateEngine());
相关 SQL 解析如多租户可通过 @SqlParser(filter=true) 排除 SQL 解析
# 开启 SQL 解析缓存注解生效
mybatis-plus:
global-config:
sql-parser-cache: true
解决xml加载顺序问题,可随意引入其他 xml sql 片段
修复 author 带123的bug
fix #IGQGE:Wrapper为空,但是page.getCondition()不为空的情况,Condition无法传递问题
fix #IH6ED:Pagination dubbo 排序等属性序列化不支持
判断Wrapper是否为空,使用==,避免被equals方法重载的影响
避免注入自定义基类
剥离 sql 单独提出至 SqlUtils
统一缩进编码风格
优化生成代码执行性能 github issues/219
优化 sql 解析过程
fixed gitee issues/IHCQB
springboot-configuration-processor 修改 compileOnly为optional
其他
####主体功能
####代码生成
####主体功能
####代码生成
####上个版本(2.0.9)升级导致的问题
Insert not found et异常,见#331###Mybatis-Plus-Boot-Start [1.0.4]
####主体变动
###Mybaits-Plus ####主体功能
and() or() 方法####代码生成
###Mybatis-Plus-Boot-Start [1.0.2] 代号:清风 ####主体功能
?导致打印SQL不准确问题,并添加格式化SQL选项--的情况Isto eliminará a páxina "CHANGELOG". Por favor, asegúrate de que é o que queres.