Mybatis的生命周期及作用域

简介: Mybatis的生命周期及作用域

1.生命周期

1.首先通过SqlSessionFactoryBuilder的builde()方法去加载xml文件或者配置文件,会生成一个SqlSessionFactory工厂对象。


2.得到工厂对象后,就可以去工厂里面去拿我们需要的SqlSession对象了,调用openSession()方法即可。


3.拿到SqlSession对象后,可以调用getMapper(Class mapperClass)方法,可以得到一个映射器接口的实例对象


4.通过映射器实例对象去调用相应方法


5.最后关闭SqlSession即可



2.作用域

  • SqlSessionFactoryBuilder:它的作用在于创建SqlSessionFactory,创建完成后就不再需要,故 SqlSessionFactoryBuilder实例的最佳作用域是方法作用域


  • SqlSessionFactory 可以被认为是一个数据库连接池,它的作用是创建 SqlSession 接口对象,在我们整个程序都要使用,所以说SqlSessionFactory的最佳作用域是应用作用域。


  • SqlSession: 我们在对数据库操作完就需要关闭,故SqlSession的最佳的作用域是请求或方法作用域。

  • mapper:由于SqlSession关闭,它的数据库连接资源也会消失,所以它的生命周期应该小于等于SqlSession的生命周期,它代表是一个请求中的业务处理,所以它应该在一个请求中,一旦处理完了相关的业务,就应该废弃它。
目录
相关文章
|
安全 Java 数据库连接
【MyBatis】核心配置文件,三大对象的作用域,#{}和${}的区别
【MyBatis】核心配置文件,三大对象的作用域,#{}和${}的区别
106 0
|
7月前
|
XML Java 数据库连接
Mybatis之简介、使用操作(安装、XML、SqlSession、映射的SQL语句、命名空间、作用域和生命周期)
【1月更文挑战第2天】 MyBatis 是一款优秀的持久层框架 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程 MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 实体类 【Plain Old Java Objects,普通的 Java对象】映射成数据库中的记录。
173 2
Mybatis之简介、使用操作(安装、XML、SqlSession、映射的SQL语句、命名空间、作用域和生命周期)
|
XML 安全 Java
mybatis作用域和生命周期解读
mybatis作用域和生命周期解读
|
XML 安全 Java
Mybatis 作用域和生命周期
2.SqlSessionFactoryBuilder 这个类可以被实例化、使用和丢弃,一旦创建了 SqlSessionFactory,就不再需要它了。 因此 SqlSessionFactoryBuilder 实例的最佳作用域是方法作用域(也就是局部方法变量)。 你可以重用 SqlSessionFactoryBuilder 来创建多个 SqlSessionFactory 实例,但最好还是不要一直保留着它,以保证所有的 XML 解析资源可以被释放给更重要的事情
92 0
Mybatis 作用域和生命周期
|
XML SQL Java
MyBatis的几个重要类和生命周期(四)
MyBatis的几个重要类和生命周期(四)
183 0
MyBatis的几个重要类和生命周期(四)
|
SQL 安全 Java
学习MyBatis必知必会(5)~了解myBatis的作用域和生命周期并抽取工具类MyBatisUtil、mybatis执行增删改查操作
学习MyBatis必知必会(5)~了解myBatis的作用域和生命周期并抽取工具类MyBatisUtil、mybatis执行增删改查操作
156 0
|
2月前
|
Java 数据库连接 Maven
mybatis使用一:springboot整合mybatis、mybatis generator,使用逆向工程生成java代码。
这篇文章介绍了如何在Spring Boot项目中整合MyBatis和MyBatis Generator,使用逆向工程来自动生成Java代码,包括实体类、Mapper文件和Example文件,以提高开发效率。
142 2
mybatis使用一:springboot整合mybatis、mybatis generator,使用逆向工程生成java代码。
|
2月前
|
SQL JSON Java
mybatis使用三:springboot整合mybatis,使用PageHelper 进行分页操作,并整合swagger2。使用正规的开发模式:定义统一的数据返回格式和请求模块
这篇文章介绍了如何在Spring Boot项目中整合MyBatis和PageHelper进行分页操作,并且集成Swagger2来生成API文档,同时定义了统一的数据返回格式和请求模块。
70 1
mybatis使用三:springboot整合mybatis,使用PageHelper 进行分页操作,并整合swagger2。使用正规的开发模式:定义统一的数据返回格式和请求模块
|
2月前
|
前端开发 Java Apache
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
本文详细讲解了如何整合Apache Shiro与Spring Boot项目,包括数据库准备、项目配置、实体类、Mapper、Service、Controller的创建和配置,以及Shiro的配置和使用。
487 1
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
|
2月前
|
SQL Java 数据库连接
mybatis使用二:springboot 整合 mybatis,创建开发环境
这篇文章介绍了如何在SpringBoot项目中整合Mybatis和MybatisGenerator,包括添加依赖、配置数据源、修改启动主类、编写Java代码,以及使用Postman进行接口测试。
26 0
mybatis使用二:springboot 整合 mybatis,创建开发环境