zoukankan      html  css  js  c++  java
  • Mybatis中的基本对象的生命周期和作用域

    不同作用域和生命周期类别是至关重要的,因为错误的使用会导致非常严重的并发问题

    1. SqlSessionFactoryBuilder

    这个类可以被实例化、使用和丢弃,一旦创建了 SqlSessionFactory,就不再需要它了
    作用域:方法作用域(局部作用域),写成静态代码块,在虚拟机初始化的时候执行,被销毁

    1. SqlSessionFactory

    SqlSessionFactory 一旦被创建就应该在应用的运行期间一直存在,没有任何理由丢弃它或重新创建另一个实例.有很多方法可以做到,最简单的就是使用单例模式或者静态单例模式。
    生命周期:应用的运行期间
    作用域:应用作用域,可以写成一个特定的工具类

    3.SqlSession

    每个线程都应该有它自己的 SqlSession 实例。SqlSession 的实例不是线程安全的,因此是不能被共享的,所以它的最佳的作用域是请求或方法作用域。每次收到 HTTP 请求,就可以打开一个 SqlSession,返回一个响应后,就关闭它。最好将其放在一个try|catch块中
    作用域:请求或方法作用域
    生命周期:一个请求或方法,需要及时地sqlSession.close()

  • 相关阅读:
    【css】 text-align 居中导航
    css
    css
    css
    css : object-fit 兼容 ie 的解决方案
    Linux下Nginx配置多个站点
    Dart之环境搭建
    酒店行业的OTA
    主流消息队列MQ比较,MQ的4类应用场景
    消息队列Kafka、RocketMQ、RabbitMQ的优劣势比较
  • 原文地址:https://www.cnblogs.com/Arno-vc/p/13364631.html
Copyright © 2011-2022 走看看