精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

搞懂 JavaEE 分層模型,這篇就夠了!Web 服務器 + 核心框架 + 交互邏輯全解析

開發 前端
Tomcat 是 Apache 軟件基金會開發的開源 Web 服務器,也是 Java Web 應用中最廣泛使用的 Servlet 容器之一。它支持 Java Servlet 和 JavaServer Pages (JSP) 技術,適用于傳統 Java Web 應用的開發和部署。Tomcat 以其穩定性和社區支持而聞名,適合中小規模企業級應用 。

1.1 JavaEE應用的分層模型

  • 表現層:也就是常說的WEB層。主要負責接收客戶端請求,向客戶端響應結果。表現層也細分為:展示層和控制層。

展示層:負責展示結果。由一系列JQuery、Angular、Vue等各種前端框架組成。

控制層:負責接收請求和攔截非法請求。由一系列JSP頁面、FreeMarker頁面組成。

  • 業務層:由一系列業務邏輯對象組成,這些業務邏輯對象實現了Domain Object方法及其他組件實現的業務邏輯方法。

Domain Object(領域對象):此層由一系列POJO對象組成,用于實現業務邏輯方法。

事務控制:業務層經常需要確保事務的一致性。

  • 持久層:主要負責數據的持久化,數據層通常包括數據庫和數據訪問層。

數據庫:指具體的數據庫軟件,例如mysql、Oracle等。通常是利用數據庫驅動以及數據庫連接池技術實現與數據庫的連接最原始的當然就是JDBC,后續衍生出來的JPA、Mybatis以及Mybatis-plus都是對于JDBC的封裝,簡化開發。

數據訪問層:也就是DAO(Data Access Object),用于編寫持久層接口,用于將實體對象轉換為業務對象。

圖片圖片

交互邏輯:

表現層交由用戶進行控制,用戶操作表現層,將請求發送至控制層

控制層調用業務層,處理用戶請求

業務層根據業務的實際需求,調用持久層將用戶操作存儲在數據庫,或從數據庫取出數據

持久層返回操作結果給業務層

業務層返回持久層結果給控制層

控制層進行一定的數據封裝、渲染,返回給表現層

1.2 表現層

表現層主要需要解決的問題是展示層和控制層的如何通信。

  • 展示層不管是采用JSP還是VUE,都需要將用戶的請求發送到控制層。
  • 控制層不管是用Java,還是Python,也都需要將響應結果反饋給展示層。

1.2.1 Web服務器

Web服務器:Web服務器提供了各式各樣的功能,側重點也不也一樣,Java中常用的三種Web服務器就是Tomcat、Undertow、Jetty

1)Tomcat

Tomcat 是 Apache 軟件基金會開發的開源 Web 服務器,也是 Java Web 應用中最廣泛使用的 Servlet 容器之一。它支持 Java Servlet 和 JavaServer Pages (JSP) 技術,適用于傳統 Java Web 應用的開發和部署。Tomcat 以其穩定性和社區支持而聞名,適合中小規模企業級應用 。

Tomcat 的主要特點包括:

  • 穩定性高:經過長期發展和廣泛使用,Tomcat 在穩定性和可靠性方面表現優異。
  • 支持標準 Java Web 技術棧:支持 Servlet、JSP、JSTL 等標準技術。
  • 社區支持廣泛:擁有龐大的用戶社區和豐富的文檔資源。

2)Jetty

Jetty 是一個輕量級、高性能的 Java Web 容器,由 Eclipse 基金會維護。它支持 Servlet 3.1 和 WebSocket,適用于高性能和分布式系統。Jetty 以其輕量級和快速啟動的特點而受到青睞,適合嵌入式應用和微服務架構 。

Jetty 的主要特點包括:

  • 輕量級:啟動快、內存占用低,適合嵌入式應用和微服務。
  • 高性能:支持異步非阻塞 I/O,適合高并發場景。
  • 靈活性:支持按需加載組件,便于擴展和定制。

3)Undertow

