美文网首页我爱编程
MyBatis和Hibernate的优缺点对比

MyBatis和Hibernate的优缺点对比

作者: 代码编写者C | 来源:发表于2018-04-12 15:39 被阅读0次

    Hibernate:
    优点:
    1、全自动,hibernate完全可以通过实体bean来完成数据库操作,不用写sql;
    2、有良好得二级缓存机制,默认用用的是sessionfactoryimpl的cacheimpl子类去实现的,可以使用第三方缓存框架:ehcache等;
    3、数据库移植性好;
    4、支持级联操作,更新、删除、查询等
    缺点:
    1、学习、精通门槛较高;
    2、sql都是自动生成的,遇到报表统计的需求hql查询有局限性;

    MyBatis:
    优点:
    1、易于上手,对于对象模型没有高的要求;
    2、写sql语句操作,并且定义在xml中也可以解除sql语句与程序代码的耦合;
    3、支持动态sql;
    4、速度相对hibernate快;
    5、提供映射标签,例如:select、update、delete、等;
    缺点:
    1、表、字段多的时候,sql编写的工作量较大;
    2、sql依赖于数据库,导致数据库移植性差;
    3、由于xml中的id必须唯一,所以dao中的方法不支持重载;
    4、数据组装工作量较大;
    5、不支持级联操作;
    6、动态sql不方便调试,尤其是逻辑复杂时;

    相关文章

      网友评论

        本文标题:MyBatis和Hibernate的优缺点对比

        本文链接:https://www.haomeiwen.com/subject/fyxfkftx.html