struts頁面物件向action中傳遞

2021-05-23 06:07:12 字數 883 閱讀 3498

在struts2的提供例項中,將查詢出來的資料物件封裝在list中,並通過iterator遍歷顯示在頁面中,選中其中的一條資料,並希望能夠單獨顯示在乙個頁面時,官方提供的方式是傳遞id過去,並通過id查詢資料後顯示在頁面上。

能否將iterator遍歷後的物件作為引數,直接傳到的新的action中,並顯示在跳轉後的頁面中,以此來減少對資料庫的查詢操作。

在struts中,頁面向後台傳遞物件時,系統將報錯,錯誤原因是將物件從頁面傳遞到action時,其型別被轉換為了string型別,因此不能將其賦值給物件資料。需要進行的處理就是對string型別做處理將其轉換為物件型別。

第一步。在物件pojo中重寫tostring方法。因為在頁面傳遞物件到action過程中,轉換為string型別呼叫的是物件的tostring方法,重寫tostring方法可以儲存物件中的資料。

public class  user

return u;

}將物件轉換為字串

@override

public string converttostring(map arg0, object arg1)

第三步,編寫資料轉換的配置檔案。

區域性轉換,在action所在的資料夾中新建actionname-conversion.properties檔案,檔案內容 user  = ***. userconvert  // user代表action中user物件的命名,即private  user user; 根據實際命名調整,***代表userconvert物件所在的包名。

全域性轉化, 在struts.xml同一目錄下新建xwork-conversion.properties檔案, 檔案內容 ***.user = ***.userconvert .

如此,這可以在頁面中傳遞user物件到action中。

PO Page object 頁面物件

在ui自動化時,越做到後面越難處理,主要會出現以下問題 1 越多,看的越擁擠,不好閱讀 2 維護成本越來越高,ui稍微改了一些變動,就要改大量 比如替換定位元素 3 函式方法多用,沒有可復用方法 在以上問題出現後,有人就總結出乙個po模式,主要原理就是將各種定位 方法 操作分開使用,使指令碼可讀可寫...

頁面物件(page object)模式

使用頁面物件的設計模式。頁面物件模型將測試 和被測試的頁面的頁面元素及其操作方法進行分離,以降低頁面元素的變化對測試 的影響。每乙個被測試的頁面都會被定義為乙個類,類中會定位所有需進行測試操作的頁面元素物件,並且定義操作每乙個頁面元素物件的方法。如果使用者沒有使用此模式,那麼獎登入過程都用相同的 段...

PO頁面物件模式封裝

po的主要價值體現在對介面互動細節的封裝,這樣可以使測試案例可以更關注與業務而非介面細節,提高測試案例的可讀性。以傳統的登陸頁面為例實現po模式,因為每個用例中都需要登陸。其中需要使用pagefactory.initelements 工廠方法,此方法也可以解決頁面元素過期的問題。頁面層,對用例中需要...