Undertow 是 Red Hat 開發的高性能 Web 服務器,基于 NIO 實現,支持異步非阻塞 I/O 和 HTTP/2。它被廣泛用于 WildFly 應用服務器,并且在 Spring Boot 中作為可選的內嵌服務器。Undertow 以其高性能和靈活性而受到關注 。

Undertow 的主要特點包括:

  • 高性能:在高負載下表現優異,吞吐量高,適合高并發場景。
  • 靈活性:支持異步非阻塞 I/O,適合實時通信和微服務架構。
  • 輕量級:配置簡單,易于集成到 Spring Boot 等框架中。

總結

  • Tomcat:適合傳統 Java Web 應用,穩定可靠,社區支持廣泛。
  • Jetty:適合輕量級、高性能和嵌入式應用,啟動快、內存占用低。
  • Undertow:適合高性能、高并發場景,支持異步非阻塞 I/O,適合微服務和實時通信。

其他服務器

  • Jboss:是一個遵從了javaEE規范的、開源的、純EJB服務器,它支持所有的javaEE規范
  • GlassFish:由Oracle公司開發的一款JavaWeb服務器,是一款強健的商業服務器,達到產品級質量
  • Resin:自身采用Java開發,是目前最快的JSP、Servlet運行平臺,支持EJB,商用收費,個人免費
  • WebLogic:是Oracle公司的產品,目前應用最廣泛的Web服務器,支持JavaEE規范,適合大型項目(收費,大公司用得比較多)
  • Nginx服務器:負載均衡服務器,主要用于反向代理,詳細介紹參考:Nginx
  • IIS(Internet Information Services)服務器:微軟公司開發的WEB服務器,允許托管網站和Web應用,并提供了一系列用于Web服務器管理的功能

1.2.2 JSP、Servlet、JavaBean

JSP是動態Web,HTML是靜態Web。

JSP和Servlet底層實現原理一致,**JSP必須被Web服務器編譯為Servlet**,才能使用,所以真正在Web服務器中運行的是Servlet。

JavaBean是用于數據傳輸的,請求/響應攜帶的數據。

Tomcat版本

Servlet/JSP版本

JavaEE版本

運行環境

4.1

2.3/1.2

1.3

JDK1.3

5.0

2.4/2.0

1.4

JDK1.4

5.5/6.0

2.5/2.1

5.0

JDK5.0

7.0

3.0/2.2

6.0

JDK6.0

8.0

3.1/2.3

7.0

JDK7.0

Servlet在2.5版本及之前都是采用的xml配置的方式,在3.0之后就是注解的方式實現了 Servlet在4.x中提供了異步請求、注解、增強的Servlet API、非阻塞IO。

1.2.3 靜態web和動態web

1.2.3.1 靜態web

html\htm網頁,通過直接獲取的方式,進行頁面展示,所有的用戶看到的都是同一個頁面 css、js、txt mp4 jpg等都算是靜態web資源。

圖片圖片

靜態web存在的缺點:

  • Web頁面無法動態更新,所有用戶看到的都是同一個頁面。
  • 無法和數據庫交互(數據無法持久化,用戶無法交互)。

1.2.3.2 動態web

jsp/sevlet動態資源,可以與數據庫進行交互,實現動態頁面:

ASP:微軟的產品,底層是在HTML中嵌入VB的腳本,ASP+COM,導致在頁面中包含太多業務邏輯代碼。

PHP:開發速度很快,功能很強大,跨平臺,代碼很簡單,但是無法承載大訪問量的情況。

JSP:本質是Servlet,是sun公司開發的B/S架構,可以承載三高(高性能、高可用、高并發)問題,語法像ASP。

圖片圖片

動態Web的缺點:假如服務器的動態web資源出現錯誤,我們需要重新編譯后臺程序,重新發布。

1.3 業務層

業務層的內容其實特別多,很多技術其實都是在業務層出現問題后產生的一系列擴展。聊這些內容勢必就會帶來一些場景問題,這里我們淺淺了解一下,方便后續對Spring設計的理解。

