一.web相关概念

1.web是什么?

定义:Web是全球广域网,也称为万维网(www),能够通过浏览器访问的网站

比如说你平常访问的那些网站京东,腾讯,等等。以下访问腾讯的网页界面

java 最简单的服务器 javaweb服务器_java 最简单的服务器

 2JavaWeb哪又是什么勒?

定义:JavaWeb就是用Java技术来解决相关web互联网领域的技术栈

2.1那都有哪些公司的系统是使用Java语言的呢?

在这里小编为大家提供了一些公司

字节,网易和京东,亚马逊某个部门,腾讯,阿里巴巴等等都在使用Java语言

2.2JavaWeb技术栈

java 最简单的服务器 javaweb服务器_服务器_02

 2.3软件架构

  • C/S :客户端/服务器端
  • B/S:浏览器/服务器端

B/S架构

B/S 架构:Browser/Server,浏览器/服务器 架构模式,它的特点是,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端。浏览器只需要请求服务器,获取Web资源,服务器把Web资源发送给浏览器即可。大家可以通过下面这张图来回想下我们平常的上网过程:

java 最简单的服务器 javaweb服务器_服务器_03

 

2.4 资源分类

静态资源

  • 静态资源主要包含HTML、CSS、JavaScript、图片等,主要负责页面的展示。
  • 我们之前已经学过前端网页制作三剑客(HTML+CSS+JavaScript),使用这些技术我们就可以制作出效果比较丰富的网页,将来展现给用户。但是由于做出来的这些内容都是静态的,这就会导致所有的人看到的内容将是一模一样。
  • 在日常上网的过程中,我们除了看到这些好看的页面以外,还会碰到很多动态内容,比如我们常见的百度登录效果:

  • 张三登录以后在网页的右上角看到的是 张三,而李四登录以后看到的则是李四。所以不同的用户访问相同的资源看到的内容大多数是不一样的,要想实现这样的效果,光靠静态资源是无法实现的。

动态资源

  • 动态资源主要包含Servlet、JSP等,主要用来负责逻辑处理。php
  • 动态资源处理完逻辑后会把得到的结果交给静态资源来进行展示,动态资源和静态资源要结合一起使用。
  • 动态资源虽然可以处理逻辑,但是当用户来登录百度的时候,就需要输入用户名密码,这个时候我们就又需要解决的一个问题是,用户在注册的时候填入的用户名和密码、以及我们经常会访问到一些数据列表的内容展示(如下图所示),这些数据都存储在哪里?我们需要的时候又是从哪里来取呢?

java 最简单的服务器 javaweb服务器_eclipse_04

 

2.5 数据库

数据库主要负责存储数据。

整个Web的访问过程就如下图所示:

(1)浏览器发送一个请求到服务端,去请求所需要的相关资源;

(2)资源分为动态资源和静态资源,动态资源可以是使用Java代码按照Servlet和JSP的规范编写的内容;

(3)在Java代码可以进行业务处理也可以从数据库中读取数据;

(4)拿到数据后,把数据交给HTML页面进行展示,再结合CSS和JavaScript使展示效果更好;

(5)服务端将静态资源响应给浏览器;

(6)浏览器将这些资源进行解析;

(7)解析后将效果展示在浏览器,用户就可以看到最终的结果。

在整个Web的访问过程中,会设计到很多技术,这些技术有已经学习过的,也有还未涉及到的内容,都有哪些还没有涉及到呢?

2.6 网络通信三要素

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

在Web应用中,浏览器请求一个URL,服务器就把生成的HTML网页发送给浏览器,而浏览器和服务器之间的传输协议是HTTP[TCP|IP协议中的一种],所以:

  • HTML是一种用来定义网页的文本,会HTML,就可以编写网页;
  • HTTP是在网络上传输HTML的协议,用于浏览器和服务器的通信。

HTTP协议是一个基于TCP协议之上的请求-响应协议,它非常简单,我们先使用Chrome浏览器查看新浪首页,然后选择View - Developer - Inspect Elements就可以看到HTML:

切换到Network,重新加载页面,可以看到浏览器发出的每一个请求和响应:

对于Browser来说,请求页面的流程如下:

  1. 与服务器建立TCP连接;
  2. 发送HTTP请求;
  3. 收取HTTP响应,然后把网页在浏览器中显示出来。

二.JavaWeb环境配置,以及服务器搭建

1.服务器

本质上还是一台电脑,那么安装了服务器软件,也就是说,这个电脑是个硬件,我们得安个服务器软件,那么这个电脑才能被称为一台真正的服务器,安装了Web服务器软件,那我的电脑就是一个Web服务器,可以让别人也访问到我.

  • 服务器软件:接收用户的请求,处理请求,做出响应
  • web服务器软件:接收用户的请求,处理请求,做出响应。
  • 在web服务器软件中,可以部署web项目,让用户通过浏览器来访问这些项目
  • web容器
  • 常见的java相关的web服务器软件
  • weblogic : oracle公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费的。
  • websphere : IBM公司,大型的JavaEE服务器,支持所有的JavaEE规范, 收费的。
  • JBOSS : JBOSS公司的,大型的JavaEE服务器,支持所有的JavaEE规范,收费的。