2016-07-23 3 views
0

Ich möchte Sie fragen, was ist der beste Weg, wie Sie Datei in der Datenbank speichern.So speichern Sie Datei in der Datenbank mit Hibernate

Welcher Datentyp ist am besten zu verwenden?

Ich versuche, byte[] zu verwenden, aber es gibt eine Menge Probleme mit Datenbankschema zu generieren. Anmerkungen für Satz mediumblob funktioniert nicht.

Ich lese viele Tutorials, aber nie funktioniert! Mein Hibernate generiert immer tinyblob!

Können Sie mir bitte helfen?

Ich benutze MySQL.

+0

haben Sie versucht LONGBLOB? – Pankaj

+0

ja, aber Schema generieren immer tinyblob – clougioc

+0

können Sie das Modell veröffentlichen. – Priyamal

Antwort

0

ich denke, dass Sie Ihre Daten in einem Blob speichern sollten, das innerhalb java.sql.Blob; Paket ist, lassen Sie uns sagen, dass Sie ein Modell wie dieses haben.

import java.sql.Blob; 
public class folder{ 
    public Blob file; 

    public Blob getFile() { 
     return file; 
    } 

    public void setFile(Blob file) { 
     this.file = file; 
    } 
} 

gehen mit folgenden Ansatz, den Ordner Objekt

byte[] FileBytes = //read file and assign to byte array 
    folderOb.setFile(photoBytes);//you don't need to set a Blob just pass a byte array 
    session.save(folderOb); //saving in the database 

Änderung dieser

Ihre XML-Mapping speichern

<property name="file" column="file" type="blob" />