Hibernate入门

20 篇文章 0 订阅

一、介绍

    是一个优秀的ORM框架,屏蔽数据之间的差异,完全面向对象的方式实现对数据库中数据的操作

    1、Configuration

        到src下面找到名称为hibernate.cfg.xml配置文件,创建对象,把配置文件放到对象里面(加载核心配置文件)

    2、SessionFactory(重点)

        ①创建sessionFactory时,根据核心配置文件,到数据库里把表创建。

        ②创建sessionFactory时,特别消耗资源,一般一个项目创建一个sessionFactory对象。一般建立一个工具类,使用静态代码块。

public class HibernateUtils{

    static Configuration cfg = null;

    static SessionFactory sessionFactory = null;

 

    static{

        cfg = newConfiguration();

        cfg.connfigure();

        sessionFactory = cfg.buildSessionFactory();

        

    }

    public static SesseionFactory getSessionFactory(){

        return sessionFactory;

    }

}

    3、Session(重点)

        ①类似于jdbc中connection

        ②session里面不同的方法实现crud操作(save、update、delete、根据id查询get方法)

        ③session对象为单线程对象

    4、Transaction

        事务对象,具有提交和回滚方法

 

 

二、步骤

    1、导入相关的jar包(hibernate->requried/jpa;驱动包;dom4j)

    2、创建实体类与映射文件(约束到文档里面找)

    3、创建核心配置文件(名称和位置固定:src下面,名称为hibernate.cfg.xml)

    4、测试代码(创建表,添加表)

 

三、解决配置文件没有提示问题

    1、在有网络情况下

    2、把约束文件引入到eclipse里

        window->preference->xml Catalog->add,将约束复制到URI框中,选择本地约束文件。

er

四、实体类(持久化类)编写规则

    1、实体类属性私有

    2、公开set和get方法

    3、有属性为唯一值,一般为id

    4、建议使用基本数据类型的包装类,如Interger scope = null表示满意参加考试

 

五、实体类的三种状态

    1、瞬时态:对象里面没有id值,对象与session没有关联(一般为save操作) 

    2、持久态:对象里面有id值,与session也有关联

    3、托管态:对象里面有id值,与session没有关联

 

 

六、hibernate的一级、二级缓存

    1、一级缓存特点

        ①默认开启

        ②使用范围:session范围,从session创建到session关闭

        ③存储的数据必须是持久态

    2、二级缓存特点

        ①目前已经不使用了,替代技术为redis

        ②默认关闭

        ③使用范围:项目范围(sessionFactory范围)

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值