Hibernate学习笔记:

Hibernate学习笔记:
hibernate是一个持久层的框架,简化对数据库的使用,将数据库中的表映射为对象(ORM对象关系映射),在对对象进行操作的同时自动同步到数据库中。
一、使用基本流程
1、编写hibernate配置文件,其中包含了数据库连接的设定(指定驱动、连接、登录名、密码等)还有hibernate映射文件。
2、编写PO类(具有一定格式的普通java文件),该类与数据库中的表格对应,需要在映射文件中给出字段和属性的对应关系。
3、编写hibernate映射文件,一般一个po类对应一个映射文件,映射文件中除了指明字段和属性的对应关系外还可以设置表(po)与表(po)的关联关系(一对一,一对多,多对多)
4、编写加载hibernate配置文件的类,该类中使用了:
     (1)Configuration,利用它的configure方法来加载配置文件,然后用buildSessionFactory方法创建SessionFactory对象。
             Configuration configuration =  new Configuration().configure("hibernate.cfg.xml");
             SessionFactory   sessionFactory =    configuration.buildSessionFactory();
      (2)SessionFactory,利用得到的SessionFactory对象的openSession方法来产生Session实例的工厂。
     (3)Session,负责执行持久化对象(PO)的操作,方法有save,load,update,delete,saveOrUpdate;
5、编写DAO类,该类主要通过使用PO来对数据库进行各种操作,一般需要通过“加载配置文件的类”来获取session对象,再通过session进行操作。查询数据库时使用Query对象(Session.createQuery方法获取),它可以使用HQL(面向对象的数据库查询语言)对PO进行查询操作,然后再使用Transaction对象(Session.beginTransaction方法)进行事务的提交或回滚。




二、对关联关系的理解:
1、一对一:分为主键关联和外键关联,两者在配置映射文件时有所不同,再编写PO类时,两个关联的类都需要在属性中添加所关联的类,并提供相应的setter和getter方法,建立关联时直接set(关联的对象),在取得关联对象时直接get()
2、一对多:分为单向关联和双向关联,单向关联和双向关联的区别在于单向关联只需在单的一方进行映射文件的修改,而双向关联则都需要,在PO类中,单向关联只需要在单的一方添加Set类型的属性(存放多的一方)并给出相应方法,而双向关联除此之外还要在多的一方添加类型为单的一方(即:将外键设置为对象)的属性并给出方法。
    》》》单向关联只能从单的一方获取到多的一方的信息(Set类型),双向关联双方都可获取对方信息
3、多对多:在多对多关联关系中,需要使用一个中间表,该中间表的字段一般是两个关联的表的主键,该中间表将这两个字段作为组合主键并分别是两个关联表主键的外键。在编写PO类时,并不需要理会中间表,而是在两个关联表中分别一个Set类型的属性(用来存放对方的po对象),并分别添加setter和getter方法。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值