`
gyl868
  • 浏览: 167543 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hibernate Annotatio

阅读更多
多对一双向注解写法:
@Entity
@Table(name = "t_user")
public class User {
	@Id
	@GeneratedValue
	private int id;
	private String name;
	@ManyToOne
	private Group group;

}

@Entity
@Table(name = "t_group")
public class Group {
	@Id
	@GeneratedValue
	private int id;
	private String name;
	@OneToMany(mappedBy="group")
	private Set<User> users = new HashSet<User>();
}


多对多双向注解:

@Entity
public class Student {
	@Id
	@GeneratedValue
	private int id;
	private String name;
	//@ManyToMany(mappedBy="students")
	@ManyToMany
	@JoinTable(name="s_t",
	joinColumns={@JoinColumn(name="student_id")}	,
	inverseJoinColumns={@JoinColumn(name="teacher_id")}
	)
	private Set<Teacher> teachers = new HashSet<Teacher>();
}

@Entity
public class Teacher {
	@Id
	private int id;
	private String name;
	@ManyToMany(mappedBy="teachers")
	
	/*@JoinTable(name = "t_s", 
	joinColumns = { @JoinColumn(name = "teacher_id") },
	inverseJoinColumns={@JoinColumn(name="student_id")}
	)*/
	private Set<Student> students = new HashSet<Student>();
}

多对多单项:

@Entity
public class Student {
        @Id
	@GeneratedValue
	private int id;
	private String name;
}

@Entity
public class Teacher {
        @Id
	@GeneratedValue
	private int id;
	private String name;
        @ManyToMany
	@JoinTable(name="t_s",
		joinColumns={@JoinColumn(name="teacher_id")},
		inverseJoinColumns={@JoinColumn(name="student_id")}
		)
	private Set<Student> students = new HashSet<Student>();
}

一对多单项:
@Entity
@Table(name="t_group")
public class Group {
        @Id
	@GeneratedValue
	private int id;
	private String name;
}

@Entity
@Table(name="t_user")
public class User {
        @Id
	@GeneratedValue
	private int id;
	private String name;
        @ManyToOne
	private Group group;
}

多对一单项:

@Entity
@Table(name="t_group")
public class Group {
        @Id
	@GeneratedValue
	private int id;
	private String name;
        @OneToMany
	@JoinColumn(name="groupId")
	private Set<User> users = new HashSet<User>();
}

@Entity
@Table(name="t_user")
public class User {
        @Id
	@GeneratedValue
	private int id;
	private String name;
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics