[toc]

1. web的概述

1.1 软件架构

  1. C/S结构 Client/Server 服务器-客户机,即Client-Server(C/S)结构。C/S结构通常采取两层结构。服务器负责数据的管理,客户机负责完成与用户的交互任务。
  2. B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如[Netscape Navigator](https://baike.baidu.com/item/Netscape Navigator)或[Internet Explorer](https://baike.baidu.com/item/Internet Explorer),服务器安装[SQL Server](https://baike.baidu.com/item/SQL Server)、Oracle、MYSQL等数据库。浏览器通过Web Server 同数据库进行数据交互。

1.2 资源分类

  1. 静态资源:所有用户访问得到的结果都是一样的,这样的资源称之为静态资源,静态资源相应到浏览器之后,被浏览器解析。比如:html,css,javascript.
  2. 动态资源:每个用户访问相同的资源,得到的结果可能不一样。这样的资源就被称之为动态资源。动态资源先转换成静态资源,然后相应给浏览器。比如:php,asp,servlet,jsp

1.3 网络通讯的三个要素

1.传输协议:规定了数据传输的规则。

  • tcp协议:有连接,安全协议,三次握手。速度慢。 文件传输。
  • udp协议:无连接,不安全协议。 直播,点播,广播。

2.ip地址:电子设备(计算机)的在网络中的唯一标识。

3.端口号:应用程序在电子设备(计算机)中的位置标识。

2. web服务器软件

nginx和tomcat的区别是:nginx常用做静态内容服务和代理服务器,直接外来请求转发给后面的应用服务器;tomcat更多用来做一个应用的容器。

什么是web服务器?服务器:安装了服务器软件的计算机

什么是服务器软件?接收用户的请求,处理请求,响应结果。

web服务器软件作用?

  1. 可以用来部署web项目,让用户通过浏览器来访问这些项目。
  2. web容器。

常见的java web服务器软件

服务器名称 所属公司/单位 服务器类型 支持 是否收费和开源
weblogic oracle公司的产品 大型的JAVAEE服务器 支持所有的java规范 收费
websphere IBM公司的产品 大型的JAVAEE服务器 支持所有的java规范 收费
JBoss JBoss公司的产品 大型的JAVAEE服务器 支持所有的java规范 收费
tomcat Apache基金会的产品 中小型的JAVAEE服务器 支持少量的JAVAEE规范 Servlet/jsp开源的,免费的

2.1 tomcat服务器

web服务器软件

  1. 下载:https://tomcat.apache.org
  2. 安装:解压到指定的目录就安装完成了。(安装路径下不能有中文,不能有空格
  3. 卸载:删除目录
  4. 启动:
    • 直接进到tomcat目录中 执行:bin/startup.bat,双击打开文件就能启动。
    • 访问–浏览器输入:
  5. 关闭tomcat有两种方式:
    1. 正常关闭:
              通过bin/shutdown.bat进行关闭,这种事正常关闭。
                 **ctrl+c**关闭;这也是正常关闭
      
    2. 强制关闭:
              通过点击“X”号(窗口右上角)关闭,这是强制关闭
      

2.1.1 访问的tomcat可能遇到的问题

2.1.1.1 黑窗口一闪而过

Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
配置JAVA_HOME环境变量或者JRE_HOME的环境变量。就可以解决这个问题。

2.1.1.2 启动报错

1.修改端口号:进入conf目录下,修改server.xml


2.暴力关闭占用端口的程序

步骤:

  • 通过netstat -ano 拿到相关端口的占用情况。

  • netstat -aon|findstr空格”8080” 查询哪个程序占用了当前端口,删掉当前进程

  • TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 11716

  • 删掉11716这个进程就可以了,去任务管理器中杀掉。

2.1.2 tomcat目录结构

1566815306631

2.1.3 tomcat中部署项目的三种方式

  1. 将项目直接放到webapps文件夹中。可以直接放web应用文件,也可以放web应用的war包,tomcat启动时,会自动解压war包;
  2. 修改server.xml
    在Host标签中,添加一个<Context>标签
       docBase:项目的真实路径
       path:访问当前项目使用的路径地址
       <Context docBase="E:/justweb" path="/" />
    
  3. 在conf/Catalina/localhost中创建任意名称的xml文件。在文件中编写
    <Context docBase="E:/justweb"/>
       不需要path属性,当前**文件名就是path路径**。        
    

javaWeb项目的目录结构:

  • out文件夹下
    • artifacts文件夹
      • day10_war_exploded文件夹下
        • index.jsp文件
        • WEB-INF文件夹
          • web.xml文件
          • classes文件夹– java的字节码文件目录
          • lib文件夹 – 依赖的jar包