我想知道,如果可能的話,在Struts2,以HTML表單的自動場沒有getter和setter映射到那些動作的,。Struts2的形式來操作字段映射自動
很明顯,通過獲得者和制定者或ParameterAware interface and the Map
,字段可以在動作中設置,但我只是想知道否則有一種方法。
我想知道,如果可能的話,在Struts2,以HTML表單的自動場沒有getter和setter映射到那些動作的,。Struts2的形式來操作字段映射自動
很明顯,通過獲得者和制定者或ParameterAware interface and the Map
,字段可以在動作中設置,但我只是想知道否則有一種方法。
模型驅動是正確的選擇:)
第一,而不是「與getter和setter領域」的角度思考建議您認爲在「bean屬性」這裏條件。 Struts2(和大多數java框架)以這種方式思考,他們通常不關心(以及正確)這些「屬性」是否是真實的字段。
你的問題的簡短答案是:不。
但請注意,Struts2非常靈活 - 當我說「不」時,我的意思是「使用默認攔截器」。你總是可以編寫你自己的攔截器,而不是默認的做 - 不好的想法國際海事組織。
執行該映射的攔截器(基本上)是參數攔截器。 From its documentation:
這個攔截獲取所有參數從
ActionContext#getParameters()
和 通過 調用ValueStack#setValue(String, Object)
通常導致一個形式請求中提交的值 被施加到一個動作中的值 設置它們的值堆棧上疊加。
,展望ValueStack.setValue(String,Object)我們讀到:
嘗試在堆棧使用的默認搜索 爲了給定 表達坐落在一個 豆一個屬性。
所以你有。
,如果我說的bean,然後通過在Java Beans標準的getter和setter都無需說中。我只是試圖更清楚。另外,正如你所說的那樣,我會去ModelDriven。 :) – hkansal 2010-05-25 05:16:15