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)。
在編寫代碼時,我們通常為控制器定義一個調(diào)用接口。
實際上,服務接口的實現(xiàn)類應該是編寫業(yè)務邏輯的地方。
當然,許多公司可能有多個服務層,例如,有一個管理層繼續(xù)對數(shù)據(jù)進行特殊的業(yè)務處理。這里只是一個簡單的概述。
每個公司的每個項目根據(jù)其自身業(yè)務可能有不同的體系結構。但本質是一樣的。
綜上所述,業(yè)務邏輯必須作為一個獨立的層來處理,這樣便于擴展和維護。記住不要在控制器中編寫所有業(yè)務邏輯。
每一層都有自己的分工,是捏合在一起的。代碼不僅冗長,而且雜亂無章。
好吧,我希望我的回答能幫助你
!如果你有興趣,可以關注一下,一起學習交流
Java Web開發(fā)中,業(yè)務邏輯寫在SQL里好還是代碼里好呢?有什么建議嗎?
目前,大多數(shù)研發(fā)團隊都要求用代碼實現(xiàn)業(yè)務邏輯,SQL操作往往是最基本的操作。用SQL表示業(yè)務邏輯,即用存儲過程表示業(yè)務邏輯,是一種傳統(tǒng)的開發(fā)方案。
在C/s時代,很多邏輯都是通過SQL來實現(xiàn)的,主要是因為業(yè)務規(guī)模和部署方式。在早期的C/s編程時代,它通常是在非分布式環(huán)境中開發(fā)的,在大多數(shù)情況下,它不需要考慮可移植性問題。這時,使用SQL來完成業(yè)務邏輯就更方便了。
使用存儲過程來完成業(yè)務邏輯的最大優(yōu)點是性能會更好,但這也取決于業(yè)務的大小。如果業(yè)務規(guī)模過大,業(yè)績會更差。早期的數(shù)據(jù)存儲規(guī)模比較小,所以使用存儲過程比較方便。
當前網(wǎng)絡發(fā)展已進入大數(shù)據(jù)、云計算時代,業(yè)務類型和業(yè)務規(guī)模發(fā)生了巨大變化。特別是隨著NoSQL數(shù)據(jù)庫在大數(shù)據(jù)時代的廣泛應用,使用SQL語句來完成業(yè)務邏輯的場景越來越少。而且,目前大多數(shù)程序都是分布式的,使用SQL存儲過程處理業(yè)務邏輯非常麻煩,會導致整個項目的可移植性和可讀性嚴重下降。
目前,在傳統(tǒng)企業(yè)的開發(fā)團隊中,使用SQL來處理業(yè)務邏輯是相當普遍的,因為傳統(tǒng)企業(yè)的數(shù)據(jù)庫大多還是關系數(shù)據(jù)庫,沒有可移植性的要求。這種固定的場景開發(fā)可以使用SQL來處理業(yè)務邏輯。在將來,使用SQL處理業(yè)務邏輯時會出現(xiàn)一些應用場景,因此有必要學習如何編寫存儲過程。
為什么有人說c/c 近十年來一直在編程語言榜單前三,但有人覺得流行程度不如Java?
列表的基礎是什么?有幾種情況。一是采取問卷調(diào)查的形式。樣本量小。幾種通用語言,如C、C和Java,肯定會占據(jù)前三名。由于樣本量不夠,彼此的排名并不顯著。
還有一種基于githip代碼更新次數(shù)的統(tǒng)計,比較科學。我們可以看到一些新興語言,如pathyo和JavaScript,已經(jīng)列出。但C,C還在。為什么?
這是因為許多超級項目都是由他們編寫的,例如windows和Linux操作系統(tǒng)。代碼量上億行,維護更新量也很大。可以說尾巴太大了。饑餓的駱駝比馬大。