【问题标题】:How to add a image to SQL Database from Java如何从 Java 将图像添加到 SQL 数据库
【发布时间】:2015-05-12 02:28:04
【问题描述】:

我正在制作一个软件,我想提供一个添加图片的选项。

我正在使用 Netbeans 7.4、mySQL server 5.1 和 Query Browser 1.2

我想知道如何配置数据库以及如何开发添加图片的功能。

【问题讨论】:

    标签: mysql netbeans jdbc netbeans-7


    【解决方案1】:

    您可以使用 LONGBLOB 等数据类型将图像存储在 mySql 数据库中

    img LONGBLOB not null
    

    要在 Java 中执行此操作,您需要执行以下操作来获取图像的字节字符串:

    File image = new File(imageName);
    BufferedImage bufferedImage = ImageIO.read(image);
    
    WritableRaster writableRaster = bufferedImage.getRaster();
    DataBufferByte dataBufferByte = (DataBufferByte) raster.getDataBuffer();
    

    然后您可以使用 JDBC 将其添加到您的数据库中。

    注意:虽然我已经为您提供了如何执行此操作的答案,但我不建议以这种方式实施它,因为这是不好的做法。图像可能会变得非常大,您可能会发现您的数据库很快就会被填满。

    相反,更有效的解决方案是将图像存储在代码旁边的目录中,并将图像的路径作为简单的文本字符串存储在数据库中。

    【讨论】:

    • -netbeans 中没有像“光栅”这样的东西。但我找到了“光栅”。即使我收到错误,它也会说“无法从静态上下文引用非静态方法 getDataBuffer()”。
    猜你喜欢
    • 2021-02-20
    • 2010-10-12
    • 1970-01-01
    • 1970-01-01
    • 2013-11-18
    • 1970-01-01
    • 1970-01-01
    • 2014-01-29
    相关资源
    最近更新 更多