hibernate学习笔记18
来源:互联网 发布:故宫淘宝侵权 编辑:程序博客网 时间:2024/05/18 00:12
public class Course {
private int id;
private String name;
@Id
@GeneratedValue
public 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;
}
}
@Entity
@Table(name="score")
public class Score {
private int id;
private int score;
private Student student;
private Course course;
@Id
@GeneratedValue
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
@ManyToOne
@JoinColumn(name="student_id")
public Student getStudent() {
return student;
}
public void setStudent(Student student) {
this.student = student;
}
@ManyToOne
@JoinColumn(name="course_id")
public Course getCourse() {
return course;
}
public void setCourse(Course course) {
this.course = course;
}
}
@Entity
public class Student {
private int id;
private String name;
private Set<Course> courses = new HashSet<Course>();
@ManyToMany
@JoinTable(name="score",
joinColumns=@JoinColumn(name="student_id", referencedColumnName="id"),
inverseJoinColumns=@JoinColumn(name="course_id", referencedColumnName="id")
)
public Set<Course> getCourses() {
return courses;
}
public void setCourses(Set<Course> courses) {
this.courses = courses;
}
@Id
@GeneratedValue
public 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;
}
}
Student s = new Student();
s.setName("zhangsan");
Course c = new Course();
c.setName("java");
Score score = new Score();
score.setCourse(c);
score.setStudent(s);
Session session = sessionFactory.openSession();
session.beginTransaction();
session.save(s);
session.save(c);
session.save(score);
session.getTransaction().commit();
session.close();
-------------------------------------------------------------------------------
Session session = sessionFactory.openSession();
session.beginTransaction();
Student s = (Student)session.load(Student.class, 1);
for(Course c : s.getCourses()) {
System.out.println(c.getName());
}
session.getTransaction().commit();
session.close();
Hibernate:
select
student0_.id as id0_0_,
student0_.name as name0_0_
from
Student student0_
where
student0_.id=?
Hibernate:
select
courses0_.student_id as student4_1_,
courses0_.course_id as course3_1_,
course1_.id as id1_0_,
course1_.name as name1_0_
from
score courses0_
left outer join
Course course1_
on courses0_.course_id=course1_.id
where
courses0_.student_id=?
java
- hibernate学习笔记18
- 【Hibernate学习笔记】hibernate入门
- Hibernate学习笔记:初识Hibernate
- 传智播客Hibernate视频教程学习笔记18
- Hibernate Synchronizer 学习笔记
- hibernate学习笔记1
- Hibernate 学习笔记
- Hibernate学习笔记
- Hibernate 学习笔记
- Hibernate 实例学习笔记
- Hibernate学习笔记(1)
- hibernate学习笔记
- Hibernate学习笔记(一)
- Hibernate学习笔记
- Hibernate学习笔记!- -
- Hibernate学习笔记(一)
- Hibernate学习笔记
- Hibernate 学习笔记
- 3D 引擎做什么
- 一道面试题
- HDU 1197 Specialized Four-Digit Numbers
- SAP R3 ABAP/4 二次开发四个阶段-初学者
- 说python好的文章大多在吹牛
- hibernate学习笔记18
- shell语法简介
- 类型转换函数(特此记录)
- java方面中,参数后面跟三个点(...)的含义
- [2月26日更新]OpenWRT for Buffalo WHR-G300Nv2/G301N
- android listview selector
- C++ STL hash_map
- 反汇编算法介绍和应用——线性扫描算法分析
- Mantis邮件配置和Bug基本流程