当前使用版本(必填,否则不予处理)

3.5.4.1

该问题是如何引起的?(确定最新版也有问题再提!!!)

使用BCryptPasswordEncoder加密后,更新方法失败

重现步骤(如果有就写完整)

@Bean public BCryptPasswordEncoder bCryptPasswordEncoder() { return new BCryptPasswordEncoder(12); }

LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); wrapper.eq(SysUser::getPhone, sysUser.getId()); // wrapper.set(SysUser::getPassword, "$2a$12$icCjWGN7msDUPscHUW5DHeqNsnrPdv49Bd7gpIT.XDyQOKunbH0yy"); wrapper.set(SysUser::getPassword, "123456"); update(wrapper);

注释行的代码使用了spring的BCryptPasswordEncoder加密,再执行更新语句就报错,update(wrapper)以及updateById(id)都会报错,改成自己输入的字符串可以正常保存,数据库列长度也足够,加密的密码可以直接在navicat保存成功。

报错信息

MyBatis-Plus 版本3.5.4.1,加密后的密码执行更新失败

Comment From: miemieYaho

MyBatis-Plus 版本3.5.4.1,加密后的密码执行更新失败

Comment From: demonxinghen

@miemieYaho 谢谢,是插件的问题