Hibernate和Mybatis的区别

本文探讨了Hibernate与MyBatis两大ORM框架的区别,包括开发效率、性能特点、SQL控制方式及缓存机制等。同时介绍了Hibernate的核心接口及一些优化策略。
  • Hibernate 五大接口也是贯穿了整个框架:
      1. Configuretion 用来读取配置文件
      1. SessionFactory 生产session的工厂
      1. Session 用来执行增删改查的对象和获取其他对象
      1. Query 用来执行HQL的增删改查
      1. Criteria 用于查
  • Hibernate 和 Mybatis 的区别
  1. 开发效率:
    两个可以 可以生成基本的单表的增删改查和配置文件复杂的查询,mybaits需要手动的编写SQL,并且手动的映射(resultMap) hobernate在做完映射之后不需要关注SQL以及结果集的映射
  2. 性能方面

    • 2.1 mybatis 开启的以及缓存(sqlsession)小缓存二级缓存默认是不开窍的hibernate :默认开启的二级的缓存(session)- 小缓存以及缓存默认是不开窍-第三方的缓存(Ecache,JBOSScache)

    • 2.2 Sql 语句
      mybatis中所有的sql的都是自定义的,所以可以更好的控制的SQL的语句的质量
      hibernnate 也支持原生的SQL 的这个就会破坏了原本的开发的简洁性

  3. 移植性
    • mybatis因为语句都是手动编写的,所以一直非常的麻烦
    • hibernate 通过制定不同的方言那么就可以兼容很多的数据库的产品
  4. hibernate 延迟加载怎么开启
    注解形式,在一对多或者多对一的注解中增加属性fetchxml的心事,在一对多或者多对一的标签中增加属性lazy
  5. Hibernate要优化策略
  6. 一级的缓存
  7. 2.可以实现分表粉酷
    1. 增加第三方缓存
      4.6. Hibernate 中的对象的第三组对象的三种状态
      1. 瞬时态
      2. 持久态
      3. 托管态
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值