关于SSM的图片插入和获取

2019-04-15 12:54发布

实体类和mybatis配置

// 图片实体类 public class Pic{ private String pic; public String getPic(){ return pic; } public void setPic(String pic){ this.pic = pic == null ? null : pic.trim(); } } // mybatis Mapper public interface PicMapper{ int insert(Pic pic); List selectAll(); } //xml配置文件略过

在oracle插入CLOB格式图片

首先获取到图片,方式有很多,这只取了一种: FileInputStream fis = new FileInputStream("D:/321.bmp"); int av = fis.available(); byte[] buff = new byte(av); // 图片流读取到字节数组 fis.read(buff); fis.close(); // 进行base64编码 Encoder encoder = Base64.getEncoder(); String pic = encoder.encodeToString(buff); //插入到数据库 Pic myPic = new Pic(); mypic.setPic(pic); // 实例自动注入 picMapper.insert(mypic);

获取CLOB格式图片

List list = picMapper.selectAll(); for(Pic pic : list){ // base64解码 Decoder decoder = Base64.getDecoder(); byte[] bytes = decoder.decode(pic.getPic()); String returnStr = new String(bytes); }