mybatis原理

 2023-09-15 阅读 20 评论 0

摘要:接口Transaction 方法:getConnection()、commit()、rollback()、close mybatis一级缓存和二级缓存。继承类: JdbcTransaction(使用Jdbc的事务管理机制) ManagedTransaction(使用manage的事务管理机制,即mybatis自身不会执行事务管理,交

接口Transaction

        方法:getConnection()、commit()、rollback()、close

mybatis一级缓存和二级缓存。继承类:

      JdbcTransaction(使用Jdbc的事务管理机制)

      ManagedTransaction(使用manage的事务管理机制,即mybatis自身不会执行事务管理,交由其他的容器进行(如WebLogic等))

mybatis和hibernate的区别与优劣。mybatis配置:

             configition->environments-->environment-->transactionmanage(1),datasource

                                ->mapper

mybatis的环境配置信息。             即程序启动的时候,会加载mybatis配置文件,通过事务管理和数据源组成环境中去

             (1)处的transactionmanager是配置事务机制的类型(jdbc,managed)

事务工厂:

             TransactionFactory---->JdbcTransactionFactory ------------>JdbcTrasaction

                                               ----->ManagedTransactionFactory -------------->ManagedTransaction

事务类型:

            JdcbTransaction:

                                获取数据连接池connection对象,通过这个对象对事务进行开始、提交、回滚,JdbcTransaction就是对jdbc事务处理机制的封装

             ManagedTransaction:

                               mybatis自身不进行事务处理,而是通过web容器进行事务生命周期的管理

                               若本地程序,执行任何的增删改操作,即使commit,也不会数据库产生影响,因为本地程序本身没有事务处理机制




mybatis整体流程:

                 1加载和初始化配置

                             配置文件:java注解、配置文件

                             封装成MappedStatement(传入参数、sql语句、返回结果)

                             保存在内存中

                 2接受处理请求

                              调用数据库API接受数据请求,请求处理层进行处理

                 3数据处理

                            (1) 根据请求的sqlID和参数,找到相应的MapperStatement

                            (2)调用连接对象执行sql语句

                            (3)将返回结果进行映射

                            (4)释放连接资源

                 4数据返回

mybatis的功能架构:

              1数据库API层:提供API用于数据请求的处理

               2数据处理层:sql查询、解析、执行、对查询结果进行映射等

               3数据基础层:事务管理、配置加载、缓存管理、连接管理

 

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/60106.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息