我知道,理論上可以把他想的方法是什麼,但我想知道,如果方法不應該執行其他任何邏輯不是定義下一個字符串應該加載的頁面。什麼是「允許」的必然動作/結果的方法
例如,在那裏將值放在閃存範圍中是否在概念上是正確的?
我知道,理論上可以把他想的方法是什麼,但我想知道,如果方法不應該執行其他任何邏輯不是定義下一個字符串應該加載的頁面。什麼是「允許」的必然動作/結果的方法
例如,在那裏將值放在閃存範圍中是否在概念上是正確的?
綁定到動作的方法充當MVC黑社會的「控制器」部分。所以我會說是的,這是一個適當的地方,通過你的應用程序來處理有關工作流的事情(比如設置flash範圍中的值)。
你或許應該從把業務邏輯避免出現 - 這些事情最好留給獨立的業務類。通過這種方式,您可以很好地分離問題,使整個事情在將來更易於理解和更改。
我不能說什麼是允許的,但是當我實施「提交」按鈕的設計模式,我總是遵循的是:
請在所有的表單參數是有疑問的驗證通過。對於任何會產生問題的情況,請創建適當的對象。
如果有任何FacesMessage對象已創建,則返回null。
調用業務邏輯應用數據。恰當地說,這些應該是不同包裝中的不同對象。如果您正在創建或編輯記錄,則在此完成。我的應用程序都使用JPA作爲後端,所以EntityManager調用在那裏完成。
返回將導航到下一步(有時,實際上也是null,取決於表單邏輯的工作方式)的字符串。
我已經無數次地使用了這種模式。