Hallo zusammen,
Vorher habe ich Arraylist statt HashMap mit Hibernate gespeichert. Es hat wunderbar mit folgende Annotation geklappt.
Aber ich brauche jetzt HashMap und es funktioniert nicht mehr mit vorherigen Annotation .
Node.java
Edge.java
Hat jemand Idee, wie man mit Many-to-Many Relation und HashMap umgehen kann?
Besteht eine Möglichkeit, HashMap-Schlüssel in Datenbank zu speichern?
Vorher habe ich Arraylist statt HashMap mit Hibernate gespeichert. Es hat wunderbar mit folgende Annotation geklappt.
Java:
@ManyToMany(cascade=CascadeType.ALL)
@JoinTable(name="join_node_edge",
joinColumns={@JoinColumn(name="nodeID")},
inverseJoinColumns={@JoinColumn(name="edgeID")})
public List<Edge> getEdges() {
return edges;
}
Aber ich brauche jetzt HashMap und es funktioniert nicht mehr mit vorherigen Annotation .
Node.java
Java:
@Entity
public class Node implements Serializable{
private String nodeID;
private Map<String, Edge> edges = new HashMap<String, Edge>();
....
@ManyToMany(cascade=CascadeType.ALL)
@JoinTable(name="join_node_edge",
joinColumns={@JoinColumn(name="nodeID")},
inverseJoinColumns={@JoinColumn(name="edgeID")})
public Map<String, Edge> getEdges() {
return edges;
}
....
}
Edge.java
Java:
@Entity
public class Edge implements Serializable{
private String edgeID;
private Map<String, Node> nodes = new HashMap<String, Node>();
....
@ManyToMany(cascade=CascadeType.ALL)
@JoinTable(name="join_node_edge",
joinColumns={@JoinColumn(name="edgeID")},
inverseJoinColumns={@JoinColumn(name="nodeID")})
public Map<String, Node> getNodes() {
return nodes;
}
....
Hat jemand Idee, wie man mit Many-to-Many Relation und HashMap umgehen kann?
Besteht eine Möglichkeit, HashMap-Schlüssel in Datenbank zu speichern?