首页 > 解决方案 > Java如何在DEV环境中访问图像作为资源

问题描述

我的问题似乎是一个普遍问题,但实际上并非如此。

我们有一个 DEV 环境,我们在其中运行与 BE 通信的 FrontEnd。如果用户在 FE 上并提供姓名、姓氏、城市和邮政编码等输入,则后端将根据这些输入生成一个 QR 码作为 png 文件。

此 png 文件本地保存在 src/main/....

问题:如何访问此文件,以便我可以在 FE 中向用户显示 QR 码。位于我的 HDD 上的此图像应交付给 FE。

我试过的:

如何在java中引用本地图像?

尝试将图像转换为 BufferedImage

ClassPathResource 没有得到类路径

没有任何效果。图像不会显示。

标签: javaresources

解决方案


您不应该将文件保存在src/main/...目录下。此位置仅在您使用 Maven 等构建工具时在本地开发期间有效。当应用程序被打包时,这个目录不再存在。

您想将图像保存在硬盘驱动器上的某个位置,例如使用File.createTempFile(). 您很可能希望在后台创建一个新的 API 以返回此文件,例如POST /api/user/{id}/qrcode您想要响应Content-type: image/png的 QR 码图像。


推荐阅读