本文目錄一覽:
- 1、Java的三大框架是什麼?
- 2、JAVA的三層架構是什麼樣的?
- 3、三層架構的三層具體作用
- 4、Java的三層架構都有些什麼?
- 5、JAVA中「Action層, Service層 ,modle層和Dao層」的功能區分是什麼?
- 6、請問JAVA三層架構,持久層,業務層,表現層,都該怎麼理解?和MVC三層模型有什麼
Java的三大框架是什麼?
java三大框架是:
1、Struts
為了解決這些問題,出現了Struts框架,它是一個完美的MVC實現,它有一個中央控制類(一個Servlet),針對不同的業務,我們需要一個Action類負責頁面跳轉和後台邏輯運算,一個或幾個JSP頁面負責數據的輸入和輸出顯示,還有一個Form類負責傳遞Action和JSP中間的數據。JSP中可以使用Struts框架提供的一組標籤,就像使用HTML標籤一樣簡單,但是可以完成非常複雜的邏輯。從此JSP頁面中不需要出現一行包圍的Java代碼了。
可是所有的運算邏輯都放在Struts的Action里將使得Action類復用度低和邏輯混亂,所以通常人們會把整個Web應用程序分為三層,Struts負責顯示層,它調用業務層完成運算邏輯,業務層再調用持久層完成資料庫的讀寫。
使用JDBC連接來讀寫資料庫,我們最常見的就是打開資料庫連接、使用複雜的SQL語句進行讀寫、關閉連接,獲得的數據又需要轉換或封裝後往外傳,這是一個非常煩瑣的過程。
2、Hibernate
這時出現了Hibernate框架,它需要你創建一系列的持久化類,每個類的屬性都可以簡單的看做和一張資料庫表的屬性一一對應,當然也可以實現關係資料庫的各種表件關聯的對應。當我們需要相關操作是,不用再關注資料庫表。我們不用再去一行行的查詢資料庫,只需要持久化類就可以完成增刪改查的功能。使我們的軟體開發真正面向對象,而不是面向混亂的代碼。我的感受是,使用Hibernate比JDBC方式減少了80%的編程量。
現在我們有三個層了,可是每層之間的調用是怎樣的呢?比如顯示層的Struts需要調用一個業務類,就需要new一個業務類出來,然後使用;業務層需要調用持久層的類,也需要new一個持久層類出來用。通過這種new的方式互相調用就是軟體開發中最糟糕設計的體現。簡單的說,就是調用者依賴被調用者,它們之間形成了強耦合,如果我想在其他地方復用某個類,則這個類依賴的其他類也需要包含。程序就變得很混亂,每個類互相依賴互相調用,復用度極低。如果一個類做了修改,則依賴它的很多類都會受到牽連。 為此,出現Spring框架。
3、Spring
Spring的作用就是完全解耦類之間的依賴關係,一個類如果要依賴什麼,那就是一個介面。至於如何實現這個介面,這都不重要了。只要拿到一個實現了這個介面的類,就可以輕鬆的通過xml配置文件把實現類注射到調用介面的那個類里。所有類之間的這種依賴關係就完全通過配置文件的方式替代了。所以Spring框架最核心的就是所謂的依賴注射和控制反轉。
現在的結構是,Struts負責顯示層,Hibernate負責持久層,Spring負責中間的業務層,這個結構是目前國內最流行的Java Web應用程序架構了。另外,由於Spring使用的依賴注射以及AOP(面向方面編程),所以它的這種內部模式非常優秀,以至於Spring自己也實現了一個使用依賴注射的MVC框架,叫做Spring MVC,同時為了很好的處理事物,Spring集成了Hibernate,使事物管理從Hibernate的持久層提升到了業務層,使用更加方便和強大。
Struts框架是2000年就開始起步了,技術相當成熟,目前全球Java開發中Struts框架是顯示層技術中當之無愧的王者。它擁有大量的用戶群和很好的開發團隊。這也是國內大部分Java軟體公司對新進員工的基本要求。
JAVA的三層架構是什麼樣的?
三層架構(3-tier application) 通常意義上的三層架構就是將整個業務應用劃分為:表現層(UI)、業務邏輯層(BLL)、數據訪問層(DAL)。瑭錦TANJURD解釋區分層次的目的即為了「高內聚,低耦合」的思想。1、表現層(UI):通俗講就是展現給用戶的界面,即用戶在使用一個系統的時候他的所見所得。2、業務邏輯層(BLL):針對具體問題的操作,也可以說是對數據層的操作,對數據業務邏輯處理。3、數據訪問層(DAL):該層所做事務直接操作資料庫,針對數據的增添、刪除、修改、更新、查找等。
三層架構的三層具體作用
三層結構包含:表示層(USL),業務邏輯層(BLL),數據訪問層(DAL)
1:數據數據訪問層:主要是對原始數據(資料庫或者文本文件等存放數據的形式)的操作層,而不
是指原始數據,也就是說,是對數據的操作,而不是資料庫,具體為業務邏輯層或表示層提供數據服務.
2:業務邏輯層:主要是針對具體的問題的操作,也可以理解成對數據層的操作,對數據業務邏
輯處理,如果說數據層是積木,那邏輯層就是對這些積木的搭建。
3:表示層:主要表示WEB方式,也可以表示成WINFORM方式,WEB方式也可以表現成
:aspx, 如果邏輯層相當強大和完善,無論表現層如何定義和更改,邏輯層都能完善地
提供服務。
Java的三層架構都有些什麼?
三層架構是一個分層式的軟體體系架構設計,它可適用於任何一個項目。MVC是一個設計模式,它是根據項目的具體需求來決定是否適用於該項目。
那麼架構跟設計模式有什麼區別呢?我們從接手一個項目開始,首先,我們需要進行架構設計,一般我們採用的就是分層式的架構設計,即我們的三層架構。
然後,在確定了架構以後,我們再根據項目的具體需求去考慮是否需要應用一些設計模式,比如是否應用我們的MVC模式,抽象工廠模式等等。(在這裡我們看出,MVC與三層架構不是一個等級的,而與抽象工廠等設計模式才是一路的)
最後,確定了模式以後,就是我們的一些具體的實現了。(當然一個項目不僅僅考慮這些問題,我只是為了說明兩者的區別,將其他問題已省略)
其次,它倆劃分的層次不同。
三層架構將整個項目劃分為:表現層(UI)、業務邏輯層(BLL)、數據訪問層(DAL)。MVC即Model(模型),View(視圖),Controller(控制)。
JAVA中「Action層, Service層 ,modle層和Dao層」的功能區分是什麼?
modle層就是對應的資料庫表的實體類。
Dao層是使用了Hibernate連接資料庫、操作資料庫(增刪改查)。
Service層:引用對應的Dao資料庫操作,在這裡可以編寫自己需要的代碼(比如簡單的判斷)。
Action層:引用對應的Service層,在這裡結合Struts的配置文件,跳轉到指定的頁面,當然也能接受頁面傳遞的請求數據,也可以做些計算處理。
補充:
一般java都是三層架構數據訪問層(dao),業務邏輯層(biz 或者services),界面層(ui) action 是業務層的一部分,是一個管理器 (總開關),取出前台界面的數據,調用biz方法,轉發到下一個action或者頁面)。
模型層(model)一般是實體對象(把現實的的事物變成java中的對象),作用是一暫時存儲數據方便持久化(存入資料庫或者寫入文件)作為一個包裹封裝一些數據來在不同的層以及各種java對象中使用。
dao是數據訪問層 就是用來訪問資料庫實現數據的持久化(把內存中的數據永久保存到硬碟中)。
請問JAVA三層架構,持久層,業務層,表現層,都該怎麼理解?和MVC三層模型有什麼
這個嘛,有一定的聯繫啦,也並不是完全是一樣的啦,你首先把mvc理解清楚吧,M是MODEL(模型),V是view(視圖), C是Controller(控制器),而java三層架構,持久層即是數據的持久化操作,就是數據層啦,即是資料庫啦,業務層主要是業務邏輯的處理,負責表示層與數據層(持久層)的數據的傳遞和邏輯處理,就當很接近控制器的功能啦,就可以理解為控制器啦,表示層即是對數據的展示與用戶的輸入,所以呢?就是視圖層啦 1. 用戶看到view2. view ——————————》 controller用戶操作(點擊按鈕等)3. controller——————》model調用model中方法3. model ——————》 controller返回數據到controller5. controller——————————》 view傳數據到view,更新view6.用戶看到更新後的view M——模型層,V——視圖層,C——控制層,持久層——通常用於封裝資料庫連接、數據查詢等操作,
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/293714.html