首页 > 其他分享 >关于导出图片的事宜

关于导出图片的事宜

时间:2023-06-14 09:57:01浏览次数:33  
标签:return 字节 导出 byte 事宜 inStream conn 图片

1.数据库存的图片路径,表格导出的时候,需要展示成图片

2.需要将图片路径转化为字节码

3.先获取图片路径

4.转为字节码

5.接收的传参格式‘:

@JsonProperty("product_back_url")
private String productBackUrl;
@Excel(name = "商品背面", width = 15, height = 35, type = 2, imageType = 2)
private byte[] productBackPic;
6.实际取值的地方:
if (StringUtils.isNotBlank(obj.getProductBackUrl())) {
obj.setProductBackPic(HttpUtil.getNetImgByUrl(obj.getProductBackUrl()));
}

public class HttpUtil {

/**
* 获取网络图片转成字节流
*
* @param strUrl 完整图片地址
* @return 图片资源数组
*/
public static byte[] getNetImgByUrl(String strUrl) {
try {
URL url = new URL(strUrl);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setConnectTimeout(2 * 1000);
// 通过输入流获取图片数据
InputStream inStream = conn.getInputStream();
// 得到图片的二进制数据
byte[] btImg = readInputStream(inStream);
return btImg;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}

/**
* 从输入流中获取字节流数据
*
* @param inStream 输入流
* @return 图片流
*/
private static byte[] readInputStream(InputStream inStream) throws Exception {
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
// 设置每次读取缓存区大小
byte[] buffer = new byte[1024 * 10];
int len = 0;
while ((len = inStream.read(buffer)) != -1) {
outStream.write(buffer, 0, len);
}
inStream.close();
return outStream.toByteArray();
}

标签:return,字节,导出,byte,事宜,inStream,conn,图片
From: https://www.cnblogs.com/ewa-03/p/17479300.html

相关文章

  • .NET指定图片地址下载并转换Base64字符串
    需求描述    需要调用第三方图片上传接口上传图片,对方图片格式只能接收Base64字符串。所以我们需要将系统服务器的图片通过Url下载下来,然后转换成Base64字符串。接下来我们将使用HttpClient类库下载图片并将其转换为Base64格式的字符串。代码示例///<summary>......
  • opencv 图片处理/颜色通道提取/截取感兴趣部分图片
    图片处理importcv2#=============================#截取图像某一部分ROI(regionofinterest)mini=cv2.imread('C:/Users/59925/Desktop/pytest/pics/minions-s.jpg')print(mini.shape)cut_mini=mini[0:150,0:150]cv2.imshow('img',cut_mini)#============......
  • WinForm下DataGridView导出Excel的实现
    WinForm下DataGridView导出Excel的实现 1.说明:导出的效率说不上很高,但至少是可以接收的.参考网上很多高效导出Excel的方法,实现到时能够实现的,导出速度也很快,不过缺陷在与不能很好的进行单元格的格式化,比如上图中的"拼音码"字段中的值"000000000012120",在导出后就显示"1212......
  • gitlab导出项目
    1、选中项目,点击进去,然后点击Settings注意:自己的项目才会有这个Settings2、进入后会默认进入到General页面,选择Advanced的Expand按钮进行点击3、点击展开后的Exportproject按钮4、点击后,又会变成之前刚进入的样子,这时再次点击Advanced的Expand5、这时展开后还是显......
  • 完美解决SpringBoot上传图片之后,需要重服务才能访问
    上传图片后需要重新编译才能访问图片添加一个配置文件WebMvcConfigctrl+shift+alt+/选择Registry,勾选compiler.automake.allow.when.app.running勾选添加一个配置文件WebMvcConfigpackagecom.fans.common.config;importorg.springframework.context.annotation.Configu......
  • Ajax-hook之百度图片测试
    /*Ajax-hook是一种比较实用的技术,它可以自定义XMLHttpRequest中的方法和属性,覆盖全局的XMLHttpRequest。当网站在使用Ajax请求动态渲染时,开发者可以对其中的请求参数和响应数据进行任意修改和展示,有些类似前面讲过的本地覆盖,区别是这里会去调用原本的XMLHttpRequest。*///......
  • 图片优化之下一代图片格式WebP和AVIF
    本文最初由KaranjeetSingh在AdobeTechBlog上发表。已获作者授权翻译和发布。https://medium.com/adobetech/image-optimisation-with-next-gen-image-formats-webp-and-avif-248c75afacc4翻译:姜金元审校:LiveVideoStack特邀技术审校编辑:AlexWebP& AVIF 影音探索#002#  速......
  • 如何将 pl/sql Developer 中查询的结果集导出到 Excel . txt . html . xml csv中?
    如何将pl/sqlDeveloper中查询的结果集导出到Excel.txt.html.xmlcsv中?https://blog.csdn.net/fish_boneold/article/details/83919116选中结果集,点击右键选 copytoexcel就可导出到一个临时的excel文件了,如temp001.xls,然后选择文件-另存为保存为我们的文......
  • Java 利用POI对象 SXSSFWorkbook 导出Excel
    最开始调用的方法是(标记的地方): workbook=newHSSFWorkbook();和workbook=newXSSFWorkbook();这两个方法就是导出Excel的最关键的方法,接下来我来说说这两个方法作用:1.HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xls;2.XSSFWorkbook:是操作Excel2007的版本......
  • 高颜值图片处理工具,集多种实用功能于一身
       地址:http://in-git.gitee.io/in-nav/#/ 功能点: 1.集成多款高质量图片滤镜,让您的图片瞬间提升颜值,更加精美。 2.支持多种格式转换,包括图片转换为base64、png、webp等格式,方便您在不同的场合使用。 3.图片压缩功能,快速缩小图片文件大小,方便存储和传输。 ......