版本: 3.4.0
问题: 调用updateById时无法使用自定义类型处理器
原因:
1. ParamNameResolver的getNamedParams调用时将实体参数转成了org.apache.ibatis.binding.MapperMethod.ParamMap
2. 由于参数变成了Map, mybatis的SqlSourceBuilder#parse拿不到原始实体类型, 将field的JavaType全都设置成了Object, mybatis类型解析器就获取不到自定义类型转换器
Comment From: cweijan
@miemieYaho 很急老哥, 我现在的类型转换器是通过Plus配置的包扫描, 是我使用的方式不对吗? insert的时候参数没有转换, mybatis正确拿到了类型转换器, update的时候就不行了
Comment From: cweijan
通过在TableField指定typeHandler解决了.