Hibernate系列-Hibernate原理

    一开始学习Hibernate之前,感觉和.net的EF差不多,就是对JDBC的一种封装而已,看到这么多视频 心情很是激动,又可以好好学习啦。

    首先来说说工作原理吧:

    1.配置好hibernate的配置文件和与类对应的配置文件后,启动服务器。
    2.服务器通过实例化Configeration对象,读取hibernate.cfg.xml文件的配置内容,并根据相关的需求建好表或者和表建立好映射关系。
    3.通过实例化的Configeration对象就可以建立sessionFactory实例,进一步,通过sessionFactory实例可以创建session对象。
    4.得到session之后,便可以对数据库进行增删改查操作了,除了比较复杂的全文搜索外,简单的操作都可以通过hibernate封装好的session内置方法来实现。
    5.此外,还可以通过事物管理,表的关联来实现较为复杂的数据库设计

越来越像我们高校云平台3.0使用的底层架构了,所以知识是相同的吧。

    再来说说优缺点吧:

     1.首先考虑性能问题,我们的评教就是很好的例证,由于对持久层封装过于完整,导致开发人员无法对sql进行优化,无法灵活使用jdbc的原生sql,Hibernate封装了jdbc,所以没有jdbc直接访问数据库效率高。要使用数据库的特定优化机制的时候,不适合用Hibernate 
    2.框架中使用orm原则,导致配置过于复杂,一旦遇到大型项目,比如300张表以上,配置文件和内容是非常庞大的,另外,dto满天飞,性能和维护问题随之而来
    3.如果项目中各个表中关系复杂,表之间的关系很多,在很多地方把lazy都设置false,会导致数据查询和加载很慢,尤其是级联查询的时候。
    4.Hibernate在批量数据处理时有弱势,对于批量的修改,删除,不适合用Hibernate,这也是ORM框架的弱点。

     5.优点是hibernate相当于java类和数据库表之间沟通的桥梁,通过这座桥我们就可以做很多事情了。

     Hibernate视频较多,要好好总结和体会才能体会到Hibernate的精髓呀。

转载于:https://www.cnblogs.com/xzpblog/p/5117921.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值