Java Web是指用Java語言來解決相關(guān)Web領(lǐng)域的技術(shù)總和,一個Web應(yīng)用程序包括Web客戶端和Web服務(wù)器兩個部分,即基于B/S(瀏覽器/服務(wù)器)架構(gòu)的應(yīng)用程序。
專注于為中小企業(yè)提供網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)白山免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。Web客戶端通常是指用戶機(jī)上的瀏覽器,如微軟的IE瀏覽器或火狐瀏覽器等??蛻舳瞬恍枰_發(fā)任何用戶界面,而統(tǒng)一采用瀏覽器即可。
Web服務(wù)器是一臺或多臺可運行Web應(yīng)用程序的計算機(jī),通常我們在瀏覽器中輸入的網(wǎng)站地址,即Web服務(wù)器的地址。當(dāng)用戶在瀏覽器的地址欄中輸入網(wǎng)站地址并按回車鍵后,請求即被發(fā)送到 Web服務(wù)器。服務(wù)器接收到請求后,會返回給用戶帶有請求資源的響應(yīng)消息。Java在服務(wù)器端的應(yīng)用非常豐富,如Servlet、JSP和第三方框架等。
早期的Web應(yīng)用主要是靜態(tài)頁面的瀏覽,即靜態(tài)網(wǎng)站。 這些網(wǎng)站使用HTML語言來編寫,放在Web服務(wù)器上。 用戶使用瀏覽器通過HTTP協(xié)議請求服務(wù)器上的Web頁面,Web服務(wù)器處理接收到的用戶請求后發(fā)送給客戶端瀏覽器顯示給用戶。工作原理如圖:
用戶所訪問的資源已不局限于服務(wù)器中保存的靜態(tài)網(wǎng)頁。更多的內(nèi)容需要根據(jù)用戶的請求動態(tài)生成頁面信息,即動態(tài)網(wǎng)站。 這些網(wǎng)站通常使用HTML語言和動態(tài)腳本語言(如JSP、ASP或PHP等)編寫,并將編寫后的程序部署到Web服務(wù)器中。 由Web服務(wù)器處理動態(tài)腳本代碼并將其轉(zhuǎn)換為瀏覽器可以解析的HTML代碼,成都谷歌推廣公司,返回客戶端瀏覽器顯示給用戶,其工作流程如圖:
客戶端則需要安裝專用的客戶端軟件。如圖所示:
在B/S結(jié)構(gòu)中客戶端不需要開發(fā)任何用戶界面,而統(tǒng)一采用IE或火狐等瀏覽器。通過Web瀏覽器向Web服務(wù)器發(fā)送請求,由Web服務(wù)器處理并將處理結(jié)果逐級傳回客戶端,如圖所示。
內(nèi)置對象
四、JavaBean4.1 JavaBean的產(chǎn)生背景
在JSP網(wǎng)頁開發(fā)的初級階段并沒有框架與邏輯分層概念,需要將Java代碼嵌入到網(wǎng)頁中處理JSP頁面中的一些業(yè)務(wù)邏輯,如字符串處理和數(shù)據(jù)庫操作等,其開發(fā)流程如圖所示。
4.2 JavaBean的作用
如果使HTML與Java代碼相分離,將Java代碼單獨封裝成為一個處理某種業(yè)務(wù)邏輯的類。然后在JSP頁面中調(diào)用此類,則可以降低HTML與Java代碼之間的耦合度,并且簡化JSP頁面,提高Java程序代碼的重用性及靈活性。這種與HTML代碼相分離,而使用Java代碼封裝的類就是一個JavaBean組件。 在Java Web開發(fā)可以使用該組件來完成業(yè)務(wù)邏輯的處理,應(yīng)用JavaBean與JSP組合的開發(fā)模式如圖所示。
4.3 JavaBean的應(yīng)用
JavaBean是用Java語言所寫成的可重用組件,其應(yīng)用十分廣泛,可以應(yīng)用于系統(tǒng)的很多層中,如PO、VO、DTO和POJO等。
五、Servlet
用戶通過單擊某個鏈接或者直接在瀏覽器的地址欄中輸入URL來訪問Servlet,Web服務(wù)器接收到請求后,并不是將請求直接交給Servlet容器。Servlet容器實例化Servlet,調(diào)用Servlet的一個特定方法( service()),并產(chǎn)生一個響應(yīng)。這個響應(yīng)由Servlet容器返回給Web服務(wù)器,Web服務(wù)器包裝這個響應(yīng),以HTTP響應(yīng)的形式發(fā)送給Web瀏覽器。整個過程如圖:
六、如何讓服務(wù)器知道你來過?
6.1 Cookie技術(shù)
Cookie的作用:通俗地說就是當(dāng)一個用戶通過HTTP協(xié)議訪問一個服務(wù)器的時候,這個服務(wù)器會將一些Key/Value鍵值對返回給客戶端瀏覽器,并給這些數(shù)據(jù)加上一些限制條件,在條件符合時這個用戶下次訪問這個服務(wù)器的時候,數(shù)據(jù)又被完整地帶回給服務(wù)器。 這個作用就像你去超市購物時,成都小程序開發(fā)公司次給你辦張購物卡,這個購物卡里存放了一些你的個人信息,下次你再來這個連鎖超市時,超市會識別你的購物卡,下次直接購物就好了。當(dāng)初W3C在設(shè)計Cookie時實際上考慮的是為了記錄用戶在一段時間內(nèi)訪問Web應(yīng)用的行為路徑。由于HTTP協(xié)議是一種無狀態(tài)協(xié)議,當(dāng)用戶的一次訪問請求結(jié)束后,后端服務(wù)器就無法知道下一次來訪問的還是不是上次訪問的用戶,在設(shè)計應(yīng)用程序時,我們很容易想到兩次訪問是同一人訪問與不同的兩個人訪問對程序設(shè)計和性能來說有很大的不同。例如,在一個很短的時間內(nèi),如果與用戶相關(guān)的數(shù)據(jù)被頻繁訪問,可以針對這個數(shù)據(jù)做緩存,這樣可以大大提高數(shù)據(jù)的訪問性能。Cookie的作用正是在此,由于是同一個客戶端發(fā)出的請求,每次發(fā)出的請求都會帶有成都小程序開發(fā)公司次訪問時服務(wù)端設(shè)置的信息,這樣服務(wù)端就可以根據(jù)Cookie值來劃分訪問的用戶了。
6.2 Session技術(shù)為什么需要Session?前面已經(jīng)介紹了Cookie可以讓服務(wù)端程序跟蹤每個客戶端的訪問,但是每次客戶端的訪問都必須傳回這些Cookie,如果Cookie很多,這無形地增加了客戶端與服務(wù)端的數(shù)據(jù)傳輸量,而Session的出現(xiàn)正是為了解決這個問題。 同一個客戶端每次和服務(wù)端交互時,不需要每次都傳回所有的Cookie值,而是只要傳回一個ID,這個ID是客戶端成都小程序開發(fā)公司次訪問服務(wù)器的時候生成的,而且每個客戶端是成都網(wǎng)站改版公司的。這樣每個客戶端就有了一個成都網(wǎng)站改版公司的ID,客戶端只要傳回這個ID就行了,這個ID通常是NANE為JSESIONID的一個Cookie。
一個瀏覽器去服務(wù)器租房子,服務(wù)器記錄一下瀏覽器的行為和數(shù)據(jù),然后給了瀏覽器一把房間的鑰匙 然后,每次瀏覽器可以使用自己的鑰匙去打開自己的房間,使用房間的所有東西。(當(dāng)然,你不能去開別人的房間,何況也打不開)
七、上下文
7.1 SeveletContext或者ApplicationContext的由來
瀏覽器想鍛煉身體,愉悅心情。服務(wù)器心想我不能給你們每一個人的房間增加一套體育設(shè)備吧,那我的經(jīng)濟(jì)壓力多大。服務(wù)器想了想,決定建設(shè)一個公開場所,體育館,所有瀏覽器都可以使用這些共享資源。
7.2 Servlet上下文運行在Java虛擬機(jī)中的每一個Web應(yīng)用程序都有一個與之相關(guān)的Servlet上下文。Java Servlet API提供了一個ServletContext接口用來表示上下文。在這個接口中定義了一組方法,Servlet可以使用這些方法與它的Servlet容器進(jìn)行通信,例如,得到文件的MIME類型,轉(zhuǎn)發(fā)請求,或者向日志文件中寫入日志消息。 ServletContext對象是Web服務(wù)器中的一個已知路徑的根。 比如,Servlet上下文被定位于http://localhost:8080/ch02。以/ch02請求路徑(稱為上下文路徑)開始的所有請求被發(fā)送到與此ServletContext關(guān)聯(lián)的Web應(yīng)用程序。再比如,我們平常使用的http://localhost:8080/。以/請求路徑(稱為上下文路徑)開始的所有請求被發(fā)送到與此ServletContext關(guān)聯(lián)的Web應(yīng)用程序。
ServletContext: 這個是來自于servlet規(guī)范里的概念,它是servlet用來與容器間進(jìn)行交互的接口的組合,也就是說,成都app軟件開發(fā)公司這個接口定義了一系列的方法,servlet通過這些方法可以很方便地與自己所在的容器進(jìn)行一些交互。在一個應(yīng)用中(一個JVM),servlet容器可以有多個,而所有的servlet容器共享一個ServletContext。
八、兩個時代
8.1 Model1時代
最初的JSP開發(fā)模式為Model 1模式:JSP JavaBean
8.2 Model2時代
慢慢演變成了Model 2模式:JSP Servlet JavaBean
模型2符合MVC架構(gòu)模式,MVC即模型-視圖-控制器(Model-View-Controller)。
文章題目:web服務(wù)器有哪些(web服務(wù)器程序主要有哪些)
瀏覽地址:http://aaarwkj.com/article34/sopse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、做網(wǎng)站、營銷型網(wǎng)站建設(shè)、網(wǎng)站收錄、虛擬主機(jī)、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源:
創(chuàng)新互聯(lián)