Action層與Service層有什么區別?
????本人是個初學者,只是剛在JAVA的路上入門,之前剛在別的網站上學過DAO層(數據層)與Service層(業務層)的JDBC使用:
定義一個DatabaseConnection類負責數據庫的連接與關閉;
定義Goodess類;
? ? 3.定義一個公用的接口(IDAO)里面定義CRUD的方法;
????4.定義一個DAO層接口(IGoddessDAO)來繼承IDAO,這個接口作為數據層的操作標準,最終交由業務層調用;
????5.定義一個子類(GoddessDAOImpl)實現這個DAO層的接口;
????6.定義一個工廠類(DAOFactory)來獲取這個子類的對象;
????7.接下來是業務層,Service層也定義有一個有CRUD方法的接口(IGoddessService);
????8.定義一個業務層子類(GoddessServiceImpl)實現這個接口,這個子類很像這個老師講的Action層的類,兩者的意思和實現方式基本是一樣的,都是通過這個類來調用DAO層的方法;
????9.定義一個Service層的工廠類(ServiceFactory)獲取子類對象。????
????10.最后測試時只需要通過Service層工廠類返回的對象調用Service層的方法即可,完全不用管DAO層方法的具體實現。
????我覺得這種設計邏輯很好理解,修改也挺簡單的。由于本人還沒有學習過框架,因此不知道MVC框架是不是就是像這個老師講的這樣,我所說的這種DAO層與Service層也可以使用在MVC框架里嗎?這個Action層到底與Service層有什么區別呢?它的功能是什么?我所說的這種是有實際應用價值的嗎?希望有老師和前輩來解答下本人的疑惑,不勝感謝!
2022-03-27
我也是找不到用DOM1級吧,DOM2級IE8不支持。
2016-12-27
你學完JavaEE就知道了,就是JavaEE的三個框架而已。
2016-12-27
dao層和service層都可以用在MVC里面,這么用是為了降低耦合性和提高代碼的重用性,在框架中方便通過調用接口去執行子類的具體方法來實現具體的內容,Action和Service的區別在于Service定義基本方法,而Action是調用基本方法去實現具體行為。舉個例子來說比如你吃飯,在Service中可以定義是用筷子和用叉子,Action中是具體的去吃中餐還是西餐,這時候就需要在Service中選擇使用哪種基本方法,Service的代碼復用性比較高。其實最好的例子你去學一下MVC的框架比如Struts,Struts2看了之后你就會很好地理解了為什么這么分了,不是這么做也可以完成任務,但是這么分在項目中用起來真的很方便。我是個學生也正在學,有什么不對的地方,你來打我?。?=)/