One of hibernate
Annotation Version:
Group class:
Package com. hibernate. model; import java. util. hashSet; import java. util. set; import javax. persistence. entity; import javax. persistence. generatedValue; import javax. persistence. id; import javax. persistence. joinColumn; import javax. persistence. onetovel; import javax. persistence. oneToOne; import javax. persistence. table; @ Entity @ Table (name = _ Group) public class Group {private int id; private String name; private Set
Users = new HashSet
(); @ Id @ GeneratedValuepublic int getId () {return id;} public void setId (int id) {this. id = id;} public String getName () {return name;} @ onetoworkflow (mappedBy = group) // mappedBy must be written in both directions, and for database considerations, the association relationship should be designed on multiple sides, so mappedBypublic Set must be Set on onetoworkflow.
GetUsers () {return users;} public void setUsers (Set
Users) {this. users = users;} public void setName (String name) {this. name = name ;}}
User class:
package com.hibernate.model;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.ManyToOne;import javax.persistence.Table;@Entity@Table(name=_User)public class User {private int id;private String name;private Group group;@ManyToOnepublic Group getGroup() {return group;}public void setGroup(Group group) {this.group = group;}@Id@GeneratedValuepublic int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}}For configuration files and test cases, refer to previous articles.
Xml version:
Group class. The User class is the same as above.
User. hbm. xml:
Group. hbm. xml: