Java 進(jìn)階 & Web服務(wù)器簡(jiǎn)介碧囊、Tomcat的基本使用

Web服務(wù)器

Web服務(wù)器是指駐留于因特網(wǎng)上某種類(lèi)型計(jì)算機(jī)的程序。當(dāng)Web瀏覽器(客戶端)連到服務(wù)器上并請(qǐng)求文件時(shí)纤怒,服務(wù)器將處理該請(qǐng)求并將文件發(fā)送到該瀏覽器上糯而,附帶的信息會(huì)告訴瀏覽器如何查看該文件(即文件類(lèi)型)。服務(wù)器使用HTTP(超文本傳輸協(xié)議)進(jìn)行信息交流泊窘,這就是人們常把它們稱為HTTPD服務(wù)器的原因熄驼。
Web服務(wù)器不僅能夠存儲(chǔ)信息,還能在用戶通過(guò)Web瀏覽器提供的信息的基礎(chǔ)上運(yùn)行腳本和程序烘豹。
Web服務(wù)器可以解析HTTP協(xié)議瓜贾。當(dāng)Web服務(wù)器接收到一個(gè)HTTP請(qǐng)求,會(huì)返回一個(gè)HTTP響應(yīng),例如送回一個(gè)HTML頁(yè)面。為了處理一個(gè)請(qǐng)求Web服務(wù)器可以響應(yīng)一個(gè)靜態(tài)頁(yè)面或圖片携悯,進(jìn)行頁(yè)面跳轉(zhuǎn)或者把動(dòng)態(tài)響應(yīng)的產(chǎn)生委托給一些其它的程序例如CGI腳本祭芦,JSP腳本,servlets憔鬼,ASP腳本龟劲,服務(wù)器端JavaScript,或者一些其它的服務(wù)器端技術(shù)轴或。無(wú)論它們的目的如何昌跌,這些服務(wù)器端的程序通常產(chǎn)生一個(gè)HTML的響應(yīng)來(lái)讓瀏覽器可以瀏覽。

1照雁、軟件的結(jié)構(gòu)
1)C/S (Client - Server 客戶端-服務(wù)器端)
典型應(yīng)用:QQ軟件 蚕愤,飛秋,紅蜘蛛。
特點(diǎn):
Ⅰ)必須下載特定的客戶端程序萍诱。
Ⅱ)服務(wù)器端升級(jí)悬嗓,客戶端升級(jí)。
2)B/S (Broswer -Server 瀏覽器端- 服務(wù)器端)
典型應(yīng)用: 騰訊官方(www.qq.com)砂沛、163新聞網(wǎng)站烫扼, 360網(wǎng)頁(yè)(俗稱:網(wǎng)站) 曙求。javaweb的程序就是b/s軟件結(jié)構(gòu)碍庵。
特點(diǎn):
Ⅰ)不需要安裝特定的客戶端(只需要安裝瀏覽器即可!N蛴)
Ⅱ)服務(wù)器端升級(jí)静浴,瀏覽器不需要升級(jí)!<方ァF幌怼!

2浴麻、服務(wù)器
從物理上來(lái)說(shuō)得问,服務(wù)器就是一臺(tái)PC機(jī)器∪砻猓基本配置:8核宫纬,8G以上,T來(lái)計(jì)算膏萧,帶寬100M漓骚。
1)web服務(wù)器:PC機(jī)器安裝一個(gè)具有web服務(wù)的軟件,稱之為web服務(wù)器榛泛。
2)數(shù)據(jù)庫(kù)服務(wù)器:PC機(jī)器安裝一個(gè)具有數(shù)據(jù)管理服務(wù)的軟件蝌蹂,稱之為數(shù)據(jù)庫(kù)服務(wù)器。
3)郵件服務(wù)器:PC機(jī)器安裝一個(gè)具有發(fā)送郵件服務(wù)的軟件曹锨,稱之為郵件服務(wù)器孤个。

