java中有DAO、服務、DTO、控制器、實體層。我進入了 DTO,我們創建了數據庫表,因為實體是一個POJO類??刂破魇俏覀兪褂?jersey 或一些 spring 控制器(RequestMapping...)編寫 Web 服務調用的地方。但我不了解服務層和 DAO 層。在 DAO 層,我們編寫了訪問數據庫的內容。在服務層,我們編寫有關 Web 服務的實現。那么,我們是否在服務層使用 dao 對象。我想知道關于這個服務層和DAO層的簡要想法。
3 回答

FFIVE
TA貢獻1797條經驗 獲得超6個贊
這些是不同的邏輯實體:
DAO 層存在的目的只是提供與 DB 的連接(這就是為什么 DAO = 數據訪問對象)并在其中執行 SQL 命令(例如使用 Hibernate)。
服務層在從數據庫和客戶端發送的原始數據之間提供邏輯。在服務中,您調用 DAO 層來提供對象。在服務級別,您通常執行與業務相關的規則、驗證、授權等。
主要思想是不要讓端點 ( @Controller
, @RestController
) 直接與數據庫層一起操作。

湖上湖
TA貢獻2003條經驗 獲得超2個贊
聽起來你的想法是正確的。
DAO 是實際連接到數據庫并保存/檢索數據的部分,服務層包含周圍的業務邏輯。DAO 通常從服務層調用。
好的做法是將盡可能少的業務邏輯放在 DAO 中,而將其留給服務層。
添加回答
舉報
0/150
提交
取消