Copyright (c) 2008 - 2015 Oracle Corporation. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0 which accompanies this distribution. The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html and the Eclipse Distribution License is available at http://www.eclipse.org/org/documents/edl-v10.php. Contributors: Petros Splinakis - Java Persistence 2.2 Linda DeMichiel - Java Persistence 2.1 Linda DeMichiel - Java Persistence 2.0
/******************************************************************************* * Copyright (c) 2008 - 2015 Oracle Corporation. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0 * which accompanies this distribution. * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html * and the Eclipse Distribution License is available at * http://www.eclipse.org/org/documents/edl-v10.php. * * Contributors: * Petros Splinakis - Java Persistence 2.2 * Linda DeMichiel - Java Persistence 2.1 * Linda DeMichiel - Java Persistence 2.0 * ******************************************************************************/
package javax.persistence; import java.lang.annotation.Repeatable; import java.lang.annotation.Target; import static java.lang.annotation.ElementType.*; import java.lang.annotation.Retention; import static java.lang.annotation.RetentionPolicy.*;
Expresses a dependency on an EntityManagerFactory and its associated persistence unit.
Since:Java Persistence 1.0
/** * Expresses a dependency on an {@link EntityManagerFactory} and its * associated persistence unit. * * @since Java Persistence 1.0 */
@Repeatable(PersistenceUnits.class) @Target({TYPE, METHOD, FIELD}) @Retention(RUNTIME) public @interface PersistenceUnit {
(Optional) The name by which the entity manager factory is to be accessed in the environment referencing context; not needed when dependency injection is used.
/** * (Optional) The name by which the entity manager factory is to be accessed * in the environment referencing context; not needed when * dependency injection is used. */
String name() default "";
(Optional) The name of the persistence unit as defined in the persistence.xml file. If specified, the persistence unit for the entity manager factory that is accessible in JNDI must have the same name.
/** * (Optional) The name of the persistence unit as defined in the * <code>persistence.xml</code> file. If specified, the * persistence unit for the entity manager factory that is * accessible in JNDI must have the same name. */
String unitName() default ""; }