Class BlobJavaType
- java.lang.Object
-
- org.hibernate.type.descriptor.java.AbstractClassJavaType<Blob>
-
- org.hibernate.type.descriptor.java.BlobJavaType
-
- All Implemented Interfaces:
Serializable
,BasicJavaType<Blob>
,JavaType<Blob>
public class BlobJavaType extends AbstractClassJavaType<Blob>
Descriptor forBlob
handling.Note,
Blob
s really are mutable (their internal state can in fact be mutated). We simply treat them as immutable because we cannot properly check them for changes nor deep copy them.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
BlobJavaType.BlobMutabilityPlan
-
Nested classes/interfaces inherited from interface org.hibernate.type.descriptor.java.JavaType
JavaType.CoercionContext
-
-
Field Summary
Fields Modifier and Type Field Description static BlobJavaType
INSTANCE
-
Constructor Summary
Constructors Constructor Description BlobJavaType()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
areEqual(Blob one, Blob another)
Determine if two instances are equalint
extractHashCode(Blob value)
Extract a proper hash code for the given value.String
extractLoggableRepresentation(Blob value)
Extract a loggable representation of the given value.Blob
fromString(CharSequence string)
long
getDefaultSqlLength(Dialect dialect, JdbcType jdbcType)
The default column length when this Java type is mapped to a SQL data type which is parametrized by length, for exampleTypes.VARCHAR
.Blob
getReplacement(Blob original, Blob target, SharedSessionContractImplementor session)
String
toString(Blob value)
<X> X
unwrap(Blob value, Class<X> type, WrapperOptions options)
Unwrap an instance of our handled Java type into the requested type.<X> Blob
wrap(X value, WrapperOptions options)
Wrap a value as our handled Java type.-
Methods inherited from class org.hibernate.type.descriptor.java.AbstractClassJavaType
getComparator, getJavaType, getJavaTypeClass, getMutabilityPlan, unknownUnwrap, unknownWrap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.type.descriptor.java.BasicJavaType
getRecommendedJdbcType
-
Methods inherited from interface org.hibernate.type.descriptor.java.JavaType
appendEncodedString, coerce, createJavaType, createJavaType, fromEncodedString, getDefaultSqlPrecision, getDefaultSqlScale, getDefaultValue, getLongSqlLength, isInstance, isTemporalType, isWider
-
-
-
-
Field Detail
-
INSTANCE
public static final BlobJavaType INSTANCE
-
-
Method Detail
-
extractLoggableRepresentation
public String extractLoggableRepresentation(Blob value)
Description copied from interface:JavaType
Extract a loggable representation of the given value.- Specified by:
extractLoggableRepresentation
in interfaceJavaType<Blob>
- Overrides:
extractLoggableRepresentation
in classAbstractClassJavaType<Blob>
- Parameters:
value
- The value for which to extract a loggable representation.- Returns:
- The loggable representation
-
fromString
public Blob fromString(CharSequence string)
-
extractHashCode
public int extractHashCode(Blob value)
Description copied from interface:JavaType
Extract a proper hash code for the given value.- Specified by:
extractHashCode
in interfaceJavaType<Blob>
- Overrides:
extractHashCode
in classAbstractClassJavaType<Blob>
- Parameters:
value
- The value for which to extract a hash code.- Returns:
- The extracted hash code.
-
areEqual
public boolean areEqual(Blob one, Blob another)
Description copied from interface:JavaType
Determine if two instances are equal
-
getReplacement
public Blob getReplacement(Blob original, Blob target, SharedSessionContractImplementor session)
-
unwrap
public <X> X unwrap(Blob value, Class<X> type, WrapperOptions options)
Description copied from interface:JavaType
Unwrap an instance of our handled Java type into the requested type.As an example, if this is a
JavaType<Integer>
and we are asked to unwrap theInteger value
as aLong
, we would return something likeLong.valueOf( value.longValue() )
.Intended use is during
PreparedStatement
binding.- Type Parameters:
X
- The conversion type.- Parameters:
value
- The value to unwraptype
- The type as which to unwrapoptions
- The options- Returns:
- The unwrapped value.
-
wrap
public <X> Blob wrap(X value, WrapperOptions options)
Description copied from interface:JavaType
Wrap a value as our handled Java type.Intended use is during
ResultSet
extraction.- Type Parameters:
X
- The conversion type.- Parameters:
value
- The value to wrap.options
- The options- Returns:
- The wrapped value.
-
getDefaultSqlLength
public long getDefaultSqlLength(Dialect dialect, JdbcType jdbcType)
Description copied from interface:JavaType
The default column length when this Java type is mapped to a SQL data type which is parametrized by length, for exampleTypes.VARCHAR
.- Returns:
Size.DEFAULT_LENGTH
unless overridden
-
-