假設現在有一個新增用戶的業務,需要更新兩個表,sys_user表和sys_user_role表,這是一個很常見的業務,那么現在假設sys_user更新成功,sys_user_role更新失敗,會出現什么問題?

實際就是創建用戶,界面提示新增失敗,但是查詢時可以查詢到這個用戶,這個用戶無法登錄【因為沒有角色權限】,這就是很典型的事務問題,放到金融行業,直接爆炸!!!

所以說像Spring自帶的日志模塊、事務模塊以及消息模塊等,都是服務于業務的。

1.4 持久層

說到持久層,不管是古早的JPA還是現在的Mybatis、Mybatis-plus都是基于JDBC,全稱為Java DataBase Connectivity(Java數據庫連接器)。

其實我們所說的JDBC只是規范,并非具體實現,具體實現還是依靠各大數據庫廠商提供的驅動。

下圖就是最原始的JDBC與上下游交互的交互邏輯。

JDBC架構.svgJDBC架構.svg

JDBC開發步驟:

  1. 引入數據庫的驅動jar包
<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>8.0.27</version>
</dependency>
  1. 獲取連接

DriverManager獲取連接

Class.forName("com.mysql.cj.jdbc.Driver");//注冊驅動
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "123456";
Connection con = DriverManager.getConnection(url, username, password);
  1. 獲取 Statement

用過獲取的連接,得到Statement

Statement stmt = con.createStatement();
  1. 執行sql
// 定義 sql 插入語句
String sql = "insert into person(id,name,gender,birthday)values(REPLACE(uuid(),'-',''),'測試人員','1','1997-09-23')";
// 定義 sql 更新語句
String sql = "update person t set t.gender = '2' where t.id='07382329976811f09ffbfa163e3e8fb6'";
// 定義 sql 刪除語句
String sql = "delete person t where t.id='07382329976811f09ffbfa163e3e8fb6'";

// 創建 sql 執行對象
stmt = conn.createStatement();   
// 執行查詢 sql 并返回更新條數
int count = stmt.executeUpdate(sql);
String sql = "select * from person";
ResultSet rs = stmt.executeQuery(sql);

后面為了簡化開發,衍生出來很多數據庫框架,詳細介紹就參考Spring Data JPA、MyBatis、Mybatis-plus。

責任編輯:武曉燕 來源: 愛編程的杰尼龜
相關推薦

2020-09-10 09:31:34

Nginx HTTP代理服務器

2020-09-09 12:55:28

Nginx高并發性能

2021-09-10 13:06:45

HDFS底層Hadoop

2025-11-10 01:35:00

2019-07-31 15:56:57

Jvm虛擬機Content

2024-07-05 11:01:13

2011-02-22 15:51:41

2018-09-26 11:02:46

微服務架構組件

2025-02-14 08:53:24

2022-03-13 09:31:43

MQ消息隊列ActiveMQ

2021-09-30 07:59:06

zookeeper一致性算法CAP

2019-08-16 09:41:56

UDP協議TCP

2020-11-06 10:01:06

Nginx

2020-02-24 19:28:23

Rust語言Web框架應用領域

2021-10-13 16:54:22

IPv6網絡5G

2021-09-02 07:00:32

鑒權Web 應用Cookie-sess

2015-11-02 09:49:04

Android屏幕適配官方指導

2019-10-31 09:48:53

MySQL數據庫事務

2021-05-07 07:52:51

Java并發編程

2022-03-29 08:23:56

項目數據SIEM
點贊
收藏

51CTO技術棧公眾號

