Class ScalarTypeBaseVarchar<T>

    • Method Detail

      • formatValue

        public abstract String formatValue​(T v)
        Format the target type to a string.
      • parse

        public abstract T parse​(String value)
        Parse from a formatted string value.
      • convertFromDbString

        public abstract T convertFromDbString​(String dbValue)
        Convert from DB string value to the target type.
      • convertToDbString

        public abstract String convertToDbString​(T beanValue)
        Convert to DB string from the target type.
      • bind

        public void bind​(DataBind b,
                         T value)
                  throws SQLException
        Description copied from interface: ScalarType
        Convert (if necessary) and bind the value to the preparedStatement.

        value may need to be converted from the logical bean property type to the JDBC type.

        Throws:
        SQLException
      • toBeanType

        public T toBeanType​(Object value)
        Description copied from interface: ScalarType
        Convert the value as necessary to the logical Bean type.

        The type as per the bean property.

        This is used to automatically convert id values (typically from a string to a int, long or UUID).

      • toJdbcType

        public Object toJdbcType​(Object value)
        Description copied from interface: ScalarType
        Convert the value as necessary to the JDBC type.

        Note that this should also match the type as per the getJdbcType() method.

        This is typically used when the matching type is used in a where clause and we use this to ensure it is an appropriate jdbc type.

      • convertFromMillis

        public T convertFromMillis​(long systemTimeMillis)
        Description copied from interface: ScalarType
        Convert the systemTimeMillis into the appropriate java object.

        For non dateTime types this will throw an exception.

      • isDateTimeCapable

        public boolean isDateTimeCapable()
        Description copied from interface: ScalarType
        Return true if the type can accept long systemTimeMillis input.

        This is used to determine if is is sensible to use the ScalarType.convertFromMillis(long) method.

        This includes the Date, Calendar, sql Date, Time, Timestamp, JODA types as well as Long, BigDecimal and String (although it generally is not expected to parse systemTimeMillis to a String or BigDecimal).

      • jsonWrite

        public void jsonWrite​(com.fasterxml.jackson.core.JsonGenerator writer,
                              T value)
                       throws IOException
        Description copied from interface: ScalarType
        Write the value to the JsonGenerator.
        Throws:
        IOException