Im Hibernate (3.2.1.GA) verwende ich die folgende Methode, um CLOB-Daten in Oracle (10g) -Datenbank einzufügen.Wie konvertiert man einen CLOB-Datentyp in Hibernate in einen String?
Hibernate.createClob(parameters.get("txtCatImage"));
parameters
ist ein Map
wo alle Anforderungsparameter gespeichert wurden. Beim Abrufen des Clob
Datentyps von der Datenbank direkt würde so etwas wie entityObj.getCatImage()
nicht funktionieren.
Gesehen this und this Fragen, aber konnte den Weg nicht finden.
Folgendes ist die Entität, die eine Clob
-Eigenschaft verwendet.
public class Category implements java.io.Serializable {
private Long catId; // Primary key.
private Clob catImage; // CLOB type field.
// Other fields.
private static final long serialVersionUID = 1L;
public Category() {}
// Overloaded constructs + getters + setters + hashcode() + equals() + toString().
}
Das Clob
Feld in der Datenbank speichert nur einen Bilddateinamen, in diesem Fall.
Definieren Sie "würde nicht funktionieren." Erhalten Sie einen Fehler oder wird 'null' zurückgegeben? – Dev
@Dev - Es gibt keinen Fehler. Es zeigt nur eine Objektreferenz wie diese 'org.hibernate.lob.SerializableClob @ 1e2ad75' mit entweder 'obj.getCatImage(). ToString()' oder 'obj.getCatImage()' anstatt den tatsächlichen Inhalt anzuzeigen, der ein ist Bild Dateiname in der Oracle-Datenbank. Das eigentliche SQL in der Oracle-Eingabeaufforderung, wie zum Beispiel 'SELECT * FROM category', zeigt jedoch direkt den actaul-Inhalt auf dem Oracle-Terminal an. – Tiny