第9章 Mybatis

9.1 谈谈你对Mybatis的理解

难度:★★

重点:★★

白话解析

说清楚Mybatis是什么,它的工作流程,然后再对比一下Hibernate就好了。

1、Mybatis是什么:它一个半自动ORM框架,它底层把JDBC那套加载驱动、创建连接、创建statement等重复性的硬编码全部给你封装好了,程序员只需要关注业务SQL就行了,不需要自己去重新写JDBC那套代码。它支持定制化的SQL、存储过程以及高级映射。

MyBatis 使用XML或注解来配置和映射原生信息,将 POJO映射成数据库中的记录,避免了JDBC代码手动设置参数以及获取结果集的繁琐步骤。

2、工作流程:

  • 第一步:要知道连哪个数据库——读取MyBatis配置文件(mybatis-config.xml),这个配置文件就是配置一些全局信息的,例如数据库的连接啊、类型的别名啊、插件啊等。

  • 第二步:要知道执行哪些SQL——加载乱七八糟的XXXMapper.xml文件。

  • 第三步:Java操作数据库肯定封装了Java对象的,这些对象要通过工厂去创建——构造会话工厂,通过SqlSessionFactoryBuilder().build方法创建SqlSessionFactory。

  • 第四步:由会话工厂创建SqlSession对象,该对象中包含了执行SQL语句的所有方法。

  • 第五步:在执行SqlSession的时候,底层定义了一个Executor接口来操作数据库,他将根据SqlSession传递的参数动态的生成需要执行的SQL

你可能感兴趣的:(白话Java面试,mybatis,java,spring)