Subversion Repositories WebE

Rev

View as "text/plain" | Blame | Last modification | View Log | RSS feed

1
package javax.persistence;

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

/**
 * Is used to specify the map key for associations of type Map.
 * If a persistent field or property other than the primary key is used as a map key then it
 * is expected to have a uniqueness constraint associated with it.
 *
 * @author Emmanuel Bernard
 */

@Target({METHOD, FIELD}) @Retention(RUNTIME)
public @interface MapKey {
        /**
         * The name of the persistent field or property of the associated entity that is used as the map key.
         * If the name element is not specified, the primary key of the associated entity is used as the map key.
         * If the primary key is a composite primary key and is mapped as IdClass, an instance of the primary key
         * class is used as the key.
         */

        String name() default "";
}