tomcat安裝啓動配置

軟件的架構:BS和CS
Web介紹
JavaEE規範
模擬一個Tomcat
Tomcat的安裝、配置
Tomcat的啓動與關閉
Tomcat的目錄結構
Tomcat啓動時常見的問題
IDEA綁定tomcat
1.軟件的架構:BS和CS
CS介紹
CS(Client/Server):客戶端/服務器模式。
 html

客戶端:須要安裝軟件。
升級維護不方便,若是服務器升級,全部的客戶端都要升級。
程序開發工做量:客戶端和服務端都須要大量的工做
BS介紹
BS(Browser/Server):瀏覽器/服務器模式。
 java

客戶端:不須要,只要有瀏覽器就能夠了。
若是服務器升級,客戶端不須要升級。
程序員開發工做量:在服務器端。
2.Web資源的分類:(靜態和動態)
什麼是Web?
web翻譯過來是網站/網頁
靜態資源特色:
靜態頁面就是設計者把頁面上全部東西都先設計好了,訪問多少次頁面內容都是同樣的,不會變。程序員

動態資源特色:
動態頁面的內容通常都是依靠服務器端的程序來生成的,屢次訪問頁面的內容可能不一樣。好比(網購的購物車,開始沒有,再看就添加了就是動態)。web

WEB服務器
 sql

硬件服務器是一臺功能很強大的電腦
Web服務器是運行在硬件服務器上的一個軟件,主要功能是提供網上信息瀏覽服務。
Web服務器又稱爲Web容器。apache

3.JavaEE規範
JavaEE是企業裏面開發網站的一套標準,不一樣廠商的JavaWeb服務器都實現了這些接口,在JavaEE中一共有13種規範。實現的規範越多,服務器的功能越強。
常見的JavaEE規範有:JDBC,JSP、Servlet、EJB、XML、JNDI等
經常使用的Web服務器
 
Tomcat:
在小型的應用系統或者有特殊須要的系統中,可使用一個免費的Web服務器:Tomcat,該服務器支持所有JSP以Servlet規範。Tomcat運行穩定、可靠且高效。已成爲目前開發企業JavaWeb應用的最佳Servlet容器選擇之一。瀏覽器

4.模擬一個Tomcat
使用多線程和Socket模擬一個簡單的Web服務器,將服務器上的資源共享給瀏覽器
 
代碼
package com.itheima.demo01;tomcat

import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.sql.Timestamp;服務器

public class Demo01 {
    public static void main(String[] args) throws IOException {
        // 建立服務器
        ServerSocket serverSocket = new ServerSocket(8080);
        // Timestamp 輸出當前時間,精確到毫秒
        System.out.println(new Timestamp(System.currentTimeMillis()) + "服務器啓動");
        // 接收客戶端的請求
        while(true) {
            Socket socket = serverSocket.accept();  // 獲得請求,返回Socket對象
            System.out.println(new Timestamp(System.currentTimeMillis()) + "," + socket.getInetAddress().getHostAddress() + "鏈接");
            new MyTomcat(socket).start();  // 啓動線程
        }
    }
}多線程

/**
模擬web容器:採用多線程的方法,每一個用戶建立一個線程 */
class MyTomcat extends Thread {

    private Socket socket;

    //經過構造方法傳遞Socket對象
    public MyTomcat(Socket socket) {
        this.socket = socket;
    }

    //處理每一個線程的任務
    @Override
    public void run() {
        //讀取本地服務器的資源,獲得輸入流對象
        try (
                FileInputStream inputStream = new FileInputStream("c:/MyFileTest/index.html");
                //獲得輸出流,經過Socket獲得
                OutputStream outputStream = socket.getOutputStream();
        ) {
            //將輸入流中數據複製到輸出流中
            int len = 0;
            byte[] buf = new byte[512];
            while((len = inputStream.read(buf))!=-1) {
                outputStream.write(buf,0,len);
            }
            System.out.println("網頁下載成功");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Web服務器的原理
Web服務器是一個TCP的服務端,瀏覽器是tcp的客戶端,任何電腦的瀏覽均可以連接Web服務器,Web服務器將服務器上的資源返回給瀏覽,瀏覽器就能顯示這個資源
咱們須要本身編寫Web服務器嗎?
不要,有現成的,咱們後面的學習都使用Tomcat

5.Tomcat的安裝、配置
tomcat的產品頁面: http://tomcat.apache.org/
 

安裝
直接解壓就能夠了,建議:不要有中文的目錄,目錄層次不要太深
 
解壓後
 

環境變量的配置
添加Tomcat的安裝目錄
 
配置Path,能夠在任何路徑下訪問bin文件夾的可執行文件
 
6.Tomcat的啓動與關閉
啓動的命令:startup.bat
 
經過瀏覽器來訪問:

 
關閉的命令:shutdown.bat 正常關閉
也能夠直接關閉容器,中斷,非正常關閉。
注:shutdown是window中一條內部命令,輸入命令的時候要加上bat
這兩條命令都在bin目錄下

7.Tomcat的目錄結構
瞭解Tomcat每一個目錄的做用

目錄名                                               做用
bin                                                      存放可執行的文件:startup.bat和shutdown.bat
conf                                                      存放tomcat的配置文件:server.xml
lib                                                      存放tomcat依賴的第三方jar包
logs                                                      存放tomcat運行的日誌信息
temp                                              存放tomcat運行的一些臨時的文件
webapps                                              重點:存放咱們的網站程序(項目)
                                                       ROOT:默認的程序 http://localhost:8080/就是訪問ROOT這個程序
work                                              工做目錄,JSP編譯後的文件
8.Tomcat啓動時常見的問題
問題1:未設置JAVA_HOME環境變量
出錯信息
 

  1. 解決辦法

問題2:端口號被佔用
出錯信息
 
查看日誌文件:
 
解決方法:
方法一:找到佔用端口號的程序,進程殺掉。
 
方法二:修改tomcat的端口號(找到conf/server.xml文件)
 

修改69行端口號配置,大於1024以上。
要從新啓動tomcat
 

  1. IDEA綁定tomcat

配置步驟

配置好的後的界面,點擊OK

爲何在idea裏面配置tomcat?

之後使用idea操做tomcat啓動、關閉、部署項目方便

相關文章
相關標籤/搜索