OAF_开发系列21_实现OAF事物控制TransactionUnitHelper(案例)
生活随笔
收集整理的這篇文章主要介紹了
OAF_开发系列21_实现OAF事物控制TransactionUnitHelper(案例)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
20150716 Created By BaoXinjian
一、摘要
TransactionUnitHelper用以創建一個被標記的Transaction,個人感覺類似PLSQL SavePoint用以Commit和Rollback特定交易的作用
主要用法
1. 交易開始時TransactionUnitHelper.startTransactionUnit,創建交易標志
2. 交易過程中TransactionUnitHelper.isTransactionUnitInProgress,判斷交易是否正在處理中
3. 交易完成后TransactionUnitHelper.endTransactionUnit,結束該標志交易
?
二、鎖定統計信息
1. CO中處理交易過程
// 判斷頁面不是導航Back
if (!pageContext.isBackNavigationFired(false)){
// 創建交易標志TransactionUnitHelper.startTransactionUnit(pageContext, "purProgUpdateTxn");if (!pageContext.isFormSubmission()){OAApplicationModule am = pageContext.getApplicationModule(webBean);am.invokeMethod("createEmployee", null);}}
else{
// 判斷交易是否正在處理if (!TransactionUnitHelper.isTransactionUnitInProgress(pageContext,"purProgUpdateTxn",true)){ // 提示交易正在處理中OADialogPage dialogPage = new OADialogPage(NAVIGATION_ERROR);pageContext.redirectToDialogPage(dialogPage);}}}
2. 回滾和提交
// 對交易進行回滾if (TransactionUnitHelper.isTransactionUnitInProgress(pageContext,"purProgUpdateTxn",false)) {am.rollbackPurProgram();TransactionUnitHelper.endTransactionUnit(pageContext,"purProgUpdateTxn"); }
// 對交易進行提交
else {am.commitPurProgram();TransactionUnitHelper.endTransactionUnit(pageContext,"purProgUpdateTxn"); }
?
Thanks and Regards
技術交流,技術討論,歡迎加入
Technology Blog Created By Oracle ERP - 鮑新建 與50位技術專家面對面20年技術見證,附贈技術全景圖
總結
以上是生活随笔為你收集整理的OAF_开发系列21_实现OAF事物控制TransactionUnitHelper(案例)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SQL Compare
- 下一篇: dubbo使用遇到的问题