我有一個庫方法Common.addTheUsualStuffToTheModel(model)
,需要在我的應用程序中的每個控制器方法中爲模型添加各種屬性。執行重複的Spring控制器代碼的最佳方法是什麼?
@RequestMapping(value = "/everypath", method = RequestMethod.GET)
public final String everyHandler(ModelMap model)
{
model = Common.addTheUsualStuffToTheModel(model);
return "everyPage";
}
到目前爲止,我已經加入這條線上所有的處理方法:
model = Common.addTheUsualStuffToTheModel(model);
不過恐怕這不符合的原則是一致的「一次編寫,到處使用」。
如何避免在每個處理程序中重複此代碼?
不錯,它看起來像使用postHandleRender方法,您甚至可以在呈現視圖之前獲取模型和添加東西,因此您不必將其添加爲請求屬性。 – digitaljoel 2011-05-18 18:02:40
對不起,我給出了錯誤的鏈接 - 它應該是'servlet',而不是'portlet'。該servlet只有3種方法,其中模型僅在postHandle方法中可用。 – Bozho 2011-05-18 18:03:53
@digitaljoel yup,補充說。 – Bozho 2011-05-18 18:04:54