OAF VO初始化分析

2022-08-28 19:54:11 字數 917 閱讀 1728

目錄

第一部分 插入新行前的初始化

1 僅插入型vo的初始化

2 插入查詢vo的初始化

第二部分 執行查詢前的初始化

1 避免無條件查詢

2 避免多餘的查詢

正文

第一部分 插入新行前的初始化

在處理插入初始化之前,我們必須確定一件事情,就是當前我們要處理的這個vo,它是只用作插入操作呢,還是即用作插入又用作查詢操作。比如乙個employeecreatevo,這個vo僅僅在建立新員工的頁面使用,不用做其他用途,那麼我們認為它是乙個只做插入操作的vo,反之,它就是乙個即查詢又插入的vo.理清楚這一點,對合理初始化vo很重要。

1僅插入型的vo的初始化

我們可以利用如下**:

//檢查vo是否有行,如果有行了,我們就不用執行括號裡的語句了。vo.getfetchedrowcount()是檢查當前快取中vo的行數,包括新插入的行,它不執行資料庫查詢,僅僅檢查記憶體中已經取出來的行。如vo已經被插入過行了,那麼getfetchedrowcount肯定大於0,就無需再呼叫setmaxfetchsize了

if (vo.getfetchedrowcount() == 0) ;

row rows = vo.findbykey(new key(keys), 1);

// findbykey不會改變currentrow指標,所以需要我們手動去更改,否則頁面上不會顯示值。

if ((rows != null) &&(rows.length > 0)) } // end initdetails()

2避免多餘查詢

涉及個性化,暫不討論

OAF VO初始化分析

目錄 第一部分 插入新行前的初始化 1 僅插入型vo的初始化 2 插入查詢vo的初始化 第二部分 執行查詢前的初始化 1 避免無條件查詢 2 避免多餘的查詢 正文第一部分 插入新行前的初始化 在處理插入初始化之前,我們必須確定一件事情,就是當前我們要處理的這個vo,它是只用作插入操作呢,還是即用作插...

MFC入口點及初始化分析

寫的很隨意,這是自己在學習及除錯過程的隨筆吧,希望能給大家帶來一些益處。很多人對於mfc的入口點及初始化很迷茫,從而導致學習mfc的畏懼心理 當初和我一起學習的3 4個人基本都放棄了 但願這篇文章給你以啟示。很多人在大學的時候,都被教會程式的入口點是main 函式。但是在main 函式之前有什麼操作...

stm32時鐘初始化分析

之前在系統應用中都是直接用的void systeminit void 函式進行系統時鐘的初始化,從來沒有考慮怎樣進行時鐘初始化的細節,但是突然硬體時鐘無法起振了,所以才考慮利用系統內部,stm32內部提供了乙個8m的內部時鐘,不是很準確,但是可以用。如果還是按照呼叫系統時鐘的方法,程式執行起來會很慢...