爲什麼要用Service接口?是讓表示層不依賴於業務層的具體實現。爲什麼要用DAO接口?是讓業務層不依賴於持久層的具體實現。舉個例子,用DAO接口,那麼持久層用Hibernate,還是用iBatis,還是 JDBC,隨時可以替換,不用修改業務層Service類的代碼。
不用接口的話,假如修改了dao中的代碼,因爲service引用了dao中的類,那麼也要改變service裏面的代碼,改完之後要重新編譯運行,當項目比較大的時候,編譯和運行很浪費時間的,而且會產生一些意外,本來只要編譯dao中的代碼,現在不光要編譯dao中的代碼,還要編譯service。因爲你不用接口,間接着action裏的代碼也要改,因爲action中引用了service中的類,到最後,就變成了,牽一髮而動全身。
爲什麼要寫Imp實現類呢,是因爲後期維護的時候如果要修改功能只需要修改實現類裏面的那個代碼,而不需要修改其他包的代碼。
爲什麼dao層和service層要寫接口和實現類
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Spring——第一個Spring程序
Ga_Lip
2020-07-08 12:20:23
MyBatis—— 一對多查詢
Ga_Lip
2020-07-08 12:20:23
ssm根據pdf模板導出pdf
LVAmber
2020-07-08 12:00:10
rg.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no
PM马小马
2020-07-07 02:51:58
小程序開發筆記(三):SSM框架實現微信小程序的圖片上傳
healerwen
2020-07-06 13:46:15
@ResponseBody java.lang.IllegalArgumentException: No converter found for return value of type:class
冰零0o
2020-07-05 23:02:51
SSM框架——常見問題及解決方案(1)
8-0416
2020-07-05 06:36:20
SSM框架——常見問題及解決方案(2)
8-0416
2020-07-05 06:36:20
ssm框架 自動生成實體類、DAO接口和Mapping映射文件
程阳
2020-07-02 16:13:42
非註解和註解的處理器映射器、處理器適配器
大力海棠
2020-07-02 12:37:18
Bean Validation數據校驗和分組校驗
大力海棠
2020-07-02 12:37:07
URL請求映射與Controller處理器參數綁定
大力海棠
2020-07-02 12:37:07
Spring MVC工作流與配置-部署Tomcat服務器上運行
大力海棠
2020-07-02 12:37:07
Validator接口校驗與全局異常處理器
大力海棠
2020-07-02 12:37:07