我繼承,其中,以減少(我猜這是什麼原因)Action類的數量,大量的動作一個Action類中映射一個支柱1個web應用程序,像:處理數百個動作在Struts2
public XXXAction() throws Exception{
actions = new Hashtable();
actions.put("/XXX/main/load", new Integer(0));
actions.put("/XXX/main/save", new Integer(1));
......
}
public ActionForward executeAction(ActionMapping mapping, ActionForm form, HttpServletRequest req, HttpServletResponse res)
throws IOException, ServletException
{
try
{
switch (((Integer) actions.get(action)).intValue())
{
case 0:
loadXXXMain();
break;
case 1:
.......
等等(在某些動作類中,我幾乎有一百個這些小動作)。
現在我期待在遷移到Struts2的,我希望有一個更清潔,更好的解決方案來處理這個問題,也許不必爲每個小班的一個Action類。你有什麼建議?我不喜歡這個解決辦法,但我不喜歡有數百個Action類的....
謝謝! 羅伯託
喜, 所以你覺得唯一的辦法是減少的正確的行動多少?我會說,我可以減少它們,但不是那麼多...其中大多數都是Ajax調用... – Roberto 2010-03-22 10:12:25
我建議幾個這些Action類有一個單一的方法。有可能將幾種方法合併成一個類,並減少類的數量。如果你真的需要所有這些電話,那麼你需要他們。 – duffymo 2010-03-22 12:29:33