JavaWeb
基本概念
- web開發:
- web網頁的意思
- 靜态web:提供給所有人看的資料始終不會發生變化
- html
- css
- 動态web:提供給所有人看的資料始終會發生變化,不同時間地點看到的資料不一樣
- 淘寶等,幾乎所有的網站
- 技術棧:Servlet/JSP,ASP,PHP
- 在Java中,動态web資源開發的技術統稱為JavaWeb
web應用程式
- 定義:可以提供浏覽器通路的程式
- 多個html檔案,這些web資源可以被外界通路,對外界提供服務
- 能通路到的任何一個頁面或者資源,都存在于這個世界的某個角落的計算機上
- URL:統一資源定位器,它是浏覽器用來檢索 web 上公布的任何資源的機制。URL 無非就是一個給定的獨特資源在 Web 上的位址。理論上說,每個有效的 URL 都指向一個唯一的資源。
- 這些統一的web資源被放到一個檔案夾下,就是web應用程式(依賴Tomcat伺服器來進行通路)
- web應用的組成
- html, css, js
- jsp, servlet
- java程式
- jar包
- 配置檔案(Properties)
- web應用程式編寫完畢後,若想提供給外界通路,需要一個伺服器來統一管理
靜态web
- *.htm, *.html這些都是網頁的字尾,如果伺服器上一直存在這些東西,我們就可以直接進行讀取
JavaWeb簡介【感謝狂神說JAVA】JavaWeb - 缺點:
- web頁面無法動态更新,所有使用者看到的都是同一個頁面
- 例如使用輪播圖,點選特效,形成僞動态
- 實作技術:JavaScript(用的最多)、VBScript
- 無法與資料庫互動,資料無法持久化,使用者無法互動
- web頁面無法動态更新,所有使用者看到的都是同一個頁面
動态web
- 定義:頁面會動态展示,展示的效果因為不同的行為而不同
- 缺點:
- 假如伺服器的動态web資源出現錯誤,我們需要重新編寫我們的背景程式,重新釋出(停機維護)
- 優點:
- 可以動态更新,使用者可以看多多種頁面
- 可以與資料庫互動,可以進行資料持久化,比如注冊、商品資訊的存儲、使用者資訊的存儲
web伺服器
- 動态web技術棧的伺服器程式設計語言:
- ASP:
- 微軟,國内最早流行的伺服器就是ASP
- 在HTML中嵌入了VB的腳本,ASP+COM;
- 在ASP開發中,基本一個頁面都有幾千行的業務代碼,頁面混論,維護成本高
- JSP:本質上是Servlet(伺服器)
- sun公司主推的B/S架構,主要基于java語言(所有大公司和開源的元件都是Java寫的)
- 可以承載三高問題(高并發、高可用、高性能)帶來的影響
- 文法像ASP,加強市場的強度
- B/S:浏覽和伺服器;C/S:用戶端和伺服器
- php:
- php開發速度很快,功能很強大,跨平台,代碼很簡單
- 但是無法承載大通路量的情況,有局限性
- ASP:
- web伺服器初探
- 定義:一種被動的操作,用來處理使用者的一些請求和給使用者一些響應資訊
- 比如:
- IIS,微軟的,ASP,Windows中自帶的
- Tomcat:(3-5年之後,可以嘗試手寫Tomcat伺服器)
- 是Apache 軟體基金會(Apache Software Foundation)的Jakarta 項目中的一個核心項目,最新的Servlet 和JSP 規範總是能在Tomcat 中得到展現,因為Tomcat 技術先進、性能穩定,而且免費,因而深受Java 愛好者的喜愛并得到了部分軟體開發商的認可,成為目前比較流行的Web 應用伺服器。
- Tomcat 伺服器是一個免費的開放源代碼的Web 應用伺服器,屬于輕量級應用伺服器,在中小型系統和并發通路使用者不是很多的場合下被普遍使用,是開發和調試JSP 程式的首選。對于一個初學者來說,是最優選擇
- Tomcat 實際上運作JSP 頁面和Servlet。目前Tomcat最新版本為10.0.5**。**
- 下載下傳Tomcat
- 安裝或解壓 tomcat官網
- 了解配置檔案及目錄結構:
- 點選bin目錄下的shutup.bat啟動tomcat伺服器
- 浏覽器中打開localhost:8080,出現tomcat頁面,安裝成功
- 點選shutdown.bat,關閉
- 可以配置一下環境變量
- 作用
- 可能碰到的問題
- java環境變量沒有配置
- 閃退問題:需要配置相容性
- 亂碼問題:配置檔案(server.xml)中設定
- 常用的預設端口号:
- tomcat:8080
- MySQL:3306
- http:80
- https:443
- 網站應該存在的結構
- webapps:tomcat伺服器的web目錄
- ROOT
- xxxxx:網站的目錄名
- WEB-INF
- classes:Java程式
- lib:web應用所依賴的jar包
- web.xml:網站配置檔案
- index.html:預設的網站
- static
- css
- style.css
- js
- img
- css
- ……
- WEB-INF