1 package ejava.examples.orm.map.annotated;
2
3 import java.util.HashMap;
4 import java.util.Map;
5
6 import javax.persistence.*;
7
8
9
10
11
12
13 @Entity @Table(name="ORMMAP_ONEMANY_INVPARENT")
14 public class OneManyInverseParent {
15 @Id
16 private String name;
17
18 @OneToMany(mappedBy="oneInverseParent")
19 @MapKey(name="name")
20 private Map<String, OneManyOwningChild> ownedByChildren =
21 new HashMap<String, OneManyOwningChild>();
22
23 protected OneManyInverseParent() {}
24 public OneManyInverseParent(String name) { this.name = name; }
25
26 public String getName() { return name; }
27
28 public Map<String, OneManyOwningChild> getOwnedByChildren() { return ownedByChildren; }
29 public void setOwnedByChildren(
30 Map<String, OneManyOwningChild> ownedByChildren) {
31 this.ownedByChildren = ownedByChildren;
32 }
33
34 public String toString() {
35 StringBuilder text = new StringBuilder();
36
37 text.append(getClass().getName());
38 text.append(", name=" + name);
39 if (ownedByChildren != null) {
40 text.append(", ownedByChildren=(" + ownedByChildren.size() + ")={");
41 for (String key : ownedByChildren.keySet()) {
42 text.append(ownedByChildren.get(key).getName() + ", ");
43 }
44 text.append("}");
45 }
46 return text.toString();
47 }
48 }