剛進公司,參加了兩個項目一個是日本外包,一個是自己的產品。這個兩個系統在設計上都有一個要求,就是業務邏輯要放到Service層來完成,Action中盡量少寫東西。這一點可以理解,但是存在這樣一個問題,在service中進行業務邏輯處理時免不了要發生問題,要把這些問題顯示在頁面上,但是service層不能直接接觸到action,所以著這兩個項目中的設計方法上使吧actionmessages對象給了service。我認為這樣做很不好,這樣service對表現曾的依賴就太大了,因為ActionMessages是Struts的東西,也就是說這個serivce只能用來對Struts提供服務了。我認為應該在service曾定義好異常情況,遇到問題時拋出異常(RuntimeException),然后再表現層根據異常種類做出相應的動作。這樣就是view層依賴于serivce層,而service層可以為更多種view層提供服務了。但是這樣也有一些問題,就是如果serivce邏輯復雜,可能異常種類就非常多,這樣項目做起來也很麻煩。 但是剛進公司也沒有什么發言權,估計前輩們也知道這樣做不好,但是估計是為了項目做起來不會太麻煩吧。
大家有沒有更好的辦法?