public static String blobToBase64String(Blob blob) {
String resBase64 = "";
if(null != blob) {
try {
InputStream inputStream = blob.getBinaryStream();
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int n = 0;
while (-1 != (n = inputStream.read(buffer))) {
outputStream.write(buffer, 0, n);
resBase64 =new BASE64Encoder().encode(outputStream.toByteArray()) ;
outputStream.close();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
return "data:image/jpeg;base64,"+resBase64;
}else {
return null;
后台接收前端File 可通过 Hibernate.createBlob(new FileInputStream(file))
oqcReport.setImg(Hibernate.createBlob(new FileInputStream(file)));
在Java开发中,有时候我们需要将文件以二进制大对象(Blob)的形式返回。Blob是一种数据类型,主要用于存储二进制数据,比如图片、音频、视频等文件。在这篇文章中,我们将介绍如何在Java中返回文件的Blob,并给出相应的代码示例。
Blob的定义
在Java中,Blob是java.sql包下的一个接口,主要用于操作二进...
由于需求要将上传的文件以BASE64的方式保存到MySQL的Blob字段,并可以读取Blob字段下载生成文件,方法如下:
1、下载用于BASE64编码转换的sun.misc.BASE64Decoder和sun.misc.BASE64Encoder的支持库(jar),放到运行库中。
2. 实现代码如下:
package com.pszx.venus;
import java.io.B
java后端向前端发送blob类型数据流
项目需求概述:
前端请求图片时遇到跨域问题,思考解决方案时,考虑前端请求本地javaweb接口时带上图片url,由后端请求到图片后再发送到前端。
package com.neusoft.viic.server.dataService.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springfram
responseType: 'blob'
}).then(res => {
if (window.navigator && window.navigator.msSaveOrOpenBlob) {