13.MyBatis

 

一、mybatis概述

1.什么是mybatis

MyBatis是支持普通SQL查询、存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plan Old Java Objects,普通的Java对象)映射成数据库中的记录。

每个MyBatis应用程序主要都是使用SqlSessionFactory实例的,一个SqlSessionFactory实例可以通过SqlSessionFactoryBuilder获得。SqlSessionFactoryBuilder可以从一个xml配置文件或者一个预定义的配置类的实例获得。

用xml文件构建SqlSessionFactory实例是非常简单的事情。推荐在这个配置中使用类路径资源(classpath resource),但你可以使用任何Reader实例,包括用文件路径或file://开头的url创建的实例。MyBatis有一个实用类Resources,它有很多方法,可以方便地从类路径及其它位置加载资源。

2.orm工具的基本思想

无论是用过的hibernate,mybatis,你都可以发现它们有一个共同点:

  1. 从配置文件(通常是XML配置文件中)得到 sessionfactory.
  2. 由sessionfactory  产生 session
  3. 在session 中完成对数据的增删改查和事务提交等.
  4. 在用完之后关闭session 。
  5. 在Java 对象和 数据库之间有做mapping 的配置文件,也通常是xml 文件。

3.mybatis和JDBC的比较

4.mybatis和hibernate的比较

mybatis映射的是查询的结果集。

hibernate映射的是表结构。