Class JdbcDateJavaType
java.lang.Object
org.hibernate.type.descriptor.java.AbstractClassJavaType<T>
org.hibernate.type.descriptor.java.AbstractTemporalJavaType<Date>
org.hibernate.type.descriptor.java.JdbcDateJavaType
- All Implemented Interfaces:
Serializable
,BasicJavaType<Date>
,JavaType<Date>
,TemporalJavaType<Date>
Descriptor for
Date
handling.- See Also:
- Implementation Specification:
- Unlike most
JavaType
implementations, can handle 2 different "domain representations" (most map just a single type): generalDate
values in addition toDate
values. This capability is shared withJdbcTimeJavaType
andJdbcTimestampJavaType
.
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface org.hibernate.type.descriptor.java.JavaType
JavaType.CoercionContext
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final JdbcDateJavaType
static final DateTimeFormatter
Intended for use in reading HQL literals and writing SQL literals -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
appendEncodedString
(SqlAppender sb, Date value) Appends the value to the SqlAppender in an encoded format that can be decoded again byJavaType.fromEncodedString(CharSequence, int, int)
.boolean
Determine if two instances are equalcoerce
(Object value, JavaType.CoercionContext coercionContext) int
extractHashCode
(Date value) Extract a proper hash code for the given value.protected <X> TemporalJavaType<X>
forDatePrecision
(TypeConfiguration typeConfiguration) fromEncodedString
(CharSequence charSequence, int start, int end) Reads the encoded value from the char sequence start index until the end index and returns the decoded value.fromString
(CharSequence string) The precision represented by this typegetRecommendedJdbcType
(JdbcTypeIndicators context) Obtain the "recommended"SQL type descriptor
for this Java type.boolean
isInstance
(Object value) Is the given value an instance of the described type?unwrap
(Date value, Class type, WrapperOptions options) Unwrap an instance of our handled Java type into the requested type.wrap
(Object value, WrapperOptions options) Wrap a value as our handled Java type.Methods inherited from class org.hibernate.type.descriptor.java.AbstractTemporalJavaType
forTimePrecision, forTimestampPrecision, resolveTypeForPrecision, toString
Methods inherited from class org.hibernate.type.descriptor.java.AbstractClassJavaType
extractLoggableRepresentation, getComparator, getJavaType, getJavaTypeClass, getMutabilityPlan, unknownUnwrap, unknownWrap
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.hibernate.type.descriptor.java.JavaType
createJavaType, extractLoggableRepresentation, getCheckCondition, getComparator, getDefaultSqlLength, getDefaultSqlPrecision, getDefaultSqlScale, getDefaultValue, getJavaType, getJavaTypeClass, getLongSqlLength, getMutabilityPlan, getReplacement, getTypeName, isWider, useObjectEqualsHashCode
Methods inherited from interface org.hibernate.type.descriptor.java.TemporalJavaType
isTemporalType
-
Field Details
-
INSTANCE
-
LITERAL_FORMATTER
Intended for use in reading HQL literals and writing SQL literals- See Also:
-
-
Constructor Details
-
JdbcDateJavaType
public JdbcDateJavaType()
-
-
Method Details
-
getPrecision
Description copied from interface:TemporalJavaType
The precision represented by this type -
isInstance
Description copied from interface:JavaType
Is the given value an instance of the described type?Usually just
getJavaTypeClass().
isInstance(value)
, but some descriptors need specialized semantics, for example, the descriptors forjava.sql.Date
,java.sql.Time
, andjava.sql.Timestamp
. -
areEqual
Description copied from interface:JavaType
Determine if two instances are equal -
extractHashCode
Description copied from interface:JavaType
Extract a proper hash code for the given value.- Specified by:
extractHashCode
in interfaceJavaType<Date>
- Overrides:
extractHashCode
in classAbstractClassJavaType<Date>
- Parameters:
value
- The value for which to extract a hash code.- Returns:
- The extracted hash code.
-
coerce
-
unwrap
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.- Parameters:
value
- The value to unwraptype
- The type as which to unwrapoptions
- The options- Returns:
- The unwrapped value.
-
wrap
Description copied from interface:JavaType
Wrap a value as our handled Java type.Intended use is during
ResultSet
extraction.- Parameters:
value
- The value to wrap.options
- The options- Returns:
- The wrapped value.
-
toString
-
fromString
-
fromEncodedString
Description copied from interface:JavaType
Reads the encoded value from the char sequence start index until the end index and returns the decoded value. Implementers do not need to care about escaping. This is similar toJavaType.fromString(CharSequence)
, with the difference that the aim of this method is decoding from a range within an existing char sequence. -
appendEncodedString
Description copied from interface:JavaType
Appends the value to the SqlAppender in an encoded format that can be decoded again byJavaType.fromEncodedString(CharSequence, int, int)
. Implementers do not need to care about escaping. This is similar toJavaType.toString(Object)
, with the difference that the aim of this method is encoding to the appender. -
getRecommendedJdbcType
Description copied from interface:BasicJavaType
Obtain the "recommended"SQL type descriptor
for this Java type. Often, but not always, the source of this recommendation is the JDBC specification.- Parameters:
context
- Contextual information- Returns:
- The recommended SQL type descriptor
-
forDatePrecision
- Overrides:
forDatePrecision
in classAbstractTemporalJavaType<Date>
-