• 如何使得事务使用同一个连接对象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();
    }
    }
    }
  • 相关阅读:
    关于js的语句类型运算符等
    关于flex的布局理解
    三天来都在写项目;今天开始学习了js
    12.13的学习内容
    Css多列语法笔记
    Css3关键帧动画
    codevs1085数字游戏(环形DP+划分DP )
    codevs1040统计单词个数(区间+划分型dp)
    POJ1062昂贵的聘礼
    POJ3687Labeling Balls
  • 原文地址:https://www.cnblogs.com/shan333/p/14939224.html
Copyright © 2020-2023  润新知