The Value object should be immutable and scalar (aka not compound) and converts to and from a known scalar type which Ebean will use to persist the value.
This is an easier alternative to implementing the com.avaje.ebean.server.type.ScalarType interface.
Note that Ebean will automatically try to detect Immutable Scalar Value Objects and automatically support them via reflection. This however would not be appropriate when the logical type is different from the type you wish to use for persistence - for example, if the logical type was long and you wanted to use java.sql.Timestamp for persistence. In this case you would want to implement this interface rather than let Ebean automatically support that type via reflection.
If you want to support a Compound Type rather than a Scalar Type refer to {@link CompoundType}.
@author rbygrave @param < B> The value object type. @param < S> The scalar object type that is used to persist the value object. @see CompoundType @see CompoundTypeProperty
|
|