Web開發中的主要概念
1、靜態資源:一成不變的。html、js、css
2、動態資源:JavaWeb。輸出或產生靜態資源。(用戶用瀏覽器看到的頁面永遠都是靜態資源)
3、JavaEE:十三中技術的集合。JSP/Servlet屬於其中的一種。
容器:(服務器)。支持什麼技術的服務器,簡稱XX容器。
重量級和輕量級服務器:支持的服務多少來定。
Tip:
如何區分JavaSE和JavaEE的技術呢?java.***JavaSE javax.** JavaEE
服務器
1、
2、Tomcat6.0 Servlet/JSP:2.5/2.1 JDK:1.5(從Tomcat6.0開始,只有JRE也是可以的)
Tomcat7.0 Servlet/JSP:3.0/2.2 JDK:1.6
Tomcat的安裝與問題的解決
1、解壓到某個目錄或磁盤上(請不要解壓到中文目錄或有空格的目錄中)
2、進入Tomcatbin目錄中,執行啓動Tomcat
3、用瀏覽器訪問http://localhost:8080/,如果看到界面,說明安裝成功!
問題:
1、一閃而過
2、JAVA_HOME環境變量
解決辦法:配置系統環境變量 JAVA_HOME="C:jdk1.6.0_20"
Tip:Catalina_home環境變量不建議配置
3、端口被佔用:Tomcat默認使用的端口是8080。
更改Tomcat的默認端口號:找到Tomcatconfserver.xml,搜索8080,改爲自己的端口(沒有被別人佔用)
Tip:
HTTP協議默認使用的端口號80。--->:80
Tomcat的目錄結構(服務器廠商自己規定的)
Tomcat:
bin:Tomcat的啓動和停止腳本
conf:存放Tomcat的配置文件。*.properties或*.xml
lib:存放Tomcat依賴的jar包。
logs:存放Tomcat的運行日誌。
temp:存放臨時文件
webapps:存放Tomcat所管理的Web應用的。該目錄中有幾個文件夾,就代表當前Tomcat管理着幾個應用。
work:這是Tomcat的工作目錄。
JavaWeb的標準目錄結構(SUN公司規定的,規範標準)
MyApp:(應用名稱)
、等等資源
a
WEB-INF:必須有,且名稱必須一致。(存放在此目錄中的文件資源,用戶無法直接訪問)
lib:存放服務於本應用的jar包
:必須有。針對當前應用的配置文件。
classes:必須有。存放服務於當前應用的class類。Class. s
Tip:
Tomcat中的lib和JavaWeb應用的lib中的jar有什麼區別?
Tomcat中的lib爲Tomcat服務,被所有的受管理的'JavaWeb應用所共享。
JavaWeb應用的lib,只爲自己服務。
重名類的加載順序:類加載器的加載順序
自己應用中的classes--->自己應用中的lib中的jar---->Tomcatlib中的class文件---->Tomcatlib中的jar----》沒有找到,ClassNotFoundException
如何部署JavaWeb應用到Tomcat中
1、開放式目錄部署:直接拷貝應用到Tomcat中去。
2、把應用打成war包。進入應用的目錄,執行 jar -cvf .
把war包拷貝至Tomcatwebapps中即可,容器會自動解壓該應用。
Tomcat的核心組成部分
a、虛擬目錄映射:把本地磁盤上的真實目錄映射爲一個對外訪問的一個虛擬目錄
C:ITHEIMAheima15day03資料MyApp ----->/MyApp
:Context元素。配置一個應用
方式一:(不建議使用,需要重新啓動Tomcat)
在元素中增加以下內容:
path:虛擬目錄。以"/"開頭
docBase:真實目錄。(中文目錄不行)
方式二:
在Tomcat[enginename][hostname]目錄中建立一個擴展名爲xml的配置文件。
該文件名就是虛擬目錄的名稱,在其中增加以下配置:
小實驗:配置默認端口、默認應用、默認頁面
http://localhost時------>C:
默認端口:修改把8080改爲80
默認應用:(都需要重啓)在Tomcat[enginename][hostname]目錄中建立一個名稱爲的配置文件。
默認主頁:修改應用中的,增加以下內容:
<web-app xmlns=""
xmlns:xsi=""
xsi:schemaLocation=" _2_"
version="2.5">
b、虛擬主機
配置中的Host元素
name:網站名稱
appBase:存放本網站所有應用的目錄。
域名解析:可以修改widows系統中C:WINDOWSsystem32driversetchosts文件進行域名和IP的映射(玩後改回原樣)
c、連接器:SSL
HTTPS=HTTP+SSL。默認使用的端口是at:8443
SSL:數據加密(非對稱加密)+身份認證(數字證書)
Certificate Authority,CA;VeriSign;Thawte;權威的數字證書頒發機構。
創建自我簽名的數字證書:
JDK中的keytool可以創建該證書。
-genkey -alias ppp -keyalg RSA
生成的證書默認存放在當前登錄用戶的文件夾中。