Package jakarta.persistence
Annotation Interface Basic
The simplest type of mapping of a persistent field or property to a
single database column.
The Basic annotation may be applied to a property or
instance variable whose type is any one of the following:
- a Java primitive type, or wrapper of a primitive type,
String,BigIntegerorBigDecimal,LocalDate,LocalTime,LocalDateTime,OffsetTime,OffsetDateTime,Instant, orYearDateorCalendar,java.sql.Date,java.sql.Time, orjava.sql.Timestamp,byte[]orByte[],char[]orCharacter[],- a Java
enumtype, or - any other serializable type.
The use of the Basic annotation is optional for persistent
fields and properties of these types. If the Basic annotation
is not specified for such a field or property, the default values of
the Basic annotation apply.
The database column mapped by the persistent field or property may
be specified using the Column annotation.
Example 1:
@Basic
protected String name;
Example 2:
@Basic(fetch = LAZY)
protected String getName() { return name; }
- Since:
- 1.0
-
Optional Element Summary
Optional Elements
-
Element Details
-
fetch
FetchType fetch(Optional) Whether the value of the field or property should be lazily loaded or must be eagerly fetched.- The
EAGERstrategy is a requirement on the persistence provider runtime that the associated entity must be eagerly fetched. - The
LAZYstrategy is a hint to the persistence provider runtime.
If not specified, defaults to
EAGER.- Default:
EAGER
- The
-
optional
boolean optional(Optional) Specifies whether the value of the field or property may be null.This is a hint and is disregarded for primitive types; it may be used in schema generation to infer that the mapped column is
not null.If not specified, defaults to
true.- Default:
true
-