Mybatis 3 介绍
主要作用就是更加便携地操作数据库
比如可以将ResultSet对象返回的数据自动封装进Entity 实体类或List 中,可以把SQL 语句配置到泊位文件中,也就是将SQL 语句与* .java 文件进行分离,使代码的分层更加明确。另外由于MyBatis 框架是使用SQL 语句对数据库进行操作的,所以可以单独对SQL语句进行优化,以提高查询效率,这点与使用Hibernate 框架相比有很大的优势,这也是为什么现阶段大部分的软件企业逐步用MyBatis 替换掉Hibernate 框架的主要原因。 MyBatis 并不是一个独立的技术,它内部操作数据库的原理还是使用JDBC,只是对JDBC 进行了轻量级的封装。
MyBatis 是一个“持久化ORM 框架”
持久化是指内存中的数据保存到硬盘上
ORM是指对象关系映射 (一个类对应表中的一行,属性对应表中的一列)也就是在使用MyBatis 框架时,可以将Java 类转化成数据表中的记录,或者将数据表中的记录转化成Java 类,技术原理其实就是JDBC+反射。
MyBatis 是一个“半自动化ORM 框架”
MyBatis 操作数据库时还是使用原始的SQL 语句,这些SQL 语句还是需要程序员自己来进行设计, 这就是半自动化。 在使用的方式上和全自动的Hibernate 有着非常大的区别,但正是MyBatis 属于半自动化,才更加的灵活。
下载Mybatis
https://github.com/mybatis/mybatis-3/releases
Mybatis 基本使用
核心:要想实现CURD 的操作,必须先要创建出SqlSessionFactory 对象
SqlSessionFactoryBuilder 创建出 SqlSessionFactory,
SqlSessionFactory 创建出 SqlSession
· 可以使用XML 方式创建SqlSessionFactory 对象,亦可以通过创建一个实例化的Configuration 对象来获得。
代码如下:
public class Test {
public static void main(String[] args) throws IOException {
String configFile = "mybatis-config.xml";
InputStream configStream = Resources.getResourceAsStream(configFile);
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
SqlSessionFactory factory = builder.build(configStream);
System.out.println(factory);
}
}
控制台输出:
![](https://i-blog.csdnimg.cn/blog_migrate/0ceaa5730a684747c6d1fc5dfd92dd6f.png)
上面代码的主要作用就是取得SqlSessionFactory 工厂对象。
其中mybatis-config.xml 配置文件主要作用就是如何连接数据库,内容如下