Java 如何将图像存储为BLOB,然后在播放中显示-有动力的网站?

Java 如何将图像存储为BLOB,然后在播放中显示-有动力的网站?,java,image,playframework,blob,yaml,Java,Image,Playframework,Blob,Yaml,我正在尝试为一个剧本创建一个初始数据.yml文件!框架应用程序。web应用程序的一部分涉及图像(用于配置文件图片等),我希望将它们作为blob存储在MySQL数据库中(我知道这不是最佳做法,稍后将使用文件系统)。我想知道如何在我的YML文件中放置“测试”图像,以及如何在web应用程序中访问并显示它。任何帮助都将不胜感激。以下是我迄今为止所做的尝试: YML的一部分: Picture(Picture1): picture: 0100010101000101010001010100

我正在尝试为一个剧本创建一个
初始数据.yml
文件!框架应用程序。web应用程序的一部分涉及图像(用于配置文件图片等),我希望将它们作为blob存储在MySQL数据库中(我知道这不是最佳做法,稍后将使用文件系统)。我想知道如何在我的YML文件中放置“测试”图像,以及如何在web应用程序中访问并显示它。任何帮助都将不胜感激。以下是我迄今为止所做的尝试:

YML的一部分:

Picture(Picture1):
     picture:     010001010100010101000101010001010100010101000101010001010100010101000101010001010100010101000101010001010100010101000101|image/png
我们的Hibernate模型的图片是一个
字节[]

以下是我如何尝试访问HTML中的图像:

#{if _post.picture}
        <!-- display the picture -->
        <p> Hey, a picture should go here.</p>
        <img src="@{Application.showImage(_post.getPicture().getBinaryImage())}" alt="long islands for life"/>
    #{/if}

现在,我在这个方法的第一行得到一个NullPointerException,因为似乎image/byte[]没有存储在数据库中。您知道如何将其适当地存储在数据库中,然后显示在网页上吗?

您应该将整个二进制数据以Base64编码形式添加到!!二进制的

binaryData: !!binary VGhpcyBTdHJpbmcgaXMgc3RvcmVkIGluIHlhbWwgZmlsZSB1c2luZyBiYXNlNjQ=
此示例来自Play框架示例

samples-and-tests/just-test-cases/test/yamlTestData.yml

您应该将您的整个二进制数据以Base64编码的形式添加到!!二进制的

binaryData: !!binary VGhpcyBTdHJpbmcgaXMgc3RvcmVkIGluIHlhbWwgZmlsZSB1c2luZyBiYXNlNjQ=
此示例来自Play框架示例

samples-and-tests/just-test-cases/test/yamlTestData.yml