controll层跳转页面_java web开发中的各种层
java后端開發(fā)前,還是應該將各種層劃分好,知道各自的作用,今天做一下總結。
Dao層、Entity層、Service層、Controller層、view層
1、Dao層(持久層、數(shù)據(jù)訪問層)
功能:只負責與數(shù)據(jù)庫的數(shù)據(jù)進行交互,dao層是在Mybatis框架下通過@MyBatisDao連接后臺代碼與數(shù)據(jù)庫的。@Repository用于標注數(shù)據(jù)訪問組件Dao層。
DAO層首先會創(chuàng)建DAO接口,然后會在配置文件中定義該接口的實現(xiàn)類,接著就可以在模塊中就可以調用DAO 的接口進行數(shù)據(jù)業(yè)務的而處理。
Dao層用來訪問數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)的持久化(把內存中的數(shù)據(jù)永久保存到硬盤中)。
個人理解:Dao層用于定義方法接口,然后在service層和serviceimpl層實現(xiàn)接口的方法,從而達到操作數(shù)據(jù)庫的目的。對數(shù)據(jù)庫進行數(shù)據(jù)持久化操作,方法語句主要是針對數(shù)據(jù)庫的,主要實現(xiàn)一些增刪改查操作,在Mybatis中的方法主要與xx.xml內相互一一映射。
Dao層內容列表UserDao.java內部代碼:
UserDao文件代碼可見,Dao文件里只是定義接口,并標注上注解@Repository
2、Controller層(控制層、action層)
功能:控制業(yè)務邏輯
Controller層負責具體的業(yè)務模塊流程的控制,controller層主要調用Service層里面的接口控制具體的業(yè)務流程,控制的配置也需要在配置文件中進行。
Service是管理具體的功能的。
Action只負責管理,而Service負責實施。
3、Service層(業(yè)務層、biz)
功能:Service層用于實現(xiàn)操作的具體方法,包含了對頁面操作模塊的代碼。
Service用于存放業(yè)務邏輯處理,不直接和數(shù)據(jù)庫打交道,為controller層提供方法接口,Service層不僅有接口也有接口的實現(xiàn)方法,接口的實現(xiàn)方法在impl文件里。
service層里面的.java文件是接口文件,讓impl文件里面的文件來實現(xiàn)impl文件目錄Service層里面的ClazzService.java文件4、Entity層(實體層、domain層)
功能:entity層用于定義實體,定義各個屬性以及各個屬性的getter()和setter()方法。
實體層,用于存放實體類,與數(shù)據(jù)庫中的屬性值基本保持一致,實現(xiàn)setter()和getter()方法。
entity層目錄entity層的clazz.java文件entity層的Student.java文件5、view層
功能:此層與Controller層聯(lián)系緊密,需要協(xié)同開發(fā)。view層主要負責前臺jsp頁面的表示 。
注:Dao層,Service層這兩個層都可以單獨開發(fā),互相的耦合度很低,完全可以獨立進行,這樣的一種模式在開發(fā)大項目的過程中尤其有優(yōu)勢。Controller,View層因為耦合度比較高,因而要結合在一起開發(fā),但是也可以看作一個整體獨立于前兩個層進行開發(fā)。這樣,在層與層之前我們只需要知道接口的定義,調用接口即可完成所需要的邏輯單元應用,一切顯得非常清晰簡單。
總結
以上是生活随笔為你收集整理的controll层跳转页面_java web开发中的各种层的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS16不支持iPhone6s,手中的
- 下一篇: 主路由器连接副路由器怎么连接·详细教程分