需求:
需求:不包含事務:有乙個轉賬功能
service:
transfer(to,from,money)
reducebalance(to,money)
模擬錯誤i=5/0;
increasebalance(from,money);
dao:
reducebalance(userid,money)
increasebalance(userid,money)
dao:
;//將hashmap轉成json字串
}不含事務模擬前轉賬:
不含事務模擬前轉賬模擬錯誤:
包含事務:
;//將hashmap轉成json字串
}模擬賺錢包含事務:可以正常轉賬,當模擬錯誤時都沒有轉賬
mysql模擬事務轉賬
測試事務 建立表create table account id int 3 notnull auto increment name varchar 30 not null money decimal 9 2 not null primary key id engine innodb default ...
事務(轉賬功能)
轉賬時必須雙方同時成功,要麼同時失敗,就是把雙方組成單元放到事務中 1 顯示的開啟乙個事務 start transaction 2 事務提交 commit代表從開啟事務到事務提交 中間的所有的sql都認為有效 真正的更新資料庫 3 事務的回滾 rollback 代表事務的回滾 從開啟事務到事務回滾 ...
事務完成轉賬功能。
事務的特性acid 原子性 atomicity 指事務是乙個不可分割的工作單位,事務中的操作。要麼都發生,要麼都不發生。一致性 consistency 乙個事務中,事務前後資料的完整性必須保持一致。隔離性 isolation 是指多個使用者併發訪問資料庫時,乙個使用者的 事務不能被其它使用者的事務所...