265 words
javax.persistence.Basic - JPA annotation
javax.persistence
Annotation Basic
- Target:
- Fields (including property get methods)
The simplest type of mapping to a database column. The
Basic annotation can be applied to a persistent
property or instance variable of any of the following types: Java
primitive types, wrappers of the primitive types, String,
java.math.BigInteger,
java.math.BigDecimal,
java.util.Date,
java.util.Calendar,
java.sql.Date,
java.sql.Time,
java.sql.Timestamp, byte[], Byte[],
char[], Character[], enums, and any other type that
implements java.io.Serializable.
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
will apply.
Example 1:
@Basic protected String name;
Example 2:
@Basic(fetch=LAZY) protected String getName() { return name; }
- Since:
- JPA 1.0
(Optional) Defines whether the value of the field or property should
be lazily loaded or must be eagerly fetched. The
EAGER
strategy is a requirement on the persistence provider runtime
that the value must be eagerly fetched. The LAZY
strategy is a hint to the persistence provider runtime.
If not specified, defaults to EAGER.- Default value:
- javax.persistence.FetchType.EAGER
- Since:
- JPA 1.0
boolean optional
(Optional) Defines 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.
If not specified, defaults to
true.- Default value:
- true
- Since:
- JPA 1.0
This documentation page is derived (with some adjustments) from the open source JPA 2 RI (EclipseLink)
and is available under the terms of the Eclipse Public License, v. 1.0 and Eclipse Distribution License, v. 1.0.
and is available under the terms of the Eclipse Public License, v. 1.0 and Eclipse Distribution License, v. 1.0.
Object Relational Mapping (ORM) JPA 2 providers include Hibernate, EclipseLink, TopLink, OpenJPA and DataNucleus.
Object DB is not an ORM JPA implementation but an Object Database for Java with built in JPA 2 support.
