Class UUIDJavaType

java.lang.Object
org.hibernate.type.descriptor.java.AbstractClassJavaType<UUID>
org.hibernate.type.descriptor.java.UUIDJavaType
All Implemented Interfaces:
Serializable, BasicJavaType<UUID>, JavaType<UUID>

public class UUIDJavaType extends AbstractClassJavaType<UUID>
Descriptor for UUID handling.
See Also:
  • Field Details

  • Constructor Details

    • UUIDJavaType

      public UUIDJavaType()
  • Method Details

    • getRecommendedJdbcType

      public JdbcType getRecommendedJdbcType(JdbcTypeIndicators context)
      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
    • useObjectEqualsHashCode

      public boolean useObjectEqualsHashCode()
      Description copied from interface: JavaType
      Whether to use Object.equals(Object) and Object.hashCode() or JavaType.areEqual(Object, Object) and JavaType.extractHashCode(Object) for objects of this java type. This is useful to avoid mega-morphic callsites.
    • toString

      public String toString(UUID value)
    • fromString

      public UUID fromString(CharSequence string)
    • 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 example Types.VARCHAR.
      Returns:
      Size.DEFAULT_LENGTH unless overridden
    • unwrap

      public <X> X unwrap(UUID 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 the Integer value as a Long, we would return something like Long.valueOf( value.longValue() ).

      Intended use is during PreparedStatement binding.

      Type Parameters:
      X - The conversion type.
      Parameters:
      value - The value to unwrap
      type - The type as which to unwrap
      options - The options
      Returns:
      The unwrapped value.
    • wrap

      public <X> UUID 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.