tomcat:一个服务器的服务器软件,发布资源要用的
  服务器组成:
    1.服务器硬件
    2.服务器软件
    3.项目(一堆资源的集合)
    4.资源
tomcat本身是一个java程序,必须依赖jre运行
eclipse是一个java开发软件,tomcat是一个服务器软件,不用每一次都去将项目部署到服务器,将其集成到eclipse
将tomcat集成到eclipse,window/Proferences/Server/Runtime Environments
  部署项目:
    在Servers下将项目add进Tomcat中

eclipse存储java文件:src bin
存储javaEE文件:src build
tomcat存储要发布的文件:webapps/项目名/资源
在eclipse中:WebContent

服务器具体概念介绍:
  1.服务器硬件(PC机,专门的服务器设备,手机)
  2.服务器软件(HBuilder,tomcat,数据库内置服务器等。可以将数据在网络上共享)
  3.服务器软件中运行一些相关程序,可以产生一些资源
  4.资源分成两种:
    A:静态资源 ---- HTML页面 ---- 只要原码不修改,任何时候访问到的结果都是一样的
    B:动态资源 ---- 通过程序生成HTML页面 ---- 原码不修改的情况下,不同的访问,访问的结果也不一样
       在java中生成页面的程序是Servlet(服务器端的Java小程序)

客户端怎么访问服务器资源:
  ip ---- 定位服务器硬件
  端口号 ---- 定位服务器软件
  项目名 ---- 定位服务器软件中的程序
  路径 ---- 定位服务器软件中的资源
服务器:
  A:存在于网络上的一台硬件
  B:通过端口号定位一个程序
  C:程序会将资源暴露出去,供客户端访问

一.tomcat
  1.Eclipse怎么将项目发布到tomcat的?
    A:在tomcat的webapps下面建一个与当前项目同名的文件夹
       将项目中的webcontent下面的内容复制到当前文件夹下
    B:如果在webcontent外面编写代码,这些资源是不能被发布的,只有webcontent的子级静态资源才能被浏览器直接访问
    C:但是src下面的java程序不同,是可以访问的
     因为项目发布时,class文件会被单独整合进webcontent/WEB-INF/classes文件夹
       eclipse 的工作空间 ------- 内容与eclipse中的项目结构对应,build 文件夹存储的是 class 文件
       Tomcat 的 webapps目录---- 先将build文件夹复制进 webcontent/WEB-INF 下面,然后再部署到 tomcat 当前项目下

二.HTTP协议(在请求和响应之后才产生的页面)
  1.HTTP协议
    协议:规则 规矩 约定,涉及多方的
    HTTP协议是浏览器和服务器之间进行数据传输时,遵循的规则
  2.HTTP协议只是一种理论,必须要结合具体的代码实现来理解
  3.HTTP协议(超文本传输协议)
    版本:1.0 ---- 每获取一个资源,都要创建并销毁一个连接
       1.1 ---- 获取多个资源时,共用一个连接,效率更高
  4.请求协议 ---- 浏览器向服务器发送数据时,要遵守的规则
   响应协议 ---- 服务器向浏览器发送数据时,要遵守的规则
   结构组成:
      行
      头
      体
  请求协议:
    请求头:
      refer:
        产生场景:A页面跳转到B页面时,请求B页面时,会有refer,告诉B我是从哪跳过来
               此步骤中A页面已经请求响应完毕,然后提交数据到服务器请求跳转到B页面,B页面发送请求
               如果B页面直接请求服务器,则不会有refer
        具体应用:
            A:防盗链
            B:网站统计
      if-modified-since(了解)
            A、第一次访问页面,服务器要发送html内容(浏览器本地进行缓存)以及该文件的最后修改时间,浏览器保存该时间
            B、第二次以及以后访问,携带 if-modified-since 以及对应的A中的最后修改时间到服务器
            C、服务器取出浏览器发送过来的时间值,和当前资源的最后修改时间进行判断
               如果一样,浏览器取本地缓存,如果不一样,发送新内容到浏览器
            D、结合响应的 last-modified 使用(凭直觉是如果不相等时要响应两次)
  响应协议:
    响应头:
      location ---- 结合302使用
      centent-disposition ---- 和文件下载相关
      set-cookie ---- 和Cookie Session相关
      refresh ----- 时间值
        服务器发送该属性到浏览器,浏览器解析该属性,取出值,根据该值隔固定时间后自动刷新一次
        应用场景:
          一些时时变动的数据访问,比如:天气预报,股票行情
    响应体:存储具体的响应数据