国产又黄又爽视频| 少妇一级黄色片| 中文在线资源| 中文字幕一区二区三区视频| 92国产精品久久久久首页 | а√中文在线资源库| 亚洲精品精选| 日韩中文字幕视频| 日本五十肥熟交尾| 欧美一级做a| 午夜不卡在线视频| 中文字幕精品一区日韩| 天堂在线中文字幕| 国模大尺度一区二区三区| 26uuu日韩精品一区二区| 91麻豆制片厂| 噜噜噜天天躁狠狠躁夜夜精品| 欧美日韩亚洲综合一区 | 丝袜美腿亚洲色图| 欧美黄色片视频| 国产精品美女高潮无套| 精品国产一区二区三区成人影院 | 婷婷亚洲一区二区三区| 国产一区二区免费看| 欧美一区视频在线| 久久网免费视频| 欧美电影免费播放| 亚洲精品日韩丝袜精品| 国产情侣久久久久aⅴ免费| www.26天天久久天堂| 欧美日韩一区二区在线| 免费的一级黄色片| www在线视频| 中文字幕av一区二区三区免费看 | 日韩免费不卡av| 精品无码免费视频| 亚洲精品成人无限看| 中文字幕精品一区久久久久| 熟女高潮一区二区三区| 成人中文字幕视频| 欧美一区二区三区成人| 99热一区二区| 久久av影院| 在线精品视频一区二区| 国产熟女高潮视频| 中文字幕一区久| 欧美日韩视频在线| 鲁一鲁一鲁一鲁一色| 欧美黑人猛交| 亚洲永久免费视频| 999一区二区三区| 在线免费观看a视频| 亚洲人精品一区| 青青草原国产免费| 麻豆网在线观看| 1024亚洲合集| 精品国产三级a∨在线| 日本综合在线| 亚洲欧美日韩国产一区二区三区| 永久久久久久| 黄色精品在线观看| 亚洲精品亚洲人成人网| 香港三级日本三级a视频| h视频在线免费观看| 亚洲精品国产一区二区三区四区在线| 中文字幕在线乱| 污网站在线免费看| 亚洲va欧美va人人爽午夜| 日韩av新片网| 成人动漫一区| 欧美日韩国产中文| 亚洲精品一二三四| 六月丁香久久丫| 国产亚洲a∨片在线观看| 狂野欧美性猛交| 欧美国产先锋| 97视频在线免费观看| 无码人妻精品一区二区| 久久福利资源站| av蓝导航精品导航| 四虎精品在线| 国产精品久久久久久久久免费相片 | 欧美精品18videos性欧| 黑人一级大毛片| 日韩成人一级片| 91系列在线观看| 神马午夜电影一区二区三区在线观看| 久久久久久久一区| 中文字幕一区二区三区精彩视频 | 国精产品一品二品国精品69xx | 日韩国产欧美在线播放| 成人网在线免费观看| 性做久久久久久久| 久久影院午夜片一区| 亚洲春色综合另类校园电影| 图片区小说区亚洲| 色香蕉久久蜜桃| 91大神免费观看| 日韩超碰人人爽人人做人人添| 有码中文亚洲精品| 国产午夜视频在线| 男人的j进女人的j一区| 国产伦视频一区二区三区| 成人精品一区二区三区免费| 亚洲国产成人精品视频| 天天干天天操天天玩| 成人影院中文字幕| 色噜噜国产精品视频一区二区| 日韩福利片在线观看| 日本视频中文字幕一区二区三区| av一区观看| 伊人免费在线| 日韩欧美在线第一页| 在线观看av一区| 国产一区二区三区精彩视频| 91视频成人| 亚洲欧美成人网| 男女免费视频网站| 蜜臀精品久久久久久蜜臀| 国内一区二区在线视频观看| 欧美成人xxx| 色综合色综合色综合色综合色综合| 国产精品嫩草影视| 国产一区二区区别| 91国产精品91| 亚洲成人av综合| 中文字幕亚洲精品在线观看| 无码少妇一区二区三区芒果| 欧美调教视频| 久久久久久国产| 国产人妖一区二区| 亚洲欧洲另类国产综合| 啊啊啊国产视频| 国产成人调教视频在线观看| 91国产视频在线播放| 99热这里只有精品在线| 中文字幕一区二区不卡| 欧美三级理论片| 首页亚洲中字| 4438全国成人免费| 五月婷婷久久久| 亚洲成人免费在线| 最新版天堂资源在线| 亚洲私人影院| 国产午夜精品在线| 超碰在线公开| 日韩精品在线私人| 91精品国产乱码久久久张津瑜| 不卡的av在线播放| 老太脱裤子让老头玩xxxxx| 99精品国产高清一区二区麻豆| 九九精品在线观看| 丰满人妻一区二区三区无码av| 悠悠色在线精品| 亚洲熟女乱综合一区二区| 欧美1区3d| 国产v亚洲v天堂无码| gogo久久| 亚洲欧美日韩一区二区在线 | 国精产品99永久一区一区| 超碰在线资源| 日韩高清人体午夜| 免费无码国产精品| 国产精品免费网站在线观看| 日韩不卡一二三| 性xxxx欧美老肥妇牲乱| 成人动漫在线观看视频| 91老司机福利在线| 亚洲精品视频在线播放| 波多野结衣在线观看视频| 国产精品麻豆一区二区| 日韩av一卡二卡三卡| 欧美激情aⅴ一区二区三区| 国产伦理久久久| 日韩网站中文字幕| 久久精品99久久香蕉国产色戒| 国产www免费观看| 天天影视网天天综合色在线播放| 国产艳俗歌舞表演hd| 男女性色大片免费观看一区二区| 黄色免费高清视频| 国产精品毛片视频| 国产激情999| 尤物在线网址| 亚洲欧洲国产一区| 国产乱子伦精品无码码专区| 午夜精品久久久久久久| 国产极品视频在线观看| 国产成人鲁色资源国产91色综| 欧美aⅴ在线观看| 久久久久蜜桃| 明星裸体视频一区二区| 国产精品亚洲欧美日韩一区在线| 91av免费观看91av精品在线| 在线观看av黄网站永久| 亚洲黄色在线看| 91精品国自产| 婷婷成人激情在线网| 久久久久人妻一区精品色| 成人看片黄a免费看在线| 午夜免费福利在线| 精品动漫3d一区二区三区免费版| 日本精品一区二区| gogo久久日韩裸体艺术| 国产美女直播视频一区| 小h片在线观看| 欧美激情亚洲自拍| 91caoporn在线| 日韩精品视频免费专区在线播放| 国产一区二区三区视频免费观看| 精品国产鲁一鲁一区二区张丽 | 精品女厕一区二区三区| 无码人妻aⅴ一区二区三区69岛| 国产精品一二三四| 黄色手机在线视频| 亚洲欧美日韩视频二区| 久久天天东北熟女毛茸茸| 视频一区中文| 精品欧美日韩| a看欧美黄色女同性恋| 91性高湖久久久久久久久_久久99| 在线成人av观看| 91国内免费在线视频| 蜜臀av国内免费精品久久久夜夜| 日韩一区二区三区xxxx| av在线资源网| 亚洲欧美中文另类| 水莓100国产免费av在线播放| 欧美一级国产精品| 国产一区二区在线不卡| 欧美日韩免费一区二区三区视频| 日本中文字幕第一页| 午夜视频一区二区三区| 青青草原在线免费观看| 亚洲欧洲成人精品av97| 女教师淫辱の教室蜜臀av软件| 久久亚区不卡日本| 亚洲专区区免费| 91女厕偷拍女厕偷拍高清| 大乳护士喂奶hd| 成人美女在线视频| 深田咏美中文字幕| 99久久国产综合精品女不卡| 亚洲自拍偷拍精品| 不卡av在线网| 国产精品无码毛片| 2022国产精品视频| 一本色道久久综合亚洲精品图片| 91视频91自| 波多野结衣一本| 久久久综合视频| 人与嘼交av免费| 亚洲国产高清在线观看视频| 人与动物性xxxx| 亚洲三级在线播放| 久久久久无码国产精品不卡| 亚洲影视资源网| 日韩免费不卡视频| 精品欧美一区二区三区| av大片免费观看| 在线观看欧美日本| 亚洲天堂网在线观看视频| 欧美美女网站色| 亚洲国产成人一区二区| 亚洲第一视频网| 免费毛片在线| 中文字幕亚洲欧美日韩在线不卡| 午夜在线播放| 欧美激情喷水视频| 精精国产xxxx视频在线播放| 国产91在线高潮白浆在线观看| 忘忧草在线www成人影院| 国产精品爽爽爽| 视频二区欧美| 欧美中日韩一区二区三区| 天天综合网网欲色| 午夜免费福利小电影| 日日摸夜夜添夜夜添精品视频| 午夜免费看毛片| 成人av在线网站| 久久久久久国产免费a片| 亚洲日本中文字幕区| 日本在线小视频| 欧美无乱码久久久免费午夜一区| 国产强伦人妻毛片| 亚洲欧美福利视频| 八戒八戒神马在线电影| 97视频国产在线| 日韩亚洲国产免费| 国产一区免费观看| 欧美一级本道电影免费专区| wwwwww欧美| 日韩国产在线一| 美国黄色一级视频| 国产午夜精品一区二区三区四区| 欧美丰满熟妇bbbbbb| 日韩欧美在线网址| www国产一区| 中文字幕亚洲第一| 国内精彩免费自拍视频在线观看网址| 国产精品欧美激情| 网红女主播少妇精品视频| 国产盗摄视频在线观看| 日韩综合小视频| 午夜不卡久久精品无码免费| 国产精品嫩草99a| 久久精品视频7| 欧美刺激午夜性久久久久久久| 成人免费高清在线播放| 77777少妇光屁股久久一区| 在线日韩三级| 日韩精品资源| 国产欧美三级| 麻豆短视频在线观看| 亚洲色图欧美激情| 中国女人一级一次看片| 日韩经典中文字幕在线观看| 麻豆tv入口在线看| 国产精品成av人在线视午夜片| 麻豆精品av| 久久亚洲国产成人精品无码区| 激情欧美一区二区三区在线观看| 新91视频在线观看| 欧美三级欧美成人高清www| 亚洲av无码一区二区三区dv| 久久躁狠狠躁夜夜爽| 成人在线不卡| 日韩理论片在线观看| 国产日韩精品视频一区二区三区 | 久久久久久久久久久久电影| 亚洲精品不卡| 视频精品一区二区| 国产精品无码午夜福利| 天天综合色天天| 婷婷综合激情网| 国模精品系列视频| 福利片一区二区| 国产精品久久久久9999爆乳| 国产精品一区在线观看乱码 | 亚洲成人动漫精品| 亚洲精品18p| 欧美激情小视频| 97久久亚洲| 日韩欧美不卡在线| 成人爱爱电影网址| 你懂的国产视频| 亚洲美女av网站| 欧美aa视频| 神马影院我不卡午夜| 麻豆成人综合网| 多男操一女视频| 777午夜精品免费视频| 精品国产丝袜高跟鞋| 91在线中文字幕| 国内自拍一区| 野外性满足hd| 欧美专区日韩专区| 在线激情网站| 5566中文字幕一区二区| 国产在线不卡| 麻豆国产精品一区| 色94色欧美sute亚洲线路二| 国产精品免费播放| 国产在线久久久| 欧美成人久久| 人妻在线日韩免费视频| 色婷婷av一区二区三区软件 | 精品人妻少妇AV无码专区| 久久久免费电影| 丝袜av一区| 日本免费色视频| 亚洲国产视频直播| 黄色毛片在线观看| 91在线视频免费| 日韩午夜高潮| 亚洲精品一区二区三区影院忠贞| 欧美日韩国产一级| 日本精品600av| 欧美一区二区三区四区在线观看地址| 看电视剧不卡顿的网站| 国产精选第一页| 伊人久久久久久久久久久久久 | 蜜桃欧美视频| 久久精品国产网站| 国产一级片免费| 在线看欧美日韩| 亚洲精品午夜| 日本在线视频www| 亚洲人123区| 免费动漫网站在线观看| 成人亚洲欧美一区二区三区| 亚洲免费黄色| 特黄一区二区三区| 亚洲国产成人在线视频| 国产91亚洲精品久久久| 欧美无砖专区免费| 国产欧美日韩激情| 亚洲精品无遮挡| 国产精品亚洲欧美导航| 一本色道久久综合亚洲精品不|