Tomcat

今日内容

  1. Web相关概念回顾
  2. Web服务器软件Tomcat

第一章 Web相关概念回顾

  1. 软件架构:

    1. C/S:客户端/服务器端;
    2. B/S:浏览器/服务器端。
  2. 资源分类:

    1. 静态资源:所有用户访问后,得到的结果都是一样的,称为静态资源.静态资源可以直接被浏览器解析;
      如: HTML,CSS,JavaScript
    2. 动态资源:每个用户访问相同资源后,得到的结果可能不一样。称为动态资源。动态资源被访问后,需要先转换为静态资源,再返回给浏览器。
      如:Servlet/JSP,PHP,ASP…
  3. 网络通信三要素:

    1. IP:电子设备(计算机)在网络中的唯一标识;
    2. 端口:应用程序在计算机中的唯一标识(0~65536);
    3. 传输协议:规定了数据传输的规则
      1. TCP:安全协议,三次握手。 速度稍慢;
      2. UDP:不安全协议。 速度快。

第二章 Web服务器软件

2.1 概述

  1. 服务器:安装了服务器软件的计算机。
  2. 服务器软件:接收用户的请求,处理请求,做出响应
    • Web服务器软件:接收用户的请求,处理请求,做出响应
      • 在Web服务器软件中,可以部署Web项目,让用户通过浏览器来访问这些项目;
      • 本质是一个Web容器,Web项目都是在该容器中运行的。
    • 常见的java相关的web服务器软件:
      • WebLogic:Oracle公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费的;
      • WebSphere:IBM公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费的;
      • JBOSS:JBOSS公司的,大型的JavaEE服务器,支持所有的JavaEE规范,收费的;
      • Tomcat:Apache基金组织,中小型的JavaEE服务器,仅仅支持少量的JavaEE规范Servlet/JSP。开源的,免费的。
  3. Java动态项目的目录结构:
    ══ 项目的根目录
    ╚═ WEB-INF目录
    ------╚═ web.xml:Web项目的核心配置文件
    ------╚═ classes目录:放置字节码文件的目录
    ------╚═ lib目录:放置依赖的jar包

2.2 Tomcat服务器

2.2.1 下载、安装及卸载
  1. 下载:http://tomcat.apache.org/
    在这里插入图片描述
    在这里插入图片描述
  2. 安装:解压压缩包即可。

    注意:安装目录建议不要有中文和空格

  3. 卸载:删除目录就行了。
2.2.2 目录结构

在这里插入图片描述

2.2.3 启动、关闭
  1. Windows:
    • 双击运行 bin/startup.bat 文件,启动Tomcat服务器;
    • 双击运行 bin/shutdown.bat 文件,或者在命令行中键入 ctrl+C 关闭Tomcat服务器。
  2. Mac:
    • 终端中在 bin 目录下输入命令 ./startup.sh 启动Tomcat服务器;
    • 终端中在 bin 目录下输入命令 ./shutdown.sh 关闭Tomcat服务器。
2.2.4 访问
  1. 访问本机服务器:http://localhost:8080http://127.0.0.1:8080
  2. 访问其他服务器:http://别人的ip:8080
    在这里插入图片描述
2.2.5 可能遇到的问题
  1. 黑窗口一闪而过:

    • 原因: 没有正确配置JAVA_HOME环境变量。
      在这里插入图片描述
      用记事本打开 startup.bat 文件,可以看到该批处理文件会访问 catalina.bat 文件:
      在这里插入图片描述
      再用记事本打开 catalina.bat 文件,可以发现该文件要求由JAVA_HOME环境变量来指定JDK,否则Tomcat找不到JDK无法运行:
      在这里插入图片描述

    • 解决方案:正确配置JAVA_HOME环境变量。

      详见:Java环境配置

  2. 启动报错:重复启动服务器,端口号被占用

    • 暴力:杀死当前进程。

      • Windows:
        • 使用命令 netstat -ano 找到8080端口对应的进程号PID: 在这里插入图片描述
        • 打开任务管理器结束该PID下的进程:
          在这里插入图片描述
      • Mac:
        • 在终端输入 lsof -i tcp:8080 ,查找8080端口的占用情况并获取其PID: 在这里插入图片描述
        • 根据PID结束进程:
          • 在终端输入命令 sudo kill 5836在这里插入图片描述
          • 通过 应用程序实用工具活动监视器 根据PID结束后台进程:
            在这里插入图片描述
    • 温柔:修改自身的端口号。
      conf/server.xml 配置文件里修改端口号:
      在这里插入图片描述

      注意:一般会将Tomcat的默认端口号修改为 80 。80端口号是HTTP协议的默认端口号。这样的好处是在访问时,就不用输入端口号。

2.2.6 部署项目的方式
  1. 直接将项目放到 webapps 目录下。
    • 访问项目的访问路径(虚拟目录):http://localhost/projectName
    • 简化部署:将项目打成一个war包,再将war包放置到webapps目录下,war包会自动解压缩。
  2. 配置 conf/server.xml 文件的 <Host> 标签体中加入:
    <Context docBase="D:\projectName" path="/aaa" />
    
    其中 docBase 为项目存放的路径,path 为虚拟目录。然后访问 http://localhost/aaa
  3. conf\Catalina\localhost 目录下创建任意名称的xml文件(比如 bbb.xml )。在文件中编写:
    <Context docBase="D:\projectName" />
    
    虚拟目录改为xml文件的名称,即访问 http://localhost/bbb

第三章 IDEA中使用Tomcat

  1. 将Tomcat集成到IDEA中:
    • 在菜单栏点击 RunEdit Configuration...在这里插入图片描述
    • 点击弹出的 Run/Debug Configurations 功能框右侧上方的 + 按钮,在下拉菜单中选择 Tomcat ServerLocal ,如果没有则点击最下方的 xxx more items... 在里面找:
      在这里插入图片描述
    • 配置Tomcat Server:
      在这里插入图片描述
  2. 创建JavaEE项目:
    在这里插入图片描述
    在这里插入图片描述
  3. 运行/调试项目:
    在这里插入图片描述
    在这里插入图片描述
  4. IDEA的Web工程部署目录:
    IDEA会为每一个Tomcat部署的项目单独建立一份配置文件 项目名.xml ,查看控制台的log日志:
    CATALINA_BASE: /Users/ernest/Library/Caches/IntelliJIdea2019.3/tomcat/Tomcat_9_0_14_day13_tomcat
    
    1. 在目录 /Users/ernest/Library/Caches/IntelliJIdea2019.3/tomcat/Tomcat_9_0_14_day13_tomcat/conf/Catalina/localhost 下打开 day13_tomcat.xml

      <Context path="/day13_tomcat" docBase="/Users/ernest/Documents/IdeaProjects/day13_tomcat/out/artifacts/day13_tomcat_war_exploded" />
      

      其中 path 为浏览器访问的项目路径,docBase 路径则存放Web项目的web目录下的资源文件。

      WEB-INF目录下的资源不能被浏览器直接访问。

    2. 在目录 /Users/ernest/Library/Caches/IntelliJIdea2019.3/tomcat/Tomcat_9_0_14_day13_tomcat/conf/ 下打开 server.xml 文件,此时端口号为 8080

       <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" />
      

      可以在 Run/Debug Configurations 中修改端口号为 80 ,同时需要将 On 'Update' Action 选项设为 Update resources
      在这里插入图片描述

      重新部署后可以看到 server.xml 文件中已改为 80 端口:

      <Connector connectionTimeout="20000" port="80" protocol="HTTP/1.1" redirectPort="8443" />
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值