JavaScript is disabled on your browser.
Skip navigation links
javax.persistence

Annotation Type MapKeyClass



  • @Target(value={METHOD,FIELD})
     @Retention(value=RUNTIME)
    public @interface MapKeyClass
    Specifies the type of the map key for associations of type java.util.Map. The map key can be a basic type, an embeddable class, or an entity. If the map is specified using Java generics, the MapKeyClass annotation and associated type need not be specified; otherwise they must be specified.

    The MapKeyClass annotation is used in conjunction with ElementCollection or one of the collection-valued relationship annotations (OneToMany or ManyToMany). The MapKey annotation is not used when MapKeyClass is specified and vice versa.

     Example 1:
     @Entity
     public class Item {
     @Id int id;
     ...
     @ElementCollection(targetClass=String.class)
     @MapKeyClass(String.class)
     Map images; // map from image name to image filename
     ...
     }
     Example 2:
     // MapKeyClass and target type of relationship can be defaulted
     @Entity
     public class Item {
     @Id int id;
     ...
     @ElementCollection
     Map<String, String> images; 
     ...
     }
     Example 3:
     @Entity
     public class Company {
     @Id int id;
     ...
     @OneToMany(targetEntity=com.example.VicePresident.class)
     @MapKeyClass(com.example.Division.class)
     Map organization;
     }
     Example 4:
     // MapKeyClass and target type of relationship are defaulted
     @Entity
     public class Company {
     @Id int id;
     ...
     @OneToMany
     Map<Division, VicePresident> organization;
     }
     
    Since:
    Java Persistence 2.0
    See Also:
    ElementCollection, OneToMany, ManyToMany
    • Required Element Summary

      Required Elements
      Modifier and Type Required Element and Description
      Class value
      (Required) The type of the map key.
    • Element Detail

      • value

        public abstract Class value
        (Required) The type of the map key.
Skip navigation links

Copyright © 1996-2015, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.

AltStyle によって変換されたページ (->オリジナル) /