Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để lưu các tệp PDF đã tạo vào cơ sở dữ liệu MySQL bằng Java?

  1. Loại dữ liệu mà bạn có thể sử dụng là BLOB .
  2. Chuyển đổi tệp PDF và giữ nguyên byte [] mảng trong cơ sở dữ liệu.

    private byte[] getByteArrayFromFile(final Document handledDocument) throws IOException {
        final ByteArrayOutputStream baos = new ByteArrayOutputStream();
        final InputStream in = new FileInputStream(handledDocument);
        final byte[] buffer = new byte[500];
    
        int read = -1;
        while ((read = in.read(buffer)) > 0) {
            baos.write(buffer, 0, read);
        }
        in.close();
    
        return baos.toByteArray();
    }
    
  3. Để chèn nó vào DB Nếu bạn đang sử dụng bất kỳ công cụ ORM nào, bạn chỉ cần ánh xạ cột dưới dạng đốm màu và công cụ sẽ xử lý nó cho bạn. Trong trường hợp bạn không sử dụng nó thì bạn có thể tạo một câu lệnh đã soạn sẵn. Câu lệnh có một phương thức gọi là setBlob () sẽ hữu ích. Hãy xem xét ví dụ dưới đây và tạo một truy vấn chèn bình thường với cột blob.

    String sql = "INSERT INTO testtable(stringcolumn, blobcolumn) VALUES(?,?)";
    
    PreparedStatement statement = conn.getConnection().prepareStatement(sql);
    statement.setLong(1, version);
    ByteArrayInputStream bais = new ByteArrayInputStream(getByteArrayFromFile(document));
    statement.setBlob(2, bais);          
    statement.execute();
    
    conn.commit();
    



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. trình điều khiển oledb mysql

  2. Làm cách nào để phân trang kết quả truy vấn cho Infinite Scroll?

  3. làm thế nào để kiểm tra xem một chuỗi trông ngẫu nhiên, hay do con người tạo ra và có thể phát âm?

  4. Bảng PHP (Ngày) thay đổi màu động dựa trên tính hợp lệ

  5. Kích thước VARCHAR của MySQL?