我可以将使用JFileChooser选择的图像保存到phpMyAdmin中MySQL的BLOB列中,但是如何查看该BLOB并将其加载到JFrame中以便在phpMyAdmin中显示呢?任何代码都会很有帮助。
发布于 2012-02-20 19:35:54
从数据库中检索BLOB并使用ImageIO.read创建BufferedImage
有关如何绘制图像的信息,请参见here。
发布于 2012-02-20 19:42:07
这是一个代码段,显示了JLabel对象中的图片,该对象以blob格式存储在DB中。
Blob sqlphoto = (Blob) rs.getBlob("photo");
if (sqlphoto != null) {
InputStream photo = sqlphoto.getBinaryStream();
Image image = null;
try {
image = ImageIO.read(photo);
jLabel31.setIcon(new ImageIcon(image));
}
catch (IOException ex) {
Logger.getLogger(ModifyClerk.class.getName()).log(Level.SEVERE, null, ex);
}}
发布于 2012-02-20 19:48:18
Dmitri上面列出的解决方案将解决您的问题,这一点是肯定的。当我还是一个程序员新手的时候,我就习惯于做同样的事情,但是在数据库中存储图像并不是一个好主意,因为它们存在性能问题。最好将图像文件的位置路径存储到数据库中,并将图像存储在文件系统中。这将节省您的大量处理,并提高您的性能。为了更好地理解,请阅读这个精彩的讨论
https://stackoverflow.com/questions/9360365
复制相似问题