3、web服務(wù)軟件
1)web服務(wù)軟件的作用:把本地的資源共享給外部訪問(wèn)沛简。
2)常見(jiàn)的市面上web服務(wù)軟件:
Tomcat:由Apache組織提供的一種Web服務(wù)器硼身,提供對(duì)jsp和Servlet的支持。它是一種輕量級(jí)的javaWeb容器(服務(wù)器)覆享,也是當(dāng)前應(yīng)用最廣的JavaWeb服務(wù)器(免費(fèi))佳遂。
Jboss:是一個(gè)遵從JavaEE規(guī)范的、開(kāi)放源代碼的撒顿、純Java的EJB服務(wù)器丑罪,它支持所有的JavaEE規(guī)范(免費(fèi))。
Resin:是CAUCHO公司的產(chǎn)品,是一個(gè)非常流行的應(yīng)用服務(wù)器吩屹,對(duì)servlet和JSP提供了良好的支持跪另,性能也比較優(yōu)良,resin自身采用JAVA語(yǔ)言開(kāi)發(fā)(收費(fèi)煤搜,應(yīng)用比較多)免绿。
WebLogic:是Oracle公司的產(chǎn)品,是目前應(yīng)用最廣泛的Web服務(wù)器擦盾,支持JavaEE規(guī)范嘲驾,而且不斷的完善以適應(yīng)新的開(kāi)發(fā)要求,適合大型項(xiàng)目(收費(fèi)迹卢,用的不多辽故,適合大公司)。

4腐碱、java相關(guān)概念解釋
JDK
簡(jiǎn)單的說(shuō)JDK是面向開(kāi)發(fā)人員使用的SDK誊垢,它提供了Java的開(kāi)發(fā)環(huán)境和運(yùn)行環(huán)境。SDK是Software Development Kit 一般指軟件開(kāi)發(fā)包症见,可以包括函數(shù)庫(kù)喂走、編譯程序等
JRE
JRE(Java Runtime Environment,Java運(yùn)行環(huán)境)谋作,也就是Java平臺(tái)芋肠。所有的Java程序都要在JRE下才能運(yùn)行。JDK的工具也是Java程序瓷们,也需要JRE才能運(yùn)行业栅。為了保持JDK的獨(dú)立性和完整性,在JDK的安裝過(guò)程中谬晕,JRE也是安裝的一部分碘裕。所以,在JDK的安裝目錄下有一個(gè)名為jre的目錄攒钳,用于存放JRE文件帮孔。
JVM
JVM(Java Virtual Machine,Java虛擬機(jī))是JRE的一部分不撑。它是一個(gè)虛構(gòu)出來(lái)的計(jì)算機(jī)文兢,是通過(guò)在實(shí)際的計(jì)算機(jī)上仿真模擬各種計(jì)算機(jī)功能來(lái)實(shí)現(xiàn)的。JVM有自己完善的硬件架構(gòu)焕檬,如處理器姆坚、堆棧、寄存器等实愚,還具有相應(yīng)的指令系統(tǒng)兼呵。Java語(yǔ)言最重要的特點(diǎn)就是跨平臺(tái)運(yùn)行兔辅。使用JVM就是為了支持與操作系統(tǒng)無(wú)關(guān),實(shí)現(xiàn)跨平臺(tái)击喂。

Tomcat服務(wù)器

開(kāi)源小型web服務(wù)器 维苔,完全免費(fèi),主要用于中小型web項(xiàng)目懂昂,只支持Servlet和JSP 等少量javaee規(guī)范(就是JavaWeb編程接口)


image.png

apache是web服務(wù)器介时,tomcat是應(yīng)用(java)服務(wù)器,它只是一個(gè)servlet容器凌彬,可以認(rèn)為是apache的擴(kuò)展沸柔,處理動(dòng)態(tài)網(wǎng)頁(yè)部分。但是可以獨(dú)立于apache運(yùn)行饿序。

