Mybatis

一、什么是Mybatis

Mybatis是一个支持普通SQL查询、存储过程以及高级映射的持久层框架。它几乎不需要使用JDBC代码来访问数据库,只用简单的XML配置或注解进行配置和原始映射就可以了。它的作用主要将Java的POJO(对象)映射成数据库中的记录。

【1】映射:哪个类对应哪个表

【2】持久:将数据存储到磁盘中,一般通过数据库完成

【3】记录:表的一条数据

二、什么是ORM

为了解决面向对象语言与数据库之间的数据转换问题的技术,即将内存中的对象转换成数据库中的一条记录。

三、ORM框架的工作原理

采用面向对象的思想,以面向对象的方式来操作数据库中的表。应用程序用面向对象的方式操作持久化对象(与表对应的对象),ORM框架将这些操作转换成底层的SQL操作。(数据库中有用户表,java程序中对应的持久化对象为用户,以del()方法操作用户对象,ORM将del()方法转换成底层的SQL操作)

四、Mybatis工作原理

Mybatis框架操作数据库的流程

(1)加载Mybatis的全局配置文件和映射文件,解析配置文件,生成Configuration对象。

(2)SqlSessionFactoryBuilder通过Configuration对象生成SqlSessionFactory。

(3)SqlSessionFactory创建SqlSession对象,该对象可以完成对数据的增删查改和事务提交等。

(4)SqlSession执行sql语句时,找到对应的MappedStatement对象。

(5)Executor接口解析MappedStatement对象,为JDBC的Statement对象注入参数。

(6)JDBC执行SQL语句。

(7)SQL语句执行后,MappedStatement对象将执行结果转成LIst、Map、POJO、基本数据类型等数据类型并返回。

五、Mybatis优点

需要手动编写SQL,工作量大,但可以配置动态SQL和优化SQL,可以决定映射规则(哪个属性对应哪个字段),支持存储过程,适合性能要求高和复杂的项目。

六、Mybatis用到的设计模式---工厂模式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值