,什么是mybatis为什么要使用mybatis?

用户投稿 57 0

关于“mybatis_php”的问题,小编就整理了【1】个相关介绍“mybatis_php”的解答:

什么是mybatis为什么要使用mybatis?

1.什么是MyBatis?

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

2.对比JDBC和MyBatis

3.使用 MyBatis

3.1使用过程

a.编程式

b.集成式 managed 集成到 spring 使用

它是一个半自动映射的框架。这里所谓的“半自动”是相对于Hibernate全表映射而言的,MyBatis 需要手动匹配提供 POJO、SQL和映射关系,而Hibernate只需提供POJO 和映射关系即可。与Hibernate相比,虽然使用MyBatis手动编写 SQL 要比使用Hibernate的工作量大,但MyBatis可以配置动态SQL并优化SQL,可以通过配置决定SQL的映射规则,它还支持存储过程等。对于一些复杂的和需要优化性能的项目来说,显然使用MyBatis更加合适。

1、定义

MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。

2、使用原因

MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。

3、总体流程

(1)加载配置并初始化

触发条件:加载配置文件

处理过程:将SQL的配置信息加载成为一个个MappedStatement对象(包括了传入参数映射配置、执行的SQL语句、结果映射配置),存储在内存中。

(2)接收调用请求

触发条件:调用Mybatis提供的API

传入参数:为SQL的ID和传入参数对象

处理过程:将请求传递给下层的请求处理层进行处理。

(3)处理操作请求

触发条件:API接口层传递请求过来

传入参数:为SQL的ID和传入参数对象

处理过程:

(A)根据SQL的ID查找对应的MappedStatement对象。

(B)根据传入参数对象解析MappedStatement对象,得到较终要执行的SQL和执行传入参数。

(C)获取数据库连接,根据得到的较终SQL语句和执行传入参数到数据库执行,并得到执行结果。

到此,以上就是小编对于“mybatis_php”的问题就介绍到这了,希望介绍关于“mybatis_php”的【1】点解答对大家有用。

抱歉,评论功能暂时关闭!