1.tomcat服務(wù)器與servlet版本的關(guān)系
servlet:sun公司提供的用于開(kāi)發(fā)動(dòng)態(tài)web資源的技術(shù)勉失。
jsp:(java server page)羹蚣,java提供的一門(mén)開(kāi)發(fā)web網(wǎng)頁(yè)的技術(shù)原探。
tomcat軟件:java開(kāi)發(fā)的。java軟件運(yùn)行的時(shí)候需要jdk顽素。
在項(xiàng)目部署的時(shí)候咽弦,如果對(duì)于Web應(yīng)用沒(méi)有選擇正確的Web服務(wù)器版本,應(yīng)用可能不能正常運(yùn)行胁出。下圖是根據(jù)官方給的Servlet/JSP各規(guī)范與Web服務(wù)器Tomcat各版本的對(duì)應(yīng)關(guān)系整理的型型,如:支持Servlet 3.1、JSP 2.3規(guī)范的Web服務(wù)器為T(mén)omcat 8.0.X

image.png

向下兼容全蝶。tomcat7也支持servlet3.0/jsp2.2規(guī)范闹蒜,可以支持javaee6.0當(dāng)前企業(yè)常用的版本 6.* / 7./8.

2.Tomcat基本使用
1)、下載并安裝
A.到apache官網(wǎng)抑淫。www.apache.org http://jakarta.apache.org(產(chǎn)品的主頁(yè))
B.安裝版:window (安裝包格式:exe绷落、msi) linux(安裝包格式:rmp) ,一臺(tái)電腦上只能安裝一個(gè)Tomcat
C.壓縮版:window(安裝包格式:rar,zip) linux(安裝包格式:tar始苇,tar.gz),無(wú)需安裝砌烁,解壓即可用,解壓多少份都可以

2)催式、運(yùn)行和關(guān)閉
A.Tomcat啟動(dòng)需要使用JDK函喉,所以需要配置JDK環(huán)境變量
右擊“我的電腦”-->"高級(jí)"-->"環(huán)境變量"
JAVA_HOME:jdk的安裝路徑,如:C:\Program Files\Java\jdk1.6.0_30
classpath:java加載類(lèi)路徑,只有類(lèi)在classpath中java命令才能識(shí)別荣月,在路徑前加了個(gè)"."表示當(dāng)前路徑管呵。
變量值為:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
path:系統(tǒng)在任何路徑下都可以識(shí)別java,javac命令。變量值為:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin(注意變量值之間用“;”隔開(kāi))
驗(yàn)證jdk是否配置成功:打開(kāi)控制臺(tái)(cmd命令打開(kāi)窗口)哺窄。輸入java -version測(cè)試捐下。

B.啟動(dòng)
a.startup.bat文件啟動(dòng)
進(jìn)入tomcat的bin目錄顿天,找到startup.bat文件,雙擊即可蔑担; 會(huì)有一個(gè)黑窗口牌废,黑窗口不要關(guān)閉。(如果關(guān)閉啤握,相當(dāng)于把tomcat停止了鸟缕。)
在瀏覽器地址欄中輸入:http://localhost:8080 或者 http://127.0.0.1:8080localhost ,如果看到如下頁(yè)面排抬,證明啟動(dòng)成功

image.png

b.命令行啟動(dòng)懂从,將當(dāng)前目錄切換 到你tomcat目錄\bin目錄下
再執(zhí)行“catalina run” 這個(gè)命令啟動(dòng)Tomcat
當(dāng)Tomcat啟動(dòng)失敗的時(shí)候,會(huì)有一閃而過(guò)的情況蹲蒲。
當(dāng)我們使用catalina run 這個(gè)命令啟動(dòng)Tomcat的時(shí)候番甩,哪怕有錯(cuò)誤,我們也可以清楚的看到tomcat失敗的原因届搁。不會(huì)一閃而過(guò)缘薛。

C.關(guān)閉
第一種:Ctrl+C鍵 關(guān)閉Tomcat服務(wù)器
第二種:點(diǎn)擊Tomcat窗口的右上角關(guān)閉按鈕 (暴力停止服務(wù)器)
第三種:找到tomcat目錄/bin/shutdown.bat文件,雙擊執(zhí)行關(guān)閉Tomcat卡睦。

