All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.persistence.Table Maven / Gradle / Ivy

// $Id: Table.java 17752 2009-10-15 01:19:21Z [email protected] $
// EJB3 Specification Copyright 2004-2009 Sun Microsystems, Inc.
package javax.persistence;

import java.lang.annotation.Target;
import java.lang.annotation.Retention;
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

/**
 * Specifies the primary table for the annotated entity. Additional
 * tables may be specified using {@link SecondaryTable} or {@link
 * SecondaryTables} annotation.
 * 

* If no Table annotation is specified for an entity * class, the default values apply. * *

 *    Example:
 *
 *    @Entity
 *    @Table(name="CUST", schema="RECORDS")
 *    public class Customer { ... }
 * 
* * @since Java Persistence 1.0 */ @Target(TYPE) @Retention(RUNTIME) public @interface Table { /** * (Optional) The name of the table. *

* Defaults to the entity name. */ String name() default ""; /** * (Optional) The catalog of the table. *

* Defaults to the default catalog. */ String catalog() default ""; /** * (Optional) The schema of the table. *

* Defaults to the default schema for user. */ String schema() default ""; /** * (Optional) Unique constraints that are to be placed on * the table. These are only used if table generation is in * effect. These constraints apply in addition to any constraints * specified by the Column and JoinColumn * annotations and constraints entailed by primary key mappings. *

* Defaults to no additional constraints. */ UniqueConstraint[] uniqueConstraints() default { }; }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy