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

3.4.3.4

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

在对接 DM7 数据库的时候想要使用 @EnumValue 映射枚举类型 发现 DM7 的驱动包中没有实现 ResultSet.getObject() 方法 尝试自定义 MybatisEnumTypeHandler 修改该部分实现时 发现不能进行全局设置,只能逐个字段标注 typeHandler

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

MybatisSqlSessionFactoryBean.buildSqlSessionFactory() 中写死了 EnumTypeHandler

// 取得类型转换注册器
TypeHandlerRegistry typeHandlerRegistry = targetConfiguration.getTypeHandlerRegistry();
classes.stream()
    .filter(Class::isEnum)
    .filter(MybatisEnumTypeHandler::isMpEnums)
    .forEach(cls -> typeHandlerRegistry.register(cls, MybatisEnumTypeHandler.class));

1、期望提供切面或者配置,可以进行全局替换 2、期望对 MybatisEnumTypeHandler 中 ResultSet.getObject() 部分的实现做下兼容,我看了其他相关问题中的回复,作者有推荐更换连接池,但在 DM7 的对接问题中,无法通过更换连接池达成预期的目的

报错信息

Comment From: miemieYaho

你可以不配置 typeEnumsPackage,再configuration里配置setDefaultEnumTypeHandler