3)宴胧、配置tomcat的端口
8080: tomcat默認(rèn)的端口
3306:mysql數(shù)據(jù)庫(kù)的端口
1521: orace數(shù)據(jù)庫(kù)的端口。
http的默認(rèn)端口是80表锻,如果訪問(wèn)的時(shí)候輸入http://www.baidu.com相當(dāng)于http://www.baidu.com:80恕齐。當(dāng)真正在項(xiàng)目上線之后,通常采用80瞬逊,修改方法如下:
A.找到tomcat目錄/conf/server.xml
B.修改port的值显歧,將port端口的值修改為80

image.png

C.然后在瀏覽器中輸入 http://127.0.0.1:80 或 http://127.0.0.1 訪問(wèn)測(cè)試
image.png

4)、Tomcat的目錄結(jié)構(gòu)


image.png

bin:該目錄下存放的是二進(jìn)制可執(zhí)行文件确镊,如果是安裝版士骤,那么這個(gè)目錄下會(huì)有兩個(gè)exe文件:tomcat6.exe、tomcat6w.exe骚腥,前者是在控制臺(tái)下啟動(dòng)Tomcat敦间,后者是彈出UGI窗口啟動(dòng)Tomcat;如果是解壓版束铭,那么會(huì)有startup.bat和shutdown.bat文件廓块,startup.bat用來(lái)啟動(dòng)Tomcat,但需要先配置JAVA_HOME環(huán)境變量才能啟動(dòng)契沫,shutdawn.bat用來(lái)停止Tomcat带猴;

conf:這是一個(gè)非常非常重要的目錄,這個(gè)目錄下有四個(gè)最為重要的文件:
server.xml:配置整個(gè)服務(wù)器信息懈万。例如修改端口號(hào)拴清,添加虛擬主機(jī)等靶病;下面會(huì)詳細(xì)介紹這個(gè)文件;
tomcatusers.xml:存儲(chǔ)tomcat用戶的文件口予,這里保存的是tomcat的用戶名及密碼娄周,以及用戶的角色信息』ν#可以按著該文件中的注釋信息添加tomcat用戶煤辨,然后就可以在Tomcat主頁(yè)中進(jìn)入Tomcat Manager頁(yè)面了;
web.xml:部署描述符文件木张,這個(gè)文件中注冊(cè)了很多MIME類(lèi)型众辨,即文檔類(lèi)型。這些MIME類(lèi)型是客戶端與服務(wù)器之間說(shuō)明文檔類(lèi)型的舷礼,如用戶請(qǐng)求一個(gè)html網(wǎng)頁(yè)鹃彻,那么服務(wù)器還會(huì)告訴客戶端瀏覽器響應(yīng)的文檔是text/html類(lèi)型的,這就是一個(gè)MIME類(lèi)型妻献≈胫辏客戶端瀏覽器通過(guò)這個(gè)MIME類(lèi)型就知道如何處理它了。當(dāng)然是在瀏覽器中顯示這個(gè)html文件了旋奢。但如果服務(wù)器響應(yīng)的是一個(gè)exe文件泳挥,那么瀏覽器就不可能顯示它然痊,而是應(yīng)該彈出下載窗口才對(duì)至朗。MIME就是用來(lái)說(shuō)明文檔的內(nèi)容是什么類(lèi)型的!
context.xml:對(duì)所有應(yīng)用的統(tǒng)一配置剧浸,通常我們不會(huì)去配置它锹引。
lib:Tomcat的類(lèi)庫(kù),里面是一大堆jar文件唆香。如果需要添加Tomcat依賴的jar文件嫌变,可以把它放到這個(gè)目錄中,當(dāng)然也可以把應(yīng)用依賴的jar文件放到這個(gè)目錄中躬它,這個(gè)目錄中的jar所有項(xiàng)目都可以共享之腾啥,但這樣你的應(yīng)用放到其他Tomcat下時(shí)就不能再共享這個(gè)目錄下的Jar包了,所以建議只把Tomcat需要的Jar包放到這個(gè)目錄下冯吓;

logs:這個(gè)目錄中都是日志文件倘待,記錄了Tomcat啟動(dòng)和關(guān)閉的信息,如果啟動(dòng)Tomcat時(shí)有錯(cuò)誤组贺,那么異常也會(huì)記錄在日志文件中凸舵。

