java web概念

JavaWeb

  • 使用Java语言开发基于互联网的项目。

软件架构

  • C/S:Cient/Server 客户端/服务器端
    • 在用户本地有一个客户端程序,在远程有一个服务器端程序。
    • 如:QQ等
    • 优点:
      • 用户体验好
    • 缺点:
      • 开发,安装,部署,维护麻烦
  • B/S:Brower/Server 浏览器/服务器端
    • 只需要一个浏览器,用户通过不同的网址(URL),客户访问不同的服务器端程序
    • 优点:
      • 开发,安装,部署,维护,简单
    • 缺点;
      • 如果应用过大,用户体验可能会受到影响;
      • 对硬件要求过高。

B/S架构

  • 资源分类:

    1. 静态资源:
      1. 使用静态网页开发技术发布的资源
      2. 特点:
        1. 所有用户访问得到的结果是一样的;
        2. 如:文本,图片,音频,视频,HTML,CSS,JavaScript(静态开发技术)
        3. 如果用户请求的是静态资源,那么服务器会直接将静态资源发送给浏览器,浏览器内置了静态资源的解析引擎,可以展示静态资源,称为响应
    2. 动态资源
      1. 使用动态网页技术发布的资源
      2. 特点:
        1. 所有用户访问,得到的结果可能不一样。
        2. 如:jsp/servlet,php,asp等动态网页开发技术
        3. 如果用户请求的是动态资源,服务器会执行动态资源,转换为静态资源再发送给浏览器。
  • 学习动态资源必须先学习静态资源,即静态网页技术三剑客。(HTML,CSS,JavaScript)

  • HTML:用于搭建基础网页,展示页面内容;

  • CSS:用于美化页面,布局页面。

  • JavaScript:控制页面的元素,使页面有动态的效果。

网络通信三要素

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

web服务器软件

  • 服务器:安装了服务器软件的计算机;
  • 服务器软件:接收用户的请求,处理请求,做出响应;
  • web服务器软件:也能接收用户的请求,处理请求,做出响应,但有其特点:
    • 在web服务器软件中,可以部署web项目,让用户通过浏览器来访问这些项目;
    • 动态资源必须在web服务器软件上使用,web服务器软件也被称为web容器
  • 常见的java相关的web服务器软件:
    • webLogic:orgcle公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费;
    • webSphere:IBM公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费;
    • JBOSS:JBOSS公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费;
    • Tomcat:Apache基金组织,中小型的JavaEE服务器,仅仅支持少量的JavaEE规范servle/jso、开源,免费。