亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Hibernate初探之一對多映射

  • set集合常用屬性 <set name="stu" table="stu"> <!-- 指定關聯的外鍵列 --> <key column="gid"></key> <one-to-many class="com.entity.Student"/> </set>
    查看全部
  • //修改學生信息 public static void update(){ Grade g2=new Grade("java二班", "java軟件開發二班"); Session s2=HibernateUtil.getSession(); Transaction t2=s2.beginTransaction(); Student student2=(Student) s2.get(Student.class, 1); g2.getStu().add(student2); s2.save(g2); t2.commit(); HibernateUtil.closeSession(s2); } //刪除學生信息 public static void del(){ Session session=HibernateUtil.getSession(); Transaction transaction=session.beginTransaction(); Student stu=(Student) session.get(Student.class, 2); session.delete(stu); transaction.commit(); HibernateUtil.closeSession(session); }
    查看全部
  • //添加學生信息 public static void add(){ Grade g=new Grade("java一班","java軟件開發"); Student s1=new Student("李四", "男"); Student s2=new Student("小月","女"); g.getStu().add(s1); g.getStu().add(s2); Session s=HibernateUtil.getSession(); Transaction t=s.beginTransaction(); s.save(g); s.save(s1); s.save(s2); t.commit(); HibernateUtil.closeSession(s); } //通過班級獲取學生信息 public static void getStuByGrade(){ Session s=HibernateUtil.getSession(); Grade g=(Grade) s.get(Grade.class, 1); System.out.println("班級:"+g.getGname()+"班級信息:"+g.getGdesc()); Set<Student> students=g.getStu(); for (Student stu:students) { System.out.println(stu.getSname()+" "+stu.getSex()); } }
    查看全部
  • 配置單向的一對多映射文件
    查看全部
  • 用MyEclipse: 1.可以建立與數據庫的連接,Windows->showView->MyEclipse Database或者右上角加的圖標 2.添加Hibernate支持,生成配置文件 3.反向生成映射,在DB Browser里選中表,Hibernate Mapping and Application Generation
    查看全部
  • cascade屬性
    查看全部
  • set集合常用屬性
    查看全部
  • 實現單向一對多: 在one方的實體中添加保存many方的集合 在one放的配置文件中添加<one-to-many>配置 實現單向多對一: 在many方的實體中添加one方的引用 在many方的配置文件中添加<many-to-one>配置 常用屬性: cascade:設置級聯關系 inverse:設置由哪一方維護關聯關系
    查看全部
    0 采集 收起 來源:課程總結

    2018-03-22

  • <set name="students" table="student"> <key column="gid"></key> <one-to-many class="com.bjp0425.entity.Student"></one> </set> <!--配置映射--> <mapping resource="com/bjp0425/entity/Grade.hbm.xml"></mapping> <mapping resource="com/bjp0425/entity/Student.hbm.xml"></mapping>
    查看全部
  • cascade屬性: 1、當設置了cascade屬性不為none時,Hibernate會自動持久化所關聯的對象; 2、cascade屬性的設置會帶來性能上的變動,需要謹慎設置; ———————————————————————————— 屬性值 含義和作用 all 對所有操作進行級聯操作 save-update 執行保存和更新操作時進行級聯操作 delete 執行刪除時進行級聯操作 none 對所有操作不進行級聯操作 ———————————————— 說明:舉個栗子,見截圖: 在向Grade添加Student后,保存Grade對象時,能不能不需要顯示的保存Student對象,答案是可以的,可以使用級聯操作:在Grade的映射文件中的<set>節點添加cascade屬性不為none,為"save-update".
    查看全部
  • 配置雙向的關聯關系: 1、分別在持久化類中定義另一方的引用; ①一方:private Set<Student>students=new HashSet<Student>();并setter、getter ②多方:private Grade grade;并setter、getter; 2、在一方映射文件配置一對多屬性集合與在多方配置多對一關聯關系 <set name="一方實體類定義的多方的引用,即多方屬性Students" table="多方的表名"> <key column="關聯外鍵的列gid"></key> <one-to-many class="多方實體類的全類名com.imooc.entity.Student" /> </set> —————————————————————————— 多方配置 <many-to-one name="指定對應的屬性的名稱" class="對應實體類的全類名com.imooc.entity.Grade" column="指定外鍵的列名gid" > </many-to-one>
    查看全部
  • 單向多對一中添加學生信息(學生為多,班級為一)
    查看全部
  • 單向多對一的配置: 1.在多方定義一放的引用 private Classes classes get,set方法 2、在多方持久類的映射文件中添加 <many-to-one class name="指定對一方的引用,實際上就是一方引用定義的屬性" class="一方對應的持久化類,即關聯實體類,全類名" cloumn="外鍵的列名" ></many-to-one>
    查看全部
  • 單向多對一關聯: 1、多對一的關系和關系數據庫中的外鍵參照關系最匹配,即在己方(多方)的表中的一個外鍵參照另一個表的主鍵; 2、通過在多方持有一方的引用實現,需要在“多”的一端使用<many-to-one>配置
    查看全部
  • //刪除學生信息 public static void delete(){ //獲取對話 Session session=HibernateUtil.getSession(); // 開啟事務 Transaction tx=session.beginTransaction(); //獲取學生信息2 Student stu=(Student) session.get(Student.class, 2); //刪除學生 如果修改,先創建班級信息g,在將獲得的學生信息添加最后 保存session.save(g); session.delete(stu); //提交事務 tx.commit(); //關閉事物 HibernateUtil.closeSession(session); } //修改學生信息 public static void update(){ Grade g=new Grade("Java二班","Java軟件開發二班"); Session session=HibernateUtil.getSession(); Transaction tx=session.beginTransaction(); Student stu=(Student) session.get(Student.class, 1); g.getStudents().add(stu); session.save(g); tx.commit(); HibernateUtil.closeSession(session); }
    查看全部

舉報

0/150
提交
取消
課程須知
本課程主要講解Java中Hibernate中的關聯映射,需要對Hibernate基本用法、ORM的基本概念、單表映射等相關知識有一定的基礎。
老師告訴你能學到什么?
1、Hibernate關聯映射的類型 2、單向一對多關聯的配置 3、單向多對一關聯的配置 4、cascade和inverse屬性的作用

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!