temp:存放Tomcat的臨時(shí)文件,這個(gè)目錄下的東西可以在停止Tomcat后刪除失尖!

webapps:存放web項(xiàng)目的目錄啊奄,其中每個(gè)文件夾都是一個(gè)項(xiàng)目渐苏;如果這個(gè)目錄下已經(jīng)存在了目錄,那么都是tomcat自帶的菇夸。項(xiàng)目琼富。其中ROOT是一個(gè)特殊的項(xiàng)目,在地址欄中沒(méi)有給出項(xiàng)目目錄時(shí)庄新,對(duì)應(yīng)的就是ROOT項(xiàng)目公黑。http://localhost:8080/examples,進(jìn)入示例項(xiàng)目摄咆。其中examples就是項(xiàng)目名凡蚜,即文件夾的名字。

work:運(yùn)行時(shí)生成的文件吭从,最終運(yùn)行的文件都在這里朝蜘。通過(guò)webapps中的項(xiàng)目生成的!可以把這個(gè)目錄下的內(nèi)容刪除涩金,再次運(yùn)行時(shí)會(huì)生再次生成work目錄谱醇。當(dāng)客戶端用戶訪問(wèn)一個(gè)JSP文件時(shí),Tomcat會(huì)通過(guò)JSP生成Java文件步做,然后再編譯Java文件生成class文件副渴,生成的java和class文件都會(huì)存放到這個(gè)目錄下。

LICENSE:許可證全度。
NOTICE:說(shuō)明文件煮剧。

更多詳細(xì)介紹,請(qǐng)參見(jiàn)文章:https://blog.csdn.net/OnlyLove_longshao/article/details/53057381

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末将鸵,一起剝皮案震驚了整個(gè)濱河市勉盅,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌顶掉,老刑警劉巖草娜,帶你破解...
    沈念sama閱讀 221,273評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異痒筒,居然都是意外死亡宰闰,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門(mén)簿透,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)移袍,“玉大人,你說(shuō)我怎么就攤上這事萎战「廊荩” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 167,709評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵蚂维,是天一觀的道長(zhǎng)戳粒。 經(jīng)常有香客問(wèn)我路狮,道長(zhǎng),這世上最難降的妖魔是什么蔚约? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,520評(píng)論 1 296
  • 正文 為了忘掉前任奄妨,我火速辦了婚禮,結(jié)果婚禮上苹祟,老公的妹妹穿的比我還像新娘砸抛。我一直安慰自己,他們只是感情好树枫,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,515評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布直焙。 她就那樣靜靜地躺著,像睡著了一般砂轻。 火紅的嫁衣襯著肌膚如雪奔誓。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,158評(píng)論 1 308
  • 那天搔涝,我揣著相機(jī)與錄音厨喂,去河邊找鬼。 笑死庄呈,一個(gè)胖子當(dāng)著我的面吹牛蜕煌,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播诬留,決...
    沈念sama閱讀 40,755評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼斜纪,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了故响?” 一聲冷哼從身側(cè)響起傀广,我...
    開(kāi)封第一講書(shū)人閱讀 39,660評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎彩届,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體誓酒,經(jīng)...
    沈念sama閱讀 46,203評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡樟蠕,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,287評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了靠柑。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片寨辩。...
    茶點(diǎn)故事閱讀 40,427評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖歼冰,靈堂內(nèi)的尸體忽然破棺而出靡狞,到底是詐尸還是另有隱情,我是刑警寧澤隔嫡,帶...
    沈念sama閱讀 36,122評(píng)論 5 349
  • 正文 年R本政府宣布甸怕,位于F島的核電站甘穿,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏梢杭。R本人自食惡果不足惜温兼,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,801評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望武契。 院中可真熱鬧募判,春花似錦、人聲如沸咒唆。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,272評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)全释。三九已至敦腔,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間恨溜,已是汗流浹背符衔。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,393評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留糟袁,地道東北人判族。 一個(gè)月前我還...
    沈念sama閱讀 48,808評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像项戴,于是被迫代替她去往敵國(guó)和親形帮。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,440評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容