hibernate基础总结

hibernate流程

1.读取并解析配置文件hibernate-config.xml,创建Configeration(一个Configeration实例代表java类到sql数据库映射的集合)
2.读取并解析映射文件xxx-hbm.xml,创建sessionFactory,将Configeration配置信息拷到sessionFactory缓存中
3.打开session
4.创建事务Transation
5.持久化操作
6.提交事务
7.关闭session
8.关闭seesionFactory

hibernate的三种状态

1.临时态(new刚创建一个对象、session调用delete()方法)
2.持久态(session进行持久化操作,save()\update()\find()..)
3.游离态(sesiion.close())

hibernate的优势

1.对JDBC访问数据库代码作了封装,简化了数据访问层重复繁琐代码
2.是一个标准ORM映射框架简化了DAO层编码工作
3.支持关系型数据库,从一对一到多对多各种复杂关系

hibernate延迟加载

出现情况:1.使用load()方法 2.在many-to-one设置lazy
原理:使用动态代理,当获取一个对象时,hibernate并不从数据库加在真正的数据,而是为这个对象创建一个代理对象来代表对象,属性值全为默认值,只有在真正使用该对象的数据时才会去数据库中查询

hibernate怎样实现类之间的关系

类之间的关系主要体现在表之间的关系,通过配置文件many-to-one\one-to-many\many-to-many

hibernate缓存

hibernate包括一级缓存(默认开启)与二级缓存
一级缓存是session级别缓存,存在时间较短
二级缓存是sessionFactory级别缓存,整个程序共享一个会话工厂(适用范围:1.数据很少被修改 2.允许出先偶尔的并发问题)
开启二级缓存<property name="hibernate.cache.use_second_level_cache">true</property>

hibernate查询语言

HQL与QBC(mybatis可以使用)

参考

https://blog.csdn.net/greensomnuss/article/details/53525074
https://blog.csdn.net/woshichenxu/article/details/586361

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值