【问题标题】:How to Insert/retrieve Images in SQL server 2008 R2, using Java code?如何使用 Java 代码在 SQL Server 2008 R2 中插入/检索图像?
【发布时间】:2012-03-24 12:44:43
【问题描述】:

我正在开发一个需要从/向 DB (SQL server 2008 R2) 插入/检索的 java 程序。谁能帮帮我?

【问题讨论】:

    标签: java sql-server sql-server-2008 sql-server-2008-r2


    【解决方案1】:
    public void insertImage(Connection conn,String img)
            {
                    int len;
                    String query;
                    PreparedStatement pstmt;
    
                    try
                    {
                            File file = new File(img);
                            FileInputStream fis = new FileInputStream(file);
                            len = (int)file.length();
    
                            query = ("insert into TableImage VALUES(?,?,?)");
                            pstmt = conn.prepareStatement(query);
                            pstmt.setString(1,file.getName());
                            pstmt.setInt(2, len);
    
                            // Method used to insert a stream of bytes
                            pstmt.setBinaryStream(3, fis, len); 
                            pstmt.executeUpdate();
    
                    }
                    catch (Exception e)
                    {
                            e.printStackTrace();
                    }
            }
    
            public void getImageData(Connection conn)
            {
    
                     byte[] fileBytes;
                     String query;
                     try
                     {
                             query = "select data from tableimage";
                             Statement state = conn.createStatement();
                             ResultSet rs = state.executeQuery(query);
                             if (rs.next())
                            {
                                      fileBytes = rs.getBytes(1);
                                      OutputStream targetFile=  
                                      new FileOutputStream(
                                           "d://filepath//new.JPG");
    
                                      targetFile.write(fileBytes);
                                      targetFile.close();
                            }        
    
                     }
                     catch (Exception e)
                     {
                             e.printStackTrace();
                     }
            }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多