Hibernate多对多经典实例.docx_第1页
Hibernate多对多经典实例.docx_第2页
Hibernate多对多经典实例.docx_第3页
Hibernate多对多经典实例.docx_第4页
Hibernate多对多经典实例.docx_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

hibernate.cfg.xml: truetrueoracle.jdbc.driver.OracleDriverjdbc:oracle:thin:3:1521:tarena10gopenlabopen1232noneorg.hibernate.dialect.Oracle9DialectCourse.javaimport java.util.HashSet;import java.util.Set;public class Course private Long oid;private String cid;private String name;/ 关联属性(m:n)private Set stus = new HashSet();public Course() super();public Course(String cid, String name) super();this.cid = cid; = name;public String getCid() return cid;public void setCid(String cid) this.cid = cid;public String getName() return name;public void setName(String name) = name;public Long getOid() return oid;public void setOid(Long oid) this.oid = oid;public Set getStus() return stus;public void setStus(Set stus) this.stus = stus;Overridepublic int hashCode() final int PRIME = 31;int result = 1;result = PRIME * result + (cid = null) ? 0 : cid.hashCode();return result;Overridepublic boolean equals(Object obj) if (this = obj)return true;if (obj = null)return false;if (getClass() != obj.getClass()return false;final Course other = (Course) obj;if (cid = null) if (other.cid != null)return false; else if (!cid.equals(other.cid)return false;return true;Course.hbm.xml Student.javaimport java.util.HashSet;import java.util.Set;public class Student private Long oid;private String sid;private String name;/ 关联属性(n:m:private Set cours = new HashSet();public Student() super();public Student(String sid, String name) super();this.sid = sid; = name;public Set getCours() return cours;public void setCours(Set cours) this.cours = cours;public String getName() return name;public void setName(String name) = name;public Long getOid() return oid;public void setOid(Long oid) this.oid = oid;public String getSid() return sid;public void setSid(String sid) this.sid = sid;Overridepublic int hashCode() final int PRIME = 31;int result = 1;result = PRIME * result + (sid = null) ? 0 : sid.hashCode();return result;Overridepublic boolean equals(Object obj) if (this = obj)return true;if (obj = null)return false;if (getClass() != obj.getClass()return false;final Student other = (Student) obj;if (sid = null) if (other.sid != null)return false; else if (!sid.equals(other.sid)return false;return true;Student.hbm.xml HbnUtil.javaimport org.hibernate.HibernateException;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;public class HbnUtil private static SessionFactory sf;static try sf = new Configuration().configure().buildSessionFactory(); catch (HibernateException e) e.printStackTrace();public static Session getSession()return sf.openSession();Test1.javaimport org.hibernate.HibernateException;import org.hibernate.Session;import .entity.Course;import .entity.Student;import com.tarena.enrollment.util.HbnUtil;public class Test1 public static void main(String args) Session s = HbnUtil.getSession();try s.beginTransaction();Student s1 = new Student(s001,Jack);Student s2 = new Student(s002,Rose);Course c1 = new Course(c001,Core java);Course c2 = new Course(c002,JDBC);s1.getCours().add(c1);s1.getCours().add(c2);c1.getStus().add(s1);c2.getStus().add(s1);s.save(s1);s.save(c1);s.save(c2);s.getTransaction().commit(); catch (HibernateException e) s.getTransaction().rollback();e.printStackTrace(); finally s.close();Test2.javaimport org.hibernate.HibernateException;import org.hibernate.Session;import .entity.Course;import com.tarena.enrollment.util.HbnUtil;public class Test2 public static void main(String args) Session s = HbnUtil.getSession();try s.beginTransaction();/Student s1 = (Student)s.get(Student.class,1L);Course c1 = (Course)s.get(Course.class, 2L);/*System.out.println(s1.getClass();System.out.println(s1.getCours().getClass();System.out.println(s1.getCours().size();*/c1.getStus() .iterator() .next() .getCours() .remove(c1);s.delete(c1);/s1.getCours().clear();/c1.getStus().clear();s.getTransaction().commit(); catch (HibernateException e) s.getTransaction().rollback();e.printStackTrace(); finally s.close();Test3.javaimport org.hibernate.HibernateException;import org.hibernate.Session;import .entity.Course;import .entity.Student;import com.tarena.enrollment.util.HbnUtil;public class Test3 public static void main(String args) Session s = HbnUtil.getSession();try s.beginTransaction();Student s1 = (S

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论