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

Hibernate初探之一对多映射

  • ...
    查看全部
  • 1.在一对多的 set配置中 , inverse="true" 表示 反转,即由多方来控制。 2.在一对多的 set配置中, cascade="all" 表示 级联操作。 即 一方保存数据,会将所关联的多方的数据同时保存到数据库中。 3.在多方同样可以使用级联, 在<many-to-one ></many> 中设置。 4. 级联有 all ,delete , save-update, none 四个属性值
    查看全部
  • 一对多映射 多对一映射 比较 1. 一对多 , 在一方 封装 多方的 set集合,将多方add进一方。 2. 多对一 , 在多方 封装 一方类对象, 将 一方 的对象 给多方
    查看全部
  • 多对一映射。 1. 在多方封装 一方 的类对象。private Grade grade; 2. 在多方配置文件中配置。<many-to-one name="属性名" class="一方类" column="列名" /> 3. 只需要将多方的对象中放入一方对象即可. student1.setGrade(grade); student2.setGrade(grade);
    查看全部
  • <!-- 一方:配置一对多的集合属性 table 指对应表的名称--> <set name="students" table="student"> 一方中的属性和对应的表格 <key column="gid"></key> 关联外键的列 <one-to-many class="com.imooc.entity.Student"/> 一对多所对应的类 </set> <!-- 多方:配置多对一的关联关系 --> <many-to-one name="grade" class="com.imooc.entity.Grade" column="gid"></many-to-one>
    查看全部
  • MyEclipse对Hibernate的开发提供了很友好的支持.我们可以使用MyEclipse提供的组件来进行Hibernate相关的支持.并且支持映射文件的生成. 在MyEclipse可以连接数据库,打开数据库透视图,新建一个连接,填写信息连接数据库. 在MyEclipse中使用其提供的组件就可以不用导入Hibernate必须的jar包来对Hibernate操作.MyEclipse会帮我们添加Hibernate所需要的jar包. 当连接完数据库之后就可以右键项目的MyEclipse选项中添加Hibernate的配置文档.它会创建一个HibernateSessionFactory工具类,通过此类很容易的获取到会话和会话工厂等.然后在数据库透视图选中要映射的表,右键选中Hibernate Reverse Engineeing(反向工程),勾选相应的复选框填完信息便生出hbm.xml映射文档.最后点击finish完成.(不需要写持久化类,MyEclipse会根据我们选择的表来自动为我们生成对应的持久化类)
    查看全部
  • 实现单向一对多: 在one方的实体中添加保存many方的集合 在one放的配置文件中添加<one-to-many>配置 实现单向多对一: 在many方的实体中添加one方的引用 在many方的配置文件中添加<many-to-one>配置 常用属性: cascade:设置级联关系 inverse:设置由哪一方维护关联关系
    查看全部
    0 采集 收起 来源:课程总结

    2018-03-22

  • <set name="映射类中的属性名称" table="关联的目标数据表">
    查看全部
  • set元素的常用属性: (1)name :映射类属性的名称 (2)table :关联类的目标数据库表 (3)lazy :指定关联对象是否使用延迟加载,默认值为:proxy (4)inverse :标识双向关联中被动的一方,默认值为:false
    查看全部
  • //删除学生信息 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); }
    查看全部
  • 创建表grade和student 并设置学生与班级的外键 create table grade ( gid int primary key, gname varchar(20) not null, gdesc varchar(50) ); create table student ( sid int primary key, sname varchar(20) not null, sex char(2), gid int ); alter table student add constraint fk_student_gid foreign key (gid) references grade(gid);
    查看全部
  • hibernate4.3的初始化 用于会话的获取和关闭: public class HibernateUtil{ private static SessionFactory sessionFactory; private static Session session;} static{ //穿件configuration对象,读取hibernate.cfg.configure(); StandardsrciceRegistryBuilder ssrb=new SrandarsServlceRedistryBuilser() .applySettings(config.getProperties()); SrandardSerciceRegistry ssr=ssrb.build(); sessionFactory=config.buildSessionFactory(ssr); } //创建会话工厂sessionFactory获取 public static SessionFactory getSessionFactory(){ return sessionFactory; } //获取session public static Session getSession(){ session=sessionFactory.openSession(); return session; } //关闭session public static void closeSession(Sessionsession){ if(session!=null){ session.close(); } }
    查看全部
  • 什么叫做一对多呢?<br> 就像班级和学生。站在班级的角度看。班级和学生就是一对多的关系。单向的<br> 那怎么样实现这种关系呢?<br> 1.在数据库中,可以通过添加主外键的关联,表现一对多的关系<br> 2.在java中,通过在一方持有多方的集合实现,即在“一”的一端中使用<set>元素表示持有“多”的一端的对象
    查看全部
  • cascade属性
    查看全部
  • inverse属性,指定关联关系的维护,默认由一方指定
    查看全部

举报

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

微信扫码,参与3人拼团

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

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