zoukankan      html  css  js  c++  java
  • myBatis 简介

      以前也接触过mybatis,但是只是会用,并不知道他有些地方是怎么实现的,最近出去面试,几乎每家公司都会问到mybatis,但是由于近期的开发一直都使用的是Hibernate,所以对mybatis方面就忘了很多,面试过程中不免打的有点差强人意,所以近期打算恶补一下Mybatis方面的知识。

    与其它的数据库进行对比

      1.jdbc,使用jdbc的话每一步都需要我们自己去使用java代码去写,这样就导致java代码与sql之间产生了强耦合关系,是不利于开发的。

        --sql与java代码混合,耦合度高导致编码硬伤。

        --维护不容易,并且在开发中需求中sql是易变的,频繁的改sql是经常发生的。

      2.Hibernate,全自动的ORM轻量级框架,消除了sql,我们只关心javaBean与表数据之间的封装,但在实际开发中,我们需要的业务往往是比较复杂的,而hibernate的sql是在内部自动生成的,所以我们无法进行优化,而且如果需要写复杂的逻辑就需要学另外的语言hql语言。

        --长难度复杂的sql对于hibernat来说并不容易。

        --内部产生的sql不易优化。

        --基于全映射的全自动化框架,大量的字段的pojo进行部分字段映射时比较困难。而导致数据库性能下降。

      3.mybatis,半自动的轻量级框架,它将sql这块提取出来,以配置文件的形式分离,完美的与java代码进行分离,让中要的sql语句交给开发人员去写,也可以自己优化,形成了这种介于jdbc与hibernate之间的半自动化框架。

  • 相关阅读:
    Eclipse安装反编译插件
    关于eclipse发送到桌面快捷方式后打不开
    字符串 242.有效的字符异位词
    栈 503.下一个更大的元素
    eclipse导入jar包
    Java获取当前的时间
    链表 24.两两交换链表中的节点
    链表 19.删除链表倒数第N个节点
    共享空间的栈
    栈的顺序存储结构
  • 原文地址:https://www.cnblogs.com/wuyx/p/8576742.html
Copyright © 2011-2022 走看看