2016-04-25 6 views
1

Ich arbeite am Hochladen von Dateien. Ich habe diesen Code in meinem Contoller.Alternative Methode für Hibernate.createBlob (file.getInputStream())

try { 
    Blob blob = Hibernate.createBlob(file.getInputStream()); // error here!! 
    document.setFilename(file.getOriginalFilename()); 
    document.setContent(blob); 
    document.setContentType(file.getContentType()); 
    } catch (IOException e) { 
    e.printStackTrace(); 
} 

Der Fehler ist, wobei das Verfahren createBlob (Inputstream) wird für die Art Ruhezustand nicht definiert. Ich verwende Hibernate 4 und diese Methode scheint nicht darin zu existieren. Wie behebe ich das?

+0

http://stackoverflow.com/questions/18051290/method-hibernate-createblob-is-deprecated-from -hibernate-4-0-1-and-moved-to-hi – Reimeus

Antwort

0

Hey, was Sie verwenden sollten, ist:

try { 
    Blob blob =Hibernate.getLobCreator(HibernateUtil.getSessionFactory().getCurrentSession()).createBlob(file.getInputStream()); 
    document.setFilename(file.getOriginalFilename()); 
    document.setContent(blob); 
    document.setContentType(file.getContentType()); 
    } catch (IOException e) { 
    e.printStackTrace(); 
} 

Das sollte es tun Ich denke,

+0

Was ist das SessionFactory hier? sessionfactory ist ungelöst. –

+0

hat den Code geändert. Verwenden Sie entweder getCurrentSession oder createSession – kism3t

Verwandte Themen