在 MyBatis 中,如果要读取数据库中的 Blob 字段,可以使用 ResultHandler 接口来处理,代码示例如下:
public class BlobResultHandler implements ResultHandler {
private byte[] content;
@Override
public void handleResult(ResultContext context) {
byte[] blobData = context.getResultObjectAs(byte[].class);
if (blobData != null) {
content = blobData;
}
}
public byte[] getContent() {
return content;
}
}
然后,在 Mapper 接口中定义方法来读取 Blob 字段:
public interface MyMapper {
@Select("SELECT blob_column FROM my_table WHERE id = #{id}")
void getBlobData(@Param("id") Long id, BlobResultHandler resultHandler);
}
调用方式如下:
BlobResultHandler resultHandler = new BlobResultHandler();
myMapper.getBlobData(1L, resultHandler);
byte[] blobData = resultHandler.getContent();
通过调用 getBlobData
方法,可以将 Blob 字段的内容读取到 byte 数组中。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:mybatis怎么读取blob字段