mybatis day

        1、什么是mybatis

              它是一款半自动的ORM持久层框架,具有较高的SQL灵活性,支持高级映射(一对一,一对多),动态SQL,延迟加载和缓存等特性,但它的数据库无关性较低

               1.1 mybatis的优点

                1、简化数据库操作

                2、灵活的映射关系

                3、易于集成和使用

                4、高性能

                5、可扩展性


        2、Mybatis的相关概念

                2.1框架的概念

                框架是一种经过检验的、具有特定功能的半成品

                2.2持久化

                把内存有用的数据以某种技术保存起来,并且可以再次取出来应用

                2.3ORM

                ORM(对象关系映射)是一种编程技术,用于将对象模型和关系数据库之间的数据进行映射和转换。它允许开发者使用面向对象的方式来操作数据库,而不需要直接编写SQL语句。


        3、Mybatis的核心对象

                3.1SqlSessionFactioryBuilder   

                SqlSessionFactoryBuilder是MyBatis框架中的一个类,它的主要作用是用于构建SqlSessionFactory对象。

                SqlSessionFactory是MyBatis的核心类之一,它负责创建和管理SqlSession对象,提供了与数据库交互的方法。SqlSessionFactoryBuilder则是用于创建SqlSessionFactory的辅助类。

                作用:根据配置信息构建SqlSessionFactory实例

                作用域:局部变量

               3.2SqlsessionFactory          

                SqlSessionFactory是MyBatis框架中的一个重要概念。它是一个单例对象,用于创建和管理SqlSession实例。

                作用:创建SqlSession的实例工厂

                作用域:全局变量

                SqlSession                        

                SqlSession是MyBatis框架中的一个重要概念,它是与数据库交互的主要接口

                作用:执行SQL语句、事务管理、数据库连接管理

                作用域:请求范围或局部变量


        4、Mybatis的配置文件

                        

  1. configuration(配置):根元素,包含了MyBatis的所有配置信息。

  2. properties(属性):用于配置MyBatis的属性,如数据库连接信息、日志实现等。可以将这些属性值定义在外部的属性文件中,并通过<properties>元素引入。

  3. environments(环境):定义了MyBatis的运行环境,可以配置多个环境,如开发环境、测试环境和生产环境。每个环境可以有不同的数据源和事务管理器。

  4. transactionManager(事务管理器):定义了事务的管理方式,可以使用JDBC事务或Spring事务等。

  5. mappers(映射器):用于配置与数据库表的映射关系,定义SQL语句和映射规则。可以使用XML或注解的方式来配置映射器。可以通过<mapper>元素引入外部的映射文件,也可以直接在配置文件中定义映射关系。

  6. mapper(映射器):定义了一个具体的映射器,可以通过resource、url或class属性来指定映射文件的位置。可以使用XML或注解的方式来配置映射器。

        这些核心配置元素共同构成了MyBatis的配置文件,通过配置文件可以定义数据库连接、事务管理、映射关系等重要信息,使得MyBatis能够正确地执行数据库操作。


        5、Mybatis的工作原理

        

MyBatis的工作原理主要分为两个阶段:配置阶段和执行阶段。

配置阶段:

  1. 加载配置文件:MyBatis首先加载MyBatis的配置文件(通常为XML格式),解析其中的配置信息。

  2. 创建SqlSessionFactory:根据配置文件中的配置信息,创建SqlSessionFactory对象。SqlSessionFactory是MyBatis的核心,负责创建和管理SqlSession对象。

  3. 创建映射器(Mapper):根据配置文件中的映射器配置,解析映射器文件或注解,创建映射器对象。映射器对象包含了与数据库交互的SQL语句和映射关系。

执行阶段:

  1. 创建SqlSession:通过SqlSessionFactory创建SqlSession对象。SqlSession是与数据库交互的主要接口。

  2. 执行SQL语句:使用SqlSession对象执行数据库操作,包括查询、插入、更新和删除等。MyBatis会根据映射器中配置的SQL语句,将参数传递给数据库,并获取执行结果。

  3. 对象映射:MyBatis将查询结果映射为Java对象。根据映射器中的配置,将查询结果中的列与Java对象的属性进行映射,生成相应的Java对象。

  4. 事务管理:MyBatis支持事务管理,可以在SqlSession中开启、提交或回滚事务。事务的提交和回滚会影响到数据库的操作。

  5. 关闭SqlSession:完成数据库操作后,关闭SqlSession,释放资源。可以通过SqlSession的close方法来关闭SqlSession。

MyBatis的工作原理是通过配置文件进行初始化,创建SqlSessionFactory和映射器对象,然后通过SqlSession执行SQL语句,将查询结果映射为Java对象,实现与数据库的交互。

        

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值