• 今日总结


    2020年10月26日:
    使用treadlocal来管理同一事务进行操作:
    在完成项目的时候,有时一项工作需要几个事务共同完成来保证正常的运行,因此需要使用threadlocal来管理同一个数据库连接,以此来保证事务的正常运行。以下是我写的管理数据库连接的代码:

    package shujuku;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    public class shuju {
    private static ThreadLocal<Connection> conns=new ThreadLocal<Connection>();
    public static Connection getConnection()
    {
    Connection conn=conns.get();
    try {
    Class.forName("com.mysql.cj.jdbc.Driver");
    } catch (ClassNotFoundException e1){
    e1.printStackTrace();
    }
    if(conn==null){
    try {
    conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/kecheng?serverTimezone=UTC","root","150023");
    conns.set(conn);
    conn.setAutoCommit(false);
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    return conn;
    }
    public static void close(Connection connection)
    {
    try {
    if (connection != null)
    {
    connection.close();
    }
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    public static void commitAndclose() {
    Connection connection=conns.get();
    if(connection!=null) {
    try {
    connection.commit();
    } catch (SQLException e) {
    e.printStackTrace();
    }finally {
    try {
    connection.close();
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    }
    conns.remove();
    }
    public static void rollbackAndclose() {
    Connection connection=conns.get();
    if(connection!=null) {
    try {
    connection.rollback();
    } catch (SQLException e) {
    e.printStackTrace();
    }finally {
    try {
    connection.close();
    } catch (SQLException e) {
    e.printStackTrace();
    }
    }
    }
    conns.remove();
    }
    }

    此段代码用于数据库连接,并将事务设置为了手动提交,而且使用了threadlocal来进行管理,这样一来就不用担心事务会发生错误了。

  • 相关阅读:
    JS调试工具
    什么是Web Service?
    win7怎么安装消息队列 MSMQ
    死锁产生的原因及四个必要条件
    项目管理模式之如何去除SVN标记
    AJAX中的请求方式以及同步异步的区别
    敏捷软件开发模型--SCRUM
    堆和栈
    UI产品设计流程中的14个要点
    Android中dp和px之间进行转换
  • 原文地址:https://www.cnblogs.com/yitiaokuailedexiaojingyu/p/14117841.html
Copyright © 2020-2023  润新知