今天做一个图片Base64的数据插入到MySql中,其中数据字段为Blob类型,再网上找了好多方法才找到一个比较好点的转换,代码如下:
注意如下:在MySql数据库下,Blob是有大小限制,享用大数据建议用LongBlob
Clob c = new SerialClob(s1.toCharArray());//String 转 clob
Blob b = new SerialBlob(s1.getBytes("GBK"));//String 转 blob
// 也可以这样不传字符集名称,默认使用系统的
// Blob b = new SerialBlob(s1.getBytes());
String clobString = c.getSubString(1, (int) c.length());//clob 转 String
String blobString = new String(b.getBytes(1, (int) b.length()),"GBK");//blob 转 String
// 前面若没传入字符集名称,则这里也不需要传入,以免出错
// String blobString = new String(b.getBytes(1, (int) b.length()));