当前位置:   article > 正文

springboot+mybatis 自定义类型处理器配置无效问题_springboot托管自定义typehandler类无效

springboot托管自定义typehandler类无效

问题:

mybatis-spring-boot-starter版本2.0.1
通过type-handlers-package配置自定义处理器路径无效

处理器代码:

@MappedTypes({
   BaseCodeMsgEnum.class})
@MappedJdbcTypes({
   JdbcType.INTEGER})
public class CodeMsgEnumTypeHandler<T extends Enum<?> & BaseCodeMsgEnum> extends BaseTypeHandler<T> {
   
    private Class<T> type;

    public CodeMsgEnumTypeHandler(Class<T> type) {
   
        if (type == null) {
   
            throw new IllegalArgumentException("Type argument cannot be null");
        }
        this.type = type;
    }

    //用于定义设置参数时,该如何把Java类型的参数转换为对应的数据库类型
    @Override
    public void setNonNullParameter(PreparedStatement preparedStatement, int i, T baseCodeMsgEnum,
                                    JdbcType jdbcType) throws SQLException {
   
        preparedStatement.setInt(i, baseCodeMsgEnum.getCode());
    }

    //用于定义通过字段名称获取字段数据时,如何把数据库类型转换为对应的Java类型
    @Override
    public T getNullableResult(ResultSet resultSet, String s) throws SQLException {
   
        int code = resultSet.getInt(s);
        return resultSet.wasNull() ? null : codeOf(code);
    }

    //用于定义通过字段索引获取字段数据时,如何把数据库类型转换为对应的Java类型
    @Override
    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/173025
推荐阅读
相关标签
  

闽ICP备14008679号