本文整理匯總了Java中org.hibernate.Hibernate.getLobCreator方法的典型用法代碼示例。如果您正苦於以下問題:Java Hibernate.getLobCreator方法的具體用法?Java Hibernate.getLobCreator怎麽用?Java Hibernate.getLobCreator使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.hibernate.Hibernate
的用法示例。
在下文中一共展示了Hibernate.getLobCreator方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: createBlob
import org.hibernate.Hibernate; //導入方法依賴的package包/類
/**
* Permet de créer un Blob à partir d'un stream sans indiquer/connaître la taille. Fonctionne uniquement avec jdbc4. Une exception est
* lancée si jdbc4 n'est pas présent.
*
* @param aInputStream
* @return
*/
public Blob createBlob(InputStream aInputStream) {
final LobCreator lobCreator = Hibernate.getLobCreator(session);
// // JDBC4 -> pas besoin de la taille
// if (lobCreator instanceof ContextualLobCreator) {
// // Passage de -1 comme taille: De toutes façons cette valeur n'est pas utilisée en jdbc4
// return lobCreator.createBlob(aInputStream, -1);
// }
// else {
// Fallback JDBC3
// On récupère le stream pour connaitre la taille
final ByteArrayOutputStream bos = new ByteArrayOutputStream();
try {
IOUtils.copy(aInputStream, bos);
return lobCreator.createBlob(new ByteArrayInputStream(bos.toByteArray()), bos.size());
}
catch (IOException ioe) {
throw new RuntimeException(ioe);
}
// }
}
示例2: getOptions
import org.hibernate.Hibernate; //導入方法依賴的package包/類
private WrapperOptions getOptions(final SessionImplementor session) {
return new WrapperOptions() {
public boolean useStreamForLobBinding() {
return Environment.useStreamsForBinary()
|| session.getFactory().getDialect().useInputStreamToInsertBlob();
}
public LobCreator getLobCreator() {
return Hibernate.getLobCreator( session );
}
public SqlTypeDescriptor remapSqlTypeDescriptor(SqlTypeDescriptor sqlTypeDescriptor) {
final SqlTypeDescriptor remapped = sqlTypeDescriptor.canBeRemapped()
? session.getFactory().getDialect().remapSqlTypeDescriptor( sqlTypeDescriptor )
: sqlTypeDescriptor;
return remapped == null ? sqlTypeDescriptor : remapped;
}
};
}