Models. Inc
在深入瞭解HibernateObjectModel之前,我們先來了解一下它實現的IModel接口。
象GUI框架的傳統做法(例如Cocoa Bindings)一樣,Wicket形式上把UI組件綁定到它們代表的數據上。你可能會認爲一個組件只能把一個簡單對象作爲它的model進行處理,可是有幾種辦法可以以IModel作爲過渡來完成複雜的處理。
首先,它可以將規劃中的事情(imaginary projection)作爲事實上的model對象。取代把一個對象賦值給所有子組件的做法,你會從把一個CompoundPropertyModel賦值給一個根組件中受益匪淺。這個根model會不附帶任何models地自動傳遞model的消息(requests)給它的子組件。它們的wicket:id值會隱含地映射到根model的屬性(properties)。
我們可以將這個同樣的思路推廣到特定的目標(in unusual directions),就像SublistProjectionModel所做的。