什么是java java業(yè)務邏輯,寫在哪里比較好?
java業(yè)務邏輯,寫在哪里比較好?現(xiàn)在很多公司的開發(fā)人員都應該采用MVC架構。MVC是所謂的模型、視圖、控制器。每一層都有明確的分工。對于簡單的項目,不管nignx如何,網(wǎng)關通常都會將請求從前端發(fā)送到
java業(yè)務邏輯,寫在哪里比較好?
現(xiàn)在很多公司的開發(fā)人員都應該采用MVC架構。
MVC是所謂的模型、視圖、控制器。
每一層都有明確的分工。
對于簡單的項目,不管nignx如何,網(wǎng)關通常都會將請求從前端發(fā)送到后端,首先發(fā)送到控制器,然后發(fā)送到服務層,然后發(fā)送到Dao層。
這里的服務層就是所謂的業(yè)務層,專門負責業(yè)務處理操作,而Dao層則負責處理數(shù)據(jù)庫,將數(shù)據(jù)庫中的數(shù)據(jù)帶回服務,經(jīng)過服務處理后返回控制器層??刂破魍ㄟ^視圖解析器解析頁面,并通過瀏覽器呈現(xiàn)頁面。
基本上,我認為答案是顯而易見的。也就是說,Java業(yè)務邏輯是在服務層編寫的。
事實上,服務層涉及接口和接口實現(xiàn)。
在編寫代碼時,我們通常為控制器定義一個調用接口。
實際上,服務接口的實現(xiàn)類應該是編寫業(yè)務邏輯的地方。
當然,許多公司可能有多個服務層,例如,有一個管理層繼續(xù)對數(shù)據(jù)進行特殊的業(yè)務處理。這里只是一個簡單的概述。
每個公司的每個項目根據(jù)其自身業(yè)務可能有不同的體系結構。但本質是一樣的。
綜上所述,業(yè)務邏輯必須作為一個獨立的層來處理,這樣便于擴展和維護。記住不要在控制器中編寫所有業(yè)務邏輯。
每一層都有自己的分工,是捏合在一起的。代碼不僅冗長,而且雜亂無章。
好吧,我希望我的回答能幫助你
!如果你有興趣,可以關注一下,一起學習交流
怎么理解java中的業(yè)務邏輯層,數(shù)據(jù)訪問層,表示層?
一般意義上的三層體系結構是將整個業(yè)務應用程序分為表示層(UI)、業(yè)務邏輯層(BLL)和數(shù)據(jù)訪問層(DAL)。差異化的目的是“高內聚,低耦合”。1表示層(UI):一般來說,它是呈現(xiàn)給用戶的界面,即用戶在使用系統(tǒng)時看到的內容。(僅負責顯示)2。業(yè)務邏輯層(businesslogicallayer,BLL):針對特定問題的操作,也可以說是針對數(shù)據(jù)層和數(shù)據(jù)業(yè)務邏輯處理的操作。(關鍵是從原始數(shù)據(jù)中抽象出邏輯數(shù)據(jù))可以提供接口API級別的所有函數(shù)?!爸虚g業(yè)務層”的實際目的是結合“數(shù)據(jù)訪問層”最基本的存儲邏輯,形成一種業(yè)務規(guī)則。三。數(shù)據(jù)訪問層(DAL):該層的事務直接操作數(shù)據(jù)庫,如添加、刪除、修改和搜索數(shù)據(jù)。(關鍵在于對粒度的把握)保證“數(shù)據(jù)訪問層”功能的原子性!也就是說,最小和不可分割。數(shù)據(jù)訪問層只負責存儲或讀取數(shù)據(jù)。持久層用于固化數(shù)據(jù),如Dao層,它操作數(shù)據(jù)庫并將數(shù)據(jù)存儲到業(yè)務層,以實現(xiàn)整體業(yè)務邏輯。例如,當前臺獲得數(shù)據(jù)時,邏輯層將分析數(shù)據(jù)并驗證數(shù)據(jù)。操作性能層很好的解釋了你現(xiàn)在看到的網(wǎng)頁的一些接口,我們可以用一些HTML,JSP和swing來實現(xiàn)屬于表示層的東西。對于MVC,對應的是模型(model)視圖(view)控制器(control),這在JavaWeb中是很好理解的。在XX系統(tǒng)中,前臺頁面屬于視圖,貫穿前臺和后臺持久層的模型是model(EJB,spring),連接前臺和后臺進行邏輯操作的模型是con,控制層有兩種異常:一種是預期的,另一種是可預測的。這種異常需要捕獲并“嘗試修復”。例如,在查詢用戶信息RPC的過程中,存在異常,包括500ah和404ah。對于客戶端,基本上不需要重試,這可以通過一個明確的錯誤代碼來通知。相反,在超時的情況下,可以通知客戶端稍后再試,不同的錯誤代碼可以引導客戶端進行不同的操作。另一種情況是控制層本身不考慮。在這種情況下,盲目的嘗試/捕捉?jīng)]有多大意義。它通常在框架級進行統(tǒng)一處理,包括記錄異常信息和優(yōu)雅的返回失敗。
最后,對于try/catch的使用,我們并不意味著我們看不到異常,但我們更多地考慮捕獲后我可以做什么,以及我是否可以嘗試解決此問題。如果沒有,我們可以把它扔到上層,記錄并報警。如果我們不把這個問題想清楚,就很容易形成一個禁忌(吞下例外)。
請問JAVA三層架構、持久層、業(yè)務層、表現(xiàn)層都該怎么理解?和MVC三層模型有什么區(qū)別?
好吧,有一定的聯(lián)系。不完全一樣。首先,你應該清楚地理解MVC。M是model,V是view,C是controller,Java是三層體系結構。持久層是數(shù)據(jù)的持久操作,即數(shù)據(jù)層,即數(shù)據(jù)庫。業(yè)務層主要負責業(yè)務邏輯的處理。它負責表示層和數(shù)據(jù)層(持久層)之間的數(shù)據(jù)傳輸和邏輯處理。它接近控制器的功能,可以理解為控制器。表示層是數(shù)據(jù)顯示和用戶輸入的正確層,那么?它是視圖層。1用戶請參見視圖2。視圖—控制器用戶操作(單擊按鈕等)3??刂破鳌P?中的模型調用方法。Model—控制器將數(shù)據(jù)返回給控制器5??刂破鳌P彤斢脩艨吹礁潞蟮囊晥D時,m——模型層、V——視圖層、C——控制層和持久層通常用來封裝數(shù)據(jù)庫連接、數(shù)據(jù)查詢等操作,