Class InstantJavaType
- All Implemented Interfaces:
Serializable, BasicJavaType<Instant>, JavaType<Instant>, TemporalJavaType<Instant>, VersionJavaType<Instant>
Instant type.- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface JavaType
JavaType.CoercionContext -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected <X> TemporalJavaType<X> forDatePrecision(TypeConfiguration typeConfiguration) protected <X> TemporalJavaType<X> forTimePrecision(TypeConfiguration typeConfiguration) protected <X> TemporalJavaType<X> forTimestampPrecision(TypeConfiguration typeConfiguration) fromString(CharSequence string) intgetDefaultSqlPrecision(Dialect dialect, JdbcType jdbcType) The default column precision when this Java type is mapped to a SQL data type which is parametrized by precision, for exampleTypes.DECIMAL.The precision represented by this typegetRecommendedJdbcType(JdbcTypeIndicators context) Obtain the "recommended" SQL type descriptor for this Java type.booleanisInstance(Object value) Is the given value an instance of the described type?next(Instant current, Long length, Integer precision, Integer scale, SharedSessionContractImplementor session) Increment the version.seed(Long length, Integer precision, Integer scale, SharedSessionContractImplementor session) Generate an initial version.<X> Xunwrap(Instant instant, Class<X> type, WrapperOptions options) Unwrap an instance of our handled Java type into the requested type.booleanWhether to useObject.equals(Object)andObject.hashCode()orJavaType.areEqual(Object, Object)andJavaType.extractHashCode(Object)for objects of this java type.<X> Instantwrap(X value, WrapperOptions options) Wrap a value as our handled Java type.Methods inherited from class AbstractTemporalJavaType
resolveTypeForPrecision, toStringMethods inherited from class AbstractClassJavaType
areEqual, extractHashCode, extractLoggableRepresentation, getComparator, getJavaType, getJavaTypeClass, getMutabilityPlan, unknownUnwrap, unknownWrapMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface JavaType
appendEncodedString, areEqual, coerce, createJavaType, extractHashCode, extractLoggableRepresentation, fromEncodedString, fromEncodedString, getCheckCondition, getComparator, getDefaultSqlLength, getDefaultSqlScale, getDefaultValue, getJavaType, getJavaTypeClass, getLongSqlLength, getMutabilityPlan, getReplacement, getTypeName, isWiderMethods inherited from interface TemporalJavaType
isTemporalType
-
Field Details
-
INSTANCE
Singleton access
-
-
Constructor Details
-
InstantJavaType
public InstantJavaType()
-
-
Method Details
-
isInstance
Description copied from interface:JavaTypeIs 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.For
EntityJavaType, this method handles proxies in a semantically correct way, by checking the entity instance underlying the proxy object.- Specified by:
isInstancein interfaceJavaType<Instant>
-
cast
Description copied from interface:JavaTypeApply a simple type cast to the given value, without attempting any sort of coercion or wrapping. This method is provided as a convenient way to avoid an unchecked cast to a type variable. UsejavaType.cast(value)instead of(T) valuewherever possible.Usually just
getJavaTypeClass().cast(value), but overridden in some cases as an "optimization". This optimization is almost certainly unnecessary, and might even indeed be harmful, sinceClass.cast()is an intrinsic. -
getPrecision
Description copied from interface:TemporalJavaTypeThe precision represented by this type- Specified by:
getPrecisionin interfaceTemporalJavaType<Instant>
-
forDatePrecision
- Overrides:
forDatePrecisionin classAbstractTemporalJavaType<Instant>
-
forTimestampPrecision
- Overrides:
forTimestampPrecisionin classAbstractTemporalJavaType<Instant>
-
forTimePrecision
- Overrides:
forTimePrecisionin classAbstractTemporalJavaType<Instant>
-
getRecommendedJdbcType
Description copied from interface:BasicJavaTypeObtain the "recommended" SQL type descriptor for this Java type. Often, but not always, the source of this recommendation is the JDBC specification.- Specified by:
getRecommendedJdbcTypein interfaceBasicJavaType<Instant>- Specified by:
getRecommendedJdbcTypein interfaceJavaType<Instant>- Parameters:
context- Contextual information- Returns:
- The recommended SQL type descriptor
-
useObjectEqualsHashCode
public boolean useObjectEqualsHashCode()Description copied from interface:JavaTypeWhether to useObject.equals(Object)andObject.hashCode()orJavaType.areEqual(Object, Object)andJavaType.extractHashCode(Object)for objects of this java type. This is useful to avoid mega-morphic callsites.- Specified by:
useObjectEqualsHashCodein interfaceJavaType<Instant>
-
toString
-
fromString
- Specified by:
fromStringin interfaceBasicJavaType<Instant>- Specified by:
fromStringin interfaceJavaType<Instant>
-
unwrap
Description copied from interface:JavaTypeUnwrap 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 valueas aLong, we would return something likeLong.valueOf( value.longValue() ).Intended use is during
PreparedStatementbinding. -
wrap
-
getDefaultSqlPrecision
Description copied from interface:JavaTypeThe default column precision when this Java type is mapped to a SQL data type which is parametrized by precision, for exampleTypes.DECIMAL.- Specified by:
getDefaultSqlPrecisionin interfaceJavaType<Instant>- Returns:
Size.DEFAULT_PRECISIONunless overridden
-