Blob图像是从数据库中获取但是没有在java jlabel中显示? [英] Blob image is fetching from database but not displaying in java jlabel?
本文介绍了Blob图像是从数据库中获取但是没有在java jlabel中显示?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我几乎尝试过所有事情......请帮助任何人。输出显示为:123456789javax.swing.ImageIcon@2f672341BUILD SUCCESSFUL(总时间:21秒)
但是图像没有显示。
我尝试过:
public class viewimage extends javax.swing.JFrame {
private javax.swing.JLabel img123;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JLabel jLabel2;
private javax.swing.JTextField jTextField1;
String 路径;
int i;
private String image;
public viewimage(){
initComponents();
}
private void jButton1ActionPerformed(java.awt.event) .ActionEvent evt){
尝试 {
System.out.print( 1 );
连接con = DriverManager.getConnection( jdbc:mysql:// localhost:3306 / sample1, root, );
System.out.print( 2 );
语句st = con.createStatement();
System.out.print( 3 );
ResultSet rs = st.executeQuery( select * from images name =' + jTextField1.getText()+ ');
if (rs.next()){
System.out.print( 4 跨度>);
path = rs.getString( image);
System.out.print( 5 );
rs.absolute(i + 1);
ImageIcon image = new ImageIcon(rs.getBytes( 图像跨度>));
System.out.print( 6 );
Image im = image.getImage();
System.out.print( 7 );
Image myImg = im.getScaledInstance(img123.getWidth(),img123.getHeight(),Image.SCALE_SMOOTH);
System.out.print( 8 );
System.out.print( 9 );
img123.setIcon(image);
System.out.print(image);
getContentPane()。add(img123);
}
else {
JOptionPane.showMessageDialog(null, 无数据);
}
} catch (例外e){
e.printStackTrace();
}
}
私有 void jButton2ActionPerformed( java.awt.event.ActionEvent evt){
jTextField1.setText( );
img123.setIcon(null);
}
解决方案
这可能有所帮助: java - 在MySQL中显示存储为BLOB的映像而不写入磁盘 - Stack Overflow [ ^ ]
I have tried nearly everything... Please help anyone. The output is showing as: 123456789javax.swing.ImageIcon@2f672341BUILD SUCCESSFUL (total time: 21 seconds)
But the image is not displaying.
What I have tried:
public class viewimage extends javax.swing.JFrame {
private javax.swing.JLabel img123;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JLabel jLabel2;
private javax.swing.JTextField jTextField1;
String path;
int i;
private String image;
public viewimage() {
initComponents();
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
System.out.print(1);
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/sample1", "root", "");
System.out.print(2);
Statement st = con.createStatement();
System.out.print(3);
ResultSet rs = st.executeQuery("select * from images where name = '" + jTextField1.getText() + "'");
if (rs.next()) {
System.out.print(4);
path = rs.getString("image");
System.out.print(5);
rs.absolute(i+1);
ImageIcon image = new ImageIcon(rs.getBytes("image"));
System.out.print(6);
Image im = image.getImage();
System.out.print(7);
Image myImg = im.getScaledInstance(img123.getWidth(), img123.getHeight(),Image.SCALE_SMOOTH);
System.out.print(8);
System.out.print(9);
img123.setIcon(image);
System.out.print(image);
getContentPane().add(img123);
}
else{
JOptionPane.showMessageDialog(null, "No Data");
}
} catch (Exception e) {
e.printStackTrace();
}
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText("");
img123.setIcon(null);
}
解决方案
This might help: java - Display an Image stored as BLOB in MySQL without writing to disk - Stack Overflow[^]
这篇关于Blob图像是从数据库中获取但是没有在java jlabel中显示?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文