1、基本概念
1.1、基本概念
Web開發:
- web~網頁,www.baidu.com
- 靜态web:
- html, css
- 提供給所有人看的資料始終不會發生變化~
- 動态web:
- 淘寶,幾乎所有的網站
- 提供給所有人看的資料始終會發生變化,每個人在不同的時間,不同的地點看到的資訊各不相同
- 技術棧:Serviet/ISP,ASP,PHP
在Java中,動态web資源開發的技術統稱為JavaWeb。
1.2、Web應用程式
web應用程式:可以提供浏覽器通路的程式;
- a.html、b.html…多個web資源,這些web資源可以被外界通路,對外界提供幫助。
- 我們可以通路到的任何一個頁面或資源,都存在于這個世界上的某個角落的計算機上。
- URL
- 這個統一的web資源會被放在同一個檔案夾上,web應用程式 --> Tomcat:伺服器
- 一個web應用由多部分組成(靜态web,動态web)
- html、css、js
- jsp,servlet
- java程式
- jar包
- 配置檔案(Properties)
web應用程式編寫完畢後,如果想提供給外界通路:需要一個伺服器來統一管理。
1.3 靜态web
- *.htm, *.html這些都是網頁的字尾,如果伺服器上一直存在該網頁,則可以直接進行讀取。
通路流程:
靜态web存在的缺點:
- web頁面無法動态更新,所有使用者看到的都是同一個頁面
- 為了彌補,使用輪播圖,點選特效等等:微動态
- JavaScript【實際開發中,它用的最多】
- VBScript
- 無法和資料庫互動(資料無法持久化,使用者無法互動)
1.4 動态web
頁面會動态展示:“Web的頁面展示的效果因人而異”。
通路流程:
缺點:
- 加入伺服器的動态web資源出現了錯誤,我們需要重新編寫我們的背景程式,重新釋出:
- 停機維護
優點:
- Web頁面可以動态更新,所有使用者看到的都不是同一個頁面
- 它可以資料庫互動(資料持久化:注冊,商品資訊,使用者資訊…)
2、Web伺服器
2.1、主流三大技術概述
ASP:
- 微軟:國内最早流行的就是ASP;
- 在HTML中嵌入VB腳本,ASP+COM;
- 在ASP開發中,基本一個頁面都有幾千行業務代碼,頁面極其亂
- 維護成本高!
- C#
php:
- PHP開發速度很快,功能跟強大,跨平台,代碼很簡單(70%,WP)
- 無法承載大通路量的情況(局限性)
JSP/Servlet:
B/S架構:浏覽和伺服器
C/S:用戶端和伺服器
- sun公司主推的B/S架構
- 基于Java語言的(所有的大公司,或者一些開源的元件都是java寫的)
- 可以承載三高問題帶來的影響;
- 文法像ASP,ASP --> JSP,加強市場的強度;
2.2、web伺服器
伺服器是一種被動的操作,用來處理使用者的一些請求和給使用者一些響應資訊;
IIS
微軟的;ASP…,Windows中自帶的
Tomcat
Tomcat是Apache 軟體基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目,由Apache、Sun 和其他一些公司及個人共同開發而成。Tomcat 技術先進、性能穩定,而且免費
Tomcat 伺服器是一個免費的開放源代碼的Web 應用伺服器,屬于輕量級應用伺服器,在中小型系統和并發通路使用者不是很多的場合下被普遍使用,是開發和調試JSP 程式的首選。
3、Tomcat
3.1 Tomcat安裝及測試
筆者是Mac OS Catalina系統,安裝的是Tomcat8,安裝過程可以參考此部落格:https://blog.csdn.net/feng2qing/article/details/60968548
此處貼上Tomcat的目錄結構:
通路測試:http://localhost:8080/
需要注意的是:在使用Tomcat前一定要安裝其版本支援的jdk。
3.2 更改端口号及主機名稱
3.2.1 端口号
在server.xml中可以配置端口号,也可以配置主機的名稱,需要更改hosts檔案。
常用端口号說明:
- Tomcat的通路端口号預設是:8080
- mysql:3306
- http:80
- https:443
更改端口位置:
<!--首先打開server.xml檔案,找到以下語句-->
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<!--更改port為自己想要的端口号即可,為避免沖突,盡量選用1024以上的!-->
3.2.2 主機名稱
修改主機名稱需要同時更改server.xml檔案以及hosts檔案。
比如現在我想将http://localhost:8080更改為我想要的http://www.jeverdemut.com:8080,需要進行如下操作:
- 首先更改hosts檔案:如果不清楚hosts檔案在哪裡,請按照下圖操作!
注意:此時更改的是系統檔案,更改前需要該檔案的管理權限,可以終端操作,但是筆者建議複制到桌面上進行修改,随後再拖回到etc目錄下替換!同時hosts非常重要,裡面的語句如果不懂得話不要随意修改!
我做出的修改如下:(将localhost改為了我想要的語句)
- 下面修改server.xml檔案:
<!--找到以下語句-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!--做出更改如下:-->
<Host name="www.jeverdemut.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!--儲存退出!-->
重新開機Tomcat後,浏覽器分别輸入
http://localhost:8080
和
http://www.jeverdemut.com
進行測試,此處展示後者的測試結果!
3.3 詳解網站通路流程
現在我們來談談網站是如何通路的!
1、首先我們輸入了一個域名,并按下了回車!之後網頁就呈現到我們面前了,但是中間經曆了什麼我們需要了解一下!
2、随後計算機檢查開始本機的
hosts
配置檔案中有沒有這個域名的映射;
- 如果有:直接傳回對應的ip位址,這個位址中,有我們需要通路的web程式,可以直接進行通路。例如我們剛剛的情況
127.0.0.1 www.jeverdemut.com
- 如果沒有:去DNS伺服器找,找到的話就傳回ip位址,找不到的話就傳回找不到。(DNS伺服器集合了全世界所有的域名)
以下為上述文字的流程圖:
3.4 釋出一個web網站
不會我們可以先模仿!
首先我們看Tomcat自帶的examples中的網頁!
浏覽器内輸入localhost:8080/examples/,回車跳轉即可見以下頁面:
點選網頁中的連結後會跳轉到其他的頁面,例如這裡我點選第一個,則會出現以下頁面:(注意觀察域名後添加了一個servlets)
那麼我們來說一說這其中的原理:我們來看一下Tomcat中webapps中的檔案:
上面跳轉的過程其實就是這一個個檔案嵌套通路的過程,是以我們要模仿釋出自己的網站隻需要将寫好的web資源等仿照root目錄中配置部署一份。(可以複制ROOT目錄更改為自己想要的名稱,添加檔案即可!)
- 将自己寫的網站,放到伺服器(Tomcat)中指定的web應用的檔案夾(webapps)下,就可以通路了
以下為網站應該有的結構:
-- webapps: Tomcat伺服器的web目錄
-ROOT
-DemutStudy:網站的目錄名
- WEB-INF
-classes : java程式
-lib : web應用所依賴的jar包
-web.xml : 網站配置檔案
- index.html 預設的首頁
- static
-css
-style.css
-js
-img
- ...
寫在最後
“對我來說,你還隻是一個小男孩,就像其他千萬個小男孩一樣。我不需要你。你也同樣用不着我。對你來說,我也不過是一隻狐狸,和其他千萬隻狐狸一樣。但是,如果你馴服了我,我們就互相不可缺少了。 對我來說,你就是世界上唯一的了;我對你來說,也是世界上唯一的了。”
——《小王子》
To Demut and Dottie!