97色伦色在线综合视频,无玛专区,18videosex性欧美黑色,日韩黄色电影免费在线观看,国产精品伦理一区二区三区,在线视频欧美日韩,亚洲欧美在线中文字幕不卡

印刷設計營銷網站設計說明生成器

鶴壁市浩天電氣有限公司 2026/01/24 09:14:36
印刷設計營銷網站,設計說明生成器,昆山住房與城鄉(xiāng)建設局網站,一個空間兩個php網站目錄一、你有沒有真正理解過#xff1a;一個 HTTP 請求是怎么“飛”到你的代碼里的#xff1f;二、Spring Boot 為什么能監(jiān)聽和處理請求三、使用 JDK 自帶的 HttpServer實現一個可運行的 HTTP 服務四、結語#xff1a;但你有沒有想過#xff1a;HttpServer背后又是誰在監(jiān)聽…目錄一、你有沒有真正理解過一個 HTTP 請求是怎么“飛”到你的代碼里的二、Spring Boot 為什么能監(jiān)聽和處理請求三、使用 JDK 自帶的 HttpServer實現一個可運行的 HTTP 服務四、結語但你有沒有想過HttpServer背后又是誰在監(jiān)聽端口、收發(fā)字節(jié)一、你有沒有真正理解過一個 HTTP 請求是怎么“飛”到你的代碼里的我們每天都會寫的代碼RestControllerpublicclassHelloController{GetMapping(/hello)publicStringhello(RequestParamStringname){returnHello, name;}}啟動后瀏覽器訪問 http://localhost:8080/hello?name張三立刻返回結果。但你有沒有想過客戶端發(fā)出的請求是怎么精準到達服務器的 8080 端口服務器收到一堆字節(jié)流后怎么知道要調用你的哪個方法響應又是什么時候、怎么寫回去的Spring Boot 隱藏了太多細節(jié)讓我們誤以為“寫注解 有服務”。今天我們扔掉所有框架只用 JDK 自帶的 API親手實現一個真正的 HTTP 服務。你會發(fā)現一切都沒有魔法只有清晰的協議與流程。二、Spring Boot 為什么能監(jiān)聽和處理請求為了對比我們先用最簡潔的方式說清楚 Spring Boot 的原理。Spring Boot 啟動時會自動創(chuàng)建一個嵌入式 Tomcat 實例并綁定指定端口默認 8080。#比如server:port:8080Tomcat 內部基于 Java 的ServerSocket監(jiān)聽 TCP 連接。所有 HTTP 請求到達后Tomcat 解析成ServletRequest/ServletResponse轉發(fā)給 Spring MVC 的DispatcherServlet。DispatcherServlet根據注解如 RequestMapping找到對應方法執(zhí)行后把返回值序列化成 JSON 寫回響應。整個過程我們幾乎沒寫一行網絡代碼卻能提供服務。這很強大但也容易讓我們對底層產生“黑盒”感?,F在我們把所有框架都扔掉——不用 Spring、不用 Tomcat、不用任何第三方庫只用 JDK 自帶的 API來實現一個完整的 HTTP 服務。三、使用 JDK 自帶的 HttpServer實現一個可運行的 HTTP 服務從 Java 6 起JDK 提供了com.sun.net.httpserver.HttpServer這是一個輕量級、純 Java 實現的嵌入式 HTTP 服務器。代碼極簡卻已經能完整處理請求和響應。publicclassMyServer{publicstaticvoidmain(String[]args)throwsIOException{//監(jiān)聽8080端口HttpServerserverHttpServer.create(newInetSocketAddress(8080),0);//創(chuàng)建一個HttpHandlerHttpHandlerhandlernewMiniHandler();//如果有請求就交給handlerserver.createContext(/helloHttp,handler);//啟動服務器server.start();System.out.println(服務器啟動成功);}}publicclassMiniHandlerimplementsHttpHandler{Overridepublicvoidhandle(HttpExchangeexchange)throwsIOException{//1.獲取URL的參數Stringqueryexchange.getRequestURI().getQuery();//拿到第一個參數Stringnamequery.split(name)[1];//2.以json格式返回Stringresponse{ code: 200, message: OK, data: Hello, name! };//3.發(fā)送回復exchange.getResponseHeaders().set(Content-Type,application/json;charsetutf-8);;exchange.sendResponseHeaders(200,response.length());OutputStreamosexchange.getResponseBody();os.write(response.getBytes(StandardCharsets.UTF_8));os.close();}}運行這個 main 方法然后打開瀏覽器訪問http://localhost:8080/helloHttp?nameHttp。你會看到客戶端瀏覽器發(fā)起 TCP 連接到你的機器 8080 端口。JDK 的HttpServer接受連接解析 HTTP 請求行、頭、查詢參數。根據路徑匹配到對應的HttpHandler。在handle方法里你可以自由讀取請求信息方法、路徑、參數、頭、body。你手動設置狀態(tài)碼、響應頭、內容長度然后通過getResponseBody()寫入字節(jié)。底層自動把響應通過Socket發(fā)回客戶端連接關閉或保持長連接。Spring Boot 沒有創(chuàng)造新東西它只是把重復、易錯的底層操作封裝成了優(yōu)雅的 API四、結語到這里我們已經看清了 HTTP 請求如何通過 JDK 原生 API 被處理。但你有沒有想過HttpServer背后又是誰在監(jiān)聽端口、收發(fā)字節(jié)答案是Socket。HTTP 是一個應用層協議它依賴于傳輸層的 TCP 協議進行可靠數據傳輸而 TCP 連接在操作系統(tǒng)層面是通過 Socket API 來建立和管理的下一篇我們將徹底剝開最后一層封裝用最原始的ServerSocket和Socket從零實現一個能跑通的 HTTP 服務 —— 親眼看看 TCP 連接是如何建立的HTTP 報文是如何被一字節(jié)一字節(jié)解析的。下期預告深入 Socket 編程 —— 從零實現一個原始 HTTP 服務器看清 TCP 連接、字節(jié)流、協議解析的全過程。收藏 關注學習不迷路
版權聲明: 本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若內容造成侵權/違法違規(guī)/事實不符,請聯系我們進行投訴反饋,一經查實,立即刪除!

