zoukankan      html  css  js  c++  java
  • 如何使得事务使用同一个连接对象Connection呢?

    如何使得事务使用同一个连接对象Connection呢?

    1,方式一:(如果只是封装到jdbc只一步时,没到dao,使用方法传参的方式):

    ①,共享同一个connection(先在外面获取,后边就可以作为参数啦):使用传参方式,外面先getConnction获取了一个conction(统一化)

    ②,然后以参数的形式参入,参数非空就赋值给到里边的this.connection, 空的参数就自己再创建一个Connection。

    ①,共享同一个connection(先在外面获取,后边就可以作为参数啦):使用传参方式,外面先getConnction获取了一个conction(统一化)

     ②,然后以参数的形式参入,参数非空就赋值给到里边的this.connection, 空的参数就自己再创建一个Connection。

     

    2,方式二:利用线程集合存取(原理,线程集合内部:获取当前线程,利用当前线程获取一个集合~线程集合)~重点

     线程集合内部:

     

     

    注意:

    //避免内存泄露,要集合清空线程容器
    public void clearThreadLocal(){
    this.connection = connThreadLocal.get();
    if(Objects.nonNull(this.connection)){
    try {
    this.connection.close();
    this.connection = null;
    connThreadLocal.set(null);
    connThreadLocal.remove();
    } catch (SQLException throwables) {
    throwables.printStackTrace();
    }
    }
    }
  • 相关阅读:
    CMD 已存在的表, 没有主键的 添加主键属性
    回调函数 call_back
    在Ubuntu下安装MySQL,并将它连接到Navicat for Mysql
    F查询和Q查询,事务及其他
    Djabgo ORM
    Diango 模板层
    Django视图系统
    Django简介
    Web 框架
    HTTP协议
  • 原文地址:https://www.cnblogs.com/shan333/p/14939224.html
Copyright © 2011-2022 走看看