为了账号安全,请及时绑定邮箱和手机立即绑定

Hibernate初探之一对多映射

  • 映射分四种类型,一对多 多对一 一对一 多对多
    查看全部
  • cascade属性
    查看全部
  • 单向多对一关联
    查看全部
  • 映射的类型
    查看全部
  • 表示一对多:
    查看全部
  • 映射分四种类型,一对多 多对一 一对一 多对多 主要为前两种
    查看全部
  • MyEclipse怎样快捷创建hibernate相关配置
    查看全部
  • ------------------------- MyEclipse 添加hibernate支持 工程-右击-MyEclipse->Add Hibernate Capabilities: 选择Hibernate版本(MyEclipse版本越高,支持的Hibernate版本也越高,尽量选择新版本) 根据需要选择相应的JAR包::(1)添加JAR包 next-->创建hibernate.cfg.xml(指定目录)  :(2)添加核心配置文件 next-->选择数据库连接 next-->创建Hibernate工具类,用于获取session或者sessionFactory(Java package 新建)    :(3)添加工具类 finish ------------------------- MyEclipse 反向工程:根据数据库中的表 自动创建持久化类和映射文件文件 1)创建包entity 用于保存持久化类 2)数据库视图 CTRL 选择复数表-右击-Hibernate Reverse Engineering(反向工程)   指定Java src folder目录   指定持久化类和映射文件保存位置,   勾选Create POJO<>DB Table mapping information创建映射文件     (勾选create a Hibernate mapping file (*.hbm.xml)for each datebase table)       (勾选Update Hibernate configuration with mapping resource location)   勾选Java Date Object (POJO<> DB Table) :创建实体类       注意:Create abstract class 不勾选(不需要)   NEXT ->Hibernate Mapping and Application Generation :       Id Generator:选择主键生成策略(例子中是increment)   NEXT->选择表 勾选:Include referenced tables(A->B),Include referenced tables(A<-B)   finish.切换回企业开发视图
    查看全部
  • MyEclipse 给工程添加hibernate支持 菜单Windws-->Show-->View-->Other,展开MyEclipse Datebase 选择DB Browser(数据库视图) 左侧空白右击,New-->DatebaseDriver 选择相应数据库 给连接命名,指定DB URl-->user /password--> Driver JARs :点击Add JARS 选择JAR包 可点击Test Driver 可勾选save password
    查看全部
  • ===cascade属性===================================== cascade美 [kæˈsked]  n.串联;倾泻;小瀑布,瀑布状物    vi.    流注;大量落下 ·当设置了cascade属性不为none时,Hibernate会自动持久化所关联的对象 cascade属性的设置会带来性能上的变动,需谨慎设置 属性值  :  含义和作用 all        对所有操作进行级联操作 save-update     执行保存和更新操作时进行级联操作 delete       执行删除操作时操作时进行级联操作 none      对所有操作不进行级联操作 //保存 //设置关联关系   g.getStudents().add(stu1);   g.getStudents().add(stu2);   stu1.setGrade(g);   stu2.setGrade(g);     Session session=HibernateUtil.getSession();   Transaction tx=session.beginTransaction();   session.save(g);//级联操作   //session.save(stu1);   //session.save(stu2); <!-- 配置一对多关联关系 设置inverse属性为true,由多方负责维护关联关系-->   <set name="students" table="student" inverse="true" cascade="save-update">    <key column="gid"></key>    <one-to-many class="com.imooc.entity.Student"/>   </set> 例子:也可在学生端级联   //session.save(g);   session.save(stu1);   session.save(stu2); 多方: <!-- 配置多对一关联关系 -->   <many-to-one name="grade" class="com.imooc.entity.Grade" column="gid" cascade= "all"></many-to-one>
    查看全部
  •  //保存  public static void save(){   Grade g=new Grade("Java一班","Java软件开发一班");   Student stu1=new Student("慕女神", "女");   Student stu2=new Student("小慕慕", "男");      //设置关联关系   g.getStudents().add(stu1);   g.getStudents().add(stu2);   stu1.setGrade(g);   stu2.setGrade(g);      Session session=HibernateUtil.getSession();   Transaction tx=session.beginTransaction();   session.save(g);   session.save(stu1);   session.save(stu2);   tx.commit();   HibernateUtil.closeSession(session);
    查看全部
  • 单向多对一关联 ·多对一的关系和关系数据库中的外键参照关系最匹配,即在己方的表中的一个外键参照另一个表的主键 ·通过在多方持有一方的引用实现,需要在“多”端的一端使用<many to one> 配置   <!-- 配置多对一关联关系 -->   <many-to-one name="grade" class="com.imooc.entity.Grade" column="gid" cascade="all"></many-to-one>  </class>
    查看全部
  • ·多对一的关系和关系数据库中的外键参照关系最匹配,即在己方的表中的一个外键参照另一个表的主键 ·通过在多方持有一方的引用实现,需要在“多”端的一端使用<many to one> 配置
    查看全部
  • 属性    含义和作用              必须  默认值 name    映射类属性的名称           Y table     关联类的目标数据库表      N lazy       指定关联对象是否使用延迟加载 N    proxy inverse   表示双向关联中被动的一方      N    false
    查看全部
  •  实体化类文件夹一般叫entity,遵循javabean:实现implements Serializable接口 public class Grade implements Serializable {   private int gid;   private String gname;   private String gdesc;   //一方持有多方的集合   private Set<Student> students = new HashSet<Student>();//set 元素不可重复无顺序 } <hibernate-mapping>  <class name="XX.entity.Grade" table="grade">     <id name="gid" column="gid" type="java.lang.Integer">       <generator class="increment"></generator>     </id>     <property name="gname" type="java.lang.String">        <column name="gname" length="20" not-null="true"></column>     </property>     <property name="gdesc">        <column name="gdesc"></column>     </property>     <!-- 配置一对多关联关系 -->     <set name="students" table="student">       <!-- 指定关联的外键列 -->        <key column="gid"></key>        <one-to-many class="XX.Student"/>     </set>   </class> hibernate.cfg.xml      <!-- 指定映射文件的路径 -->      <mapping resource="com/imooc/entity/Grade.hbm.xml"/>      <mapping resource="com/imooc/entity/Student.hbm.xml"/>
    查看全部

举报

0/150
提交
取消
课程须知
本课程主要讲解Java中Hibernate中的关联映射,需要对Hibernate基本用法、ORM的基本概念、单表映射等相关知识有一定的基础。
老师告诉你能学到什么?
1、Hibernate关联映射的类型 2、单向一对多关联的配置 3、单向多对一关联的配置 4、cascade和inverse属性的作用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!