Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用保存在数据库中的链接在jlabel上显示客户的图像_Java_String_Image_Swing_Jdbc - Fatal编程技术网

Java 使用保存在数据库中的链接在jlabel上显示客户的图像

Java 使用保存在数据库中的链接在jlabel上显示客户的图像,java,string,image,swing,jdbc,Java,String,Image,Swing,Jdbc,在我的Java应用程序中,下面的代码运行良好。但我想展示的照片,客户也除了他们。我不想在数据库中将照片存储为blob。我只想将照片存储在某个本地驱动器中,并在jLabel中显示它。有人能帮我吗 try{ Class.forName("org.apache.derby.jdbc.ClientDriver"); Connection conn= DriverManager.getConnection("jdbc:derby://localhost:1527/C:/gymsoft/da

在我的Java应用程序中,下面的代码运行良好。但我想展示的照片,客户也除了他们。我不想在数据库中将照片存储为blob。我只想将照片存储在某个本地驱动器中,并在jLabel中显示它。有人能帮我吗

try{
    Class.forName("org.apache.derby.jdbc.ClientDriver");
    Connection conn= DriverManager.getConnection("jdbc:derby://localhost:1527/C:/gymsoft/data", "APP", "app");
    Statement stmt=conn.createStatement();
    String query ="SELECT * FROM CUSTOMER WHERE CODE = '"+jTextField1.getText()+"' ";
    ResultSet rs = stmt.executeQuery(query);
    if(rs.next()) {
        String w = rs.getString("NAME");
        String x = rs.getString("CODE");
        TF1.setText(w);
        TF2.setText(x);
    } else {
        JOptionPane.showMessageDialog(null, "User Not Found!!");
    }
} catch ( ClassNotFoundException | SQLException e) {
    JOptionPane.showMessageDialog(null, "Error In Connection!!");
} 

JLabel
中显示图像当然是可能的。也可以从链接检索图像。但是,我在您的代码中没有发现这些尝试

我在你的代码中找到的是

  • SQL注入漏洞。当用户在
    jTextField1
    中输入

    3';drop database app`
    
    你可以和你的数据库说再见了

  • 混合使用数据库查询和UI组件更新。数据库查询通常速度较慢,因此不应在更新UI的线程所在的同一线程上执行。此外,所有Swing组件都应该在事件分派线程上更新,因此将整个代码移动到工作线程不是一个选项。你需要把它们分开。有关更多信息,请参阅指南
  • 您忘记关闭
    连接
    。添加这样的
    close
    语句时,请在
    finally
    块中执行

1)请对代码、输入/输出和结构化文档(如HTML或XML)使用代码格式。为此,请选择示例并单击消息发布/编辑表单上方的
{}
按钮。2) 请对代码块使用一致的逻辑缩进。“有人能帮我吗?”我不确定。你有什么特别的问题吗?看看FileIO,有XxxStream,使用它可以上传/下载lagre文件或图像,可能取决于数据库中为列+1设置的数据类型,以便发现漏洞,即使没有询问,优点:)