久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

Mybatis在sqlite中無法讀寫byte[]類問題的解決辦法

瀏覽:3日期:2023-10-22 12:36:01

開發(fā)環(huán)境: springboot + mybatis plus

場景:在DAO的bean中有byte[]類時,寫入可以成功,但是讀取不行。從錯誤棧中可以看到原因是:sqlite的driver中,JDBC4ResultSet沒有實現(xiàn)以下接口:

public Blob getBlob(int col) throws SQLException { throw unused(); } public Blob getBlob(String col) throws SQLException { throw unused(); }

讀寫byte[]在JDBC規(guī)范中有3種接口:

InputStream getBinaryStream(int col) byte[] getBytes(int col) Blob getBlob(int col)

Mybatis Plus默認會選擇第3個接口。因此,這里只需要將處理方法切換到前兩個接口即可:方法就是更換一個TypeHandler

直接上代碼:

@Data@TableName(autoResultMap = true)public class Member { @TableId private String personId; private String name; private String telephone; @TableField(typeHandler = ByteArrayTypeHandler.class) private byte[] img; private String ext; private Integer type; private Integer ts;}

關(guān)鍵點:

添加@TableName(autoResultMap = true) 添加@TableField(typeHandler = ByteArrayTypeHandler.class)

之后就可以正常讀寫byte[]了

總結(jié)

到此這篇關(guān)于Mybatis在sqlite中無法讀寫byte[]類問題的文章就介紹到這了,更多相關(guān)Mybatis在sqlite無法讀寫byte[]類內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

相關(guān)文章:
主站蜘蛛池模板: 壤塘县| 武山县| 德江县| 启东市| 康定县| 新密市| 凤庆县| 柞水县| 盈江县| 杨浦区| 科技| 边坝县| 钦州市| 沁水县| 黎川县| 凤山县| 图木舒克市| 喀什市| 八宿县| 绥化市| 平顶山市| 肥乡县| 肥东县| 神农架林区| 静海县| 方山县| 鄂托克旗| 江都市| 四子王旗| 佳木斯市| 延吉市| 扎赉特旗| 通州区| 正宁县| 安龙县| 临沭县| 额济纳旗| 宣威市| 嵊泗县| 桓仁| 阳谷县|