mybatis核心组件生命周期管理

  1. sqlSessionFactoryBuilder 构建器 存在的意义就是创建sqlSessionFactory,用完既废弃 即可
  2. sqlSessionFactory 创建sqlSession 应使用单例模式,方便管理数据库连接,节约数据库连接资源,其生命周期存在于应用的整个声明周期中

    1. `private static SqlSessionFactory factory = null;
      //类线程锁
      private static final Class CLASS_LOCK = SqlSesssionFactoryUtils.class;

    public static SqlSessionFactory initSqlSessionFactory() {
    String resource = “mybatis-config.xml”;
    InputStream inputStream = null;
    try {
    inputStream = Resources.getResourceAsStream(resource);
    } catch (Exception e) {
    // TODO: handle exception
    }
    /* 使用锁机制,防止多线程环境下 生成多个facotry对象 /
    synchronized (CLASS_LOCK) {
    if (factory == null) {
    factory = new SqlSessionFactoryBuilder().build(inputStream);
    }
    }
    return factory;
    }

    public static SqlSession openSqlSession() {
    if (factory ==null) {
    initSqlSessionFactory();
    }
    return factory.openSession();
    }`

  3. sqlsession 会话对象. 是线程不安全的.其生命周期是在数据库处理请求的过程中.必须要及时关闭
    4.mapper 其生命周期最大也在sqlSession生命周期之内.用完会即销毁.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值