站長seo查詢扁平 wordpress

站長seo查詢,扁平 wordpress,怎么做網站賺錢嗎,網絡商城是什么EmotiVoice語音合成在政務大廳自助機中的便民服務 在政務服務日益智能化的今天#xff0c;越來越多的市民走進政務大廳時

2026/01/23 00:15:01

網站流量跟錢的關系悠悠我心的個人網站素材

網站流量跟錢的關系,悠悠我心的個人網站素材,合肥有什么好的網站建設公司好,網站建設需要客戶提供什么EmotiVoice能否實現方言與普通話混合播報#xff1f; 在智能語音助手越來越“會說話”的今天#

2026/01/23 09:50:01

最新網站建設學動漫設計好就業(yè)嗎

最新網站建設,學動漫設計好就業(yè)嗎,wordpress投稿圖片,市場調研報告最佳范文步入職場后才發(fā)現#xff0c;手機早已不只是私人設備 —— 既要裝工作必需的 OA、企業(yè)微信、客戶管理類 APP#xf

2026/01/23 03:41:01

泉州網站建設網站建設全網網站建設設計

泉州網站建設網站建設,全網網站建設設計,wordpress 4.9更新,黑龍江省建設銀行 招聘網站小愛音響音樂服務終極指南#xff1a;從啟動故障到完美播放 【免費下載鏈接】xiaomusic 使用小

2026/01/22 22:19:01

云技術在網站建設中的應用長治網站制作一般多少錢

云技術在網站建設中的應用,長治網站制作一般多少錢,鏈接制作,上海網站建設空間在混凝土工程領域#xff0c;強制式雙臥軸攪拌機憑借其高效、均勻的攪拌性能#xff0c;已成為商混站、預制構件廠及大型基建項

2026/01/21 16:03:01