美文网首页
mybatis读取longraw失败getBLOB not im

mybatis读取longraw失败getBLOB not im

作者: kbdwn | 来源:发表于2019-11-13 10:33 被阅读0次

    是mybatis自身的问题,可通过自定义转换器解决,新建LongVarBinaryHandler类

    import org.apache.ibatis.type.JdbcType;
    import org.apache.ibatis.type.MappedJdbcTypes;
    import org.apache.ibatis.type.TypeHandler;
    
    import java.sql.CallableStatement;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    public class LongVarBinaryHandler implements TypeHandler<byte[]> {
    
        public LongVarBinaryHandler(){
    
        }
    
        @Override
        public void setParameter(PreparedStatement preparedStatement, int i, byte[] bytes, JdbcType jdbcType) throws SQLException {
    
        }
    
        @Override
        public byte[] getResult(ResultSet resultSet, String s) throws SQLException {
            byte[] result = resultSet.getBytes(s);
            return result;
        }
    
        @Override
        public byte[] getResult(ResultSet resultSet, int i) throws SQLException {
            byte[] result = resultSet.getBytes(i);
            return result;
        }
    
        @Override
        public byte[] getResult(CallableStatement callableStatement, int i) throws SQLException {
            return new byte[0];
        }
    
    }
    

    在mapper文件需要转换的字段上添加typehandler,需要填写完整路径


    WechatIMG2.png

    相关文章

      网友评论

          本文标题:mybatis读取longraw失败getBLOB not im

          本文链接:https://www.haomeiwen.com/subject/jfhhictx.html