Jfinal事務操作


添加刪除更新均可用以下事務

import java.sql.Connection;
import java.sql.SQLException;

import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.DbKit;

/**
 * @author 馬家立
 * @version 創建時間:2019年11月27日下午3:14:10
 * @Description:TODO 事務測試類
 */
public class Transaction {
    /**
     * @Title:addTransaction
     * @author:馬家立
     * @date:2019年11月27日 下午3:23:06
     * @Description:TODO 事務測試
     * @return boolean
     */
    public boolean addTransaction() {
        // 返回結果狀態
        boolean result = false;
        // 聲明數據庫連接
        Connection conn = null;
        try {
            conn = DbKit.getConfig().getDataSource().getConnection();
            DbKit.getConfig().setThreadLocalConnection(conn);
            // 自動提交表成fasle:手動提交
            conn.setAutoCommit(false);
            // 設置事務隔離級別:可默認
            // conn.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
            Db.update("delete from nice where note = '111'");
            Db.update("delete from nice where note = '222'");
            Db.update("delete from nice where note = '333'");
            // 無異常提交
            conn.commit();
            result = true;
            System.out.println("事務操作成功");
        } catch (Exception e) {
            result = false;
            e.printStackTrace();
            System.err.println("事務操作失敗");
            try {
                // 異常回滾
                conn.rollback();
            } catch (SQLException eSql) {
                eSql.printStackTrace();
                System.err.println("Connection 回滾失敗");
            }
        } finally {
            if (null != conn) {
                try {
                    // 關閉連接
                    conn.close();
                } catch (SQLException eSql) {
                    eSql.printStackTrace();
                    System.err.println("Connection 關閉失敗");
                }
            }
            DbKit.getConfig().removeThreadLocalConnection();
        }
        return result;
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM