- JavaWeb從入門到精通(視頻實戰(zhàn)版)
- 常倬林等編著
- 1379字
- 2018-12-31 19:35:52
1.2 Web應用程序開發(fā)基本知識
Java Web開發(fā)也就是基于B/S結構的Java應用程序開發(fā),在接下來的章節(jié)中,將介紹Java Web開發(fā)最基本的知識。在這里不涉及具體的技術實現(xiàn),只對Java Web開發(fā)的基本原理進行介紹。
1.2.1 Web應用程序的運行原理
在傳統(tǒng)的Web應用程序開發(fā)中,需要同時開發(fā)客戶端和服務器端的程序。由服務器端的程序提供基本的服務,客戶端是提供給用戶的訪問接口,用戶可以通過客戶端的軟件訪問服務器提供的服務。這種Web應用程序的開發(fā)模式就是傳統(tǒng)的C/S開發(fā)模式。在這種模式中,由服務器端和客戶端的共同配合來完成復雜的業(yè)務邏輯。例如以前的網(wǎng)絡軟件中,一般都會采用這種模式,而且現(xiàn)在的網(wǎng)絡游戲中,一般還會采用這種Web開發(fā)模式。在這些Web應用程序中,都是需要用戶安裝客戶端才可以使用的。
在目前的Web應用程序開發(fā)中,一般情況下會采用另一種開發(fā)模式。在這種開發(fā)模式中,不再單獨開發(fā)客戶端軟件,客戶端只需要一個瀏覽器即可。這個瀏覽器在每個操作系統(tǒng)中都是自帶的,軟件開發(fā)人員只需專注開發(fā)服務器端的功能,用戶通過瀏覽器就可以訪問服務器提供的服務。這種開發(fā)模式就是當前流行的B/S架構。在這種架構中,只需要開發(fā)服務器端的程序功能,而無須考慮客戶端軟件的開發(fā),客戶通過一個瀏覽器就可以訪問應用系統(tǒng)提供的功能。這種架構是目前Web應用程序的主要開發(fā)模式,例如各大門戶網(wǎng)站、各種Web信息管理系統(tǒng)等,使用B/S架構加快了Web應用程序開發(fā)的速度,提高了開發(fā)效率。
1.2.2 Web服務器匯總
在C/S架構的開發(fā)模式中,服務器端完全由開發(fā)人員自己提供,開發(fā)人員自己制定客戶端的訪問規(guī)則,這時候的服務器不僅要提供邏輯功能的服務,還要提供一些協(xié)議支持。通過這些協(xié)議,客戶端程序才可以與服務器端進行通信,從而享受服務器端提供的服務。
在B/S架構的開發(fā)模式中,客戶端就是簡單的瀏覽器程序,可以通過HTTP協(xié)議訪問服務器端的應用,在服務器端,與通信相關的處理都由服務器軟件負責,這些服務器軟件都是由第三方的軟件廠商提供。開發(fā)人員只需要把功能代碼部署在Web服務器中,客戶端就可以通過瀏覽器訪問到這些功能代碼,從而實現(xiàn)向客戶提供的服務。下面簡單介紹B/S結構中常用的服務器。
? IIS是微軟提供的一種Web服務器,提供對ASP語言的良好支持,通過插件的安裝,也可以提供對PHP語言的支持。
? Apache服務器是由Apache基金組織提供的一種Web服務器,其特長是處理靜態(tài)頁面,對于靜態(tài)頁面的處理效率非常高。
? Tomcat也是Apache基金組織提供的一種Web服務器,提供對JSP和Servlet的支持。通過插件的安裝,同樣可以提供對PHP語言的支持,但是Tomcat只是一個輕量級的Java Web容器,像EJB這樣的服務在Tomcat中是不能運行的。
? JBoss是一個開源的重量級的Java Web服務器。在JBoss中,提供對J2EE各種規(guī)范的良好支持,而且JBoss通過了Sun公司的J2EE認證,是Sun公司認可的J2EE容器。
? 另外,J2EE的服務器還有BEA的Weblogic和IBM的WebSphere等,這些產(chǎn)品的性能都是非常優(yōu)秀的,可以提供對J2EE的良好支持。用戶可以根據(jù)自己的需要選擇合適的服務器產(chǎn)品。
1.2.3 開發(fā)一個Web應用程序的簡單流程
在傳統(tǒng)Web應用程序的開發(fā)過程中,開發(fā)一個應用系統(tǒng)一般情況下需要以下幾個步驟:客戶端/服務器端軟件的開發(fā)、服務器端程序的部署、客戶端軟件的安裝。只有完成這幾個步驟,用戶才可以通過客戶端訪問服務器提供的服務。
而在基于B/S架構的Web程序開發(fā)過程中,只需要開發(fā)服務器端的功能代碼,然后把服務器端的程序部署在Web服務器軟件中即可。在部署結束之后,啟動Web服務器,用戶就可以通過瀏覽器訪問Web應用程序提供的服務。
- 程序員修煉之道:程序設計入門30講
- 嵌入式軟件系統(tǒng)測試:基于形式化方法的自動化測試解決方案
- 企業(yè)級Java EE架構設計精深實踐
- C語言程序設計(第2 版)
- Vue.js 2 and Bootstrap 4 Web Development
- Java FX應用開發(fā)教程
- Julia機器學習核心編程:人人可用的高性能科學計算
- Python機器學習基礎教程
- Unreal Engine 4 Shaders and Effects Cookbook
- Swift 4從零到精通iOS開發(fā)
- UML2面向?qū)ο蠓治雠c設計(第2版)
- Emotional Intelligence for IT Professionals
- 測試架構師修煉之道:從測試工程師到測試架構師
- PowerDesigner 16 從入門到精通
- Learning Grunt