当前使用版本(必填,否则不予处理)
3.5.2
不是问题,故不使用模板了
需求: LambdaQueryWrapper 的参数,需要在执行前,将 where 字段,和值自动更换掉。 尝试的方法【省略了业务前提,和各种预检查,只保留关键逻辑】: wrapper.getExpression(); expression.getNormal(); normal.set(i, () -> "new_column"); 发现替换是成功的,但生成的 sql 仍然是旧的字段
基于 MyBatis-Plus 做了大量逻辑,多个因素下使用了上述方案来偷梁换柱。要怎样才能完美的换掉字段和值呢
Comment From: wkclz
知道原因了,替换是成功的,但是否生效,要看是否被渲染成 sql, 任何一个 getBoundSql 都是不归路