BS 和 CS 比较:
  CS中服务器可以主动向客户端发送数据
  BS中服务器不能主动向浏览器发数据
压缩包:
  封装文件的数据,不压缩的时候存储具体的数据

tomcat服务器和HTTP协议的更多相关文章

  1. Tomcat服务器与HTTP协议

    Tomcat服务器与HTTP协议 一.  Tomcat服务器 1.tomcat服务器 1.web :网页,它代表的是网络上的资源.(java技术开发动态的web资源,即动态web页面,在Java中,动 ...

  2. 关于Tomcat服务器中的协议及请求过程

    关于Tomcat服务器中采用的协议:在Tomcat的server.xml文件中可以找到如下几个Connector <!-- 1. HTTP --> <Connector port=& ...

  3. tomcat服务器和http协议笔试题

    tomcat与web程序结构与Http协议与HttpUrlConnection 考查的知识点:tomcat服务器相关信息 1.下面关于tomcat服务器描述正确的是() (难度A) A. tomcat ...

  4. JavaWeb 后端 <一> 之 Tomcat服务器 - Http协议 学习笔记

    1.Web开发概述 1.1服务器上的资源分类: a.静态资源:指web页面中供人们浏览的数据始终是不变.html css js 图片 多媒体 b.动态资源:指web页面中供人们浏览的数据是由程序产生的 ...

  5. Linux下安装Tomcat服务器和部署Web应用

    一.上传Tomcat服务器

  6. JavaWeb开发学习(二)-配置Tomcat服务器

    1. 下载Tomcat服务器 Tomcat是一个免费.开源的JavaWeb服务器. Tomcat官网是http://tomcat.apache.org/ 我使用的是版本是Tomcat7.0,下载Zip ...

  7. JavaWeb---总结(三)Tomcat服务器学习和使用(一)

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml ...

  8. [Java Web] 6、Tomcat服务器的安装及配置以及JSP技术笔记

    目录  1.Web容器简介  2.Tomcat粗介及配置粗讲  3.Tomcat服务器配置 3-1.修改端口号  3-2.配置虚拟目录 3-3.配置首页  4.JSP执行流程  5.JSP粗略了解 1 ...

  9. JavaWeb学习总结(二)——Tomcat服务器学习和使用(一)

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml ...

随机推荐

  1. 【JavaSE】运行时类型信息(RTTI、反射)

    运行时类型信息使得你可以在程序运行时发现和使用类型信息.--<Think in java 4th> **** 通常我们在面向对象的程序设计中我们经常使用多态特性使得大部分代码尽可能地少了解 ...

  2. Tomcat启动脚本(1)startup.bat

    @echo off rem Licensed to the Apache Software Foundation (ASF) under one or more rem contributor lic ...

  3. 厉害了,Spring团队又开源 nohttp 项目!

    作者:h4cd 来源:https://www.oschina.net/news/107377/spring-opensource-nohttp Spring 团队开源 nohttp 项目,用以查找.替 ...

  4. 清除浮动最有效的css写法

    说起来呢,基本上只要你给容器div加了float的属性,就需要清除浮动来使页面显示正常,那么,到底有什么方法可以让浮动轻松清除呢? 可以用display:flex;替代,但是它对IE8,9支持不是很好 ...

  5. ArcMap属性表操作接口ITableWindow3

    ITableWindow3 tableWindow3 = new TableWindowClass                {                    //Layer = laye ...

  6. 2018-2-13-win10-uwp-改变鼠标

    title author date CreateTime categories win10 uwp 改变鼠标 lindexi 2018-2-13 17:23:3 +0800 2018-2-13 17: ...

  7. hdu 3450 后缀数组

    题目大意: 求多个字符串的最长公共子串 基本思路: 参加我的博客hdu2774 代码如下: #include<cstdio> #include<cstring> using n ...

  8. hdu 5791 思维dp

    题目描述: 求序列A,B的公共子序列个数: 基本思路: 想到了dp,选的状态也对,但是就是就是写不出状态转移方程,然后他们都出了,到最后我还是没出,很难受,然后主要是没有仔细考虑dp[i][j],dp ...

  9. 半途而废的Java爬虫学习经历

    最近在面试,发现Java爬虫对于小数据量数据的爬取的应用还是比较广,抽空周末学习一手,留下学习笔记 Java网络爬虫 简单介绍 爬虫我相信大家都应该知道什么,有什么用,主要的用途就是通过程序自动的去获 ...

  10. Yii2的一些问题

    Yii2中删除能不能串着用 Yii2中find.findAll有什么区别 Yii2中User::findOne($id)和User::find->where(['id'=>1])-> ...