一、基本概念

1.1 、WEB开发的相关知识

 WEB,在英语中web即表示网页的意思,它表示Internet主机上供外界访问的资源。Internet上供外界访问的Web资源分为:

1.静态web资源(如html页面):指web页面中供人们浏览的数据始终是不变的。

例如:用浏览器看股票走势时,数据是实时变化的。

  静态web资源开发技术:Html

  常用动态web资源开发技术:JSP/Servlet、ASP、PHP等。

  在Java中,动态web资源开发技术统称为Javaweb。

1.2 、WEB应用程序

  WEB应用程序是指供浏览器访问的程序,通常也称为web应用。例如a.html、b.html.......多个web资源,这多个web资源用于对外提供服务,此时应把这多个web资源放在一个目录中,以组一个web应用(或web应用程序)。

一个web应用由多个静态web资源和动态web资源组成,如html、css、js文件、Jsp文件、Java程序、支持jar包、配置文件等等。

  Web应用开发好后,若想给外界访问,需要把web应用所在目录交给web服务器管理,这个过程称之为虚拟目录的映射。

1.3 、WEB发展史

  Web发展分为两个阶段:静态、动态

1.4、静态WEB

  *html,这些是网页的后缀,如果现在在一个服务器上直接读取这些内容,那么意味着把这些网页的内容通过网络服务器传递给用户。整个Web操作的过程图如下:

                                       

java后端jwt开源代码 javaweb程序开发进阶源代码_客户端

  在静态WEB程序中,客户端使用Web浏览器(IE、FireFox)等经过网络(Network)连接到服务器上,使用HTTP协议发起一个请求(Request),告诉服务器我需要得到那个页面,所请求交给WEB服务器,之后WEB服务器根据用户的需要,从文件资源(存放了所有静态页面的磁盘)取出内容。之后通过WEB服务器根据用户的需求,从文件资源(存放了所有静态页面的磁盘)取出内容。之后通过WEB服务器返回给客户端,客户端接收到内容之后经过浏览器渲染解析,得到显示的效果。

静态WEB中存在以下几个缺点:

  1.Web页面中的内容无法动态更新,所有的用户每时每刻看见的内容和最终效果都是一样的。

  为了可以让静态的Web的显示更加好看,可以加入了JavaScript以完成一些页面上的显示特效,但是这些特效都是在客户端上借助于浏览器展现给用户的,所以在服务器上本身并没有任何的变化。

  实现静态WEB客户端动态效果的手段:JavaScript、VBscript。

  在实际开发中JavaScript使用得最多。

  2.静态Web无法链接数据库,无法实现和用户的交互。

 使用数据库保存数据是现在大多数系统的选择,因为数据库可以方便地管理数据,增删改查操作可以使用标准的SQL语句实现。

1.5、动态WEB

  所谓的动态不是页面会动,主要的特性是:"WEB的页面展示效果因时因人而变",而且动态WEB具有和交互性,WEB的页面内容可以动态更新。整个动态WEB操作的过程图如下:

                                       

java后端jwt开源代码 javaweb程序开发进阶源代码_java后端jwt开源代码_02

服务器插件)来处理,此插件用于区分是请求的是静态资源(*.htm或者是*.html)还是动态资源。

  如果WEB Server Plugin发现客户端请求是静态资源(*.htm或者是*.html),则将请求直接转发给WEB服务器,之后WEB服务器从文件系统中取出内容,发送给客户端浏览器进行解析。

  如果WEB Server Plugin发现客户端请求的是动态资源(*.jsp、*asp、*.php),则先将请求转交给WEB Container(WEB容器),在WEB Container中连接数据库,从数据库中取出数据等一系列操作后动态拼凑页面的展示的内容,拼凑页面的展示内容后,把所有的展示内容交给WEB服务器,之后通过WEB服务器将内容发送回客户端浏览器进行解析执行。

1.6、动态WEB应用程序的实际手段

  动态WEB现在的实现手段比较多,较为常见的有以下几种:

  • MIcrosoft ASP、ASP.NET
  • PHP
  • JAVA Servlet/JSP

  Servlet/JSP

  这是SUN公司主推的B/S架构的实现语言,是基于JAVA语言发展起来的,因为JAVA语言足够简单,而且很干净。

而且在运行中是使用多线程的处理方式,所以性能非常高。

  SUN公司最早推出的WEB技术推出的是Servlet程序,Servlet程序本身使用的时候有一些问题,所有的程序是采用JAVA代码+HTML的方式编写的,即,要使用JAVA输出语句,一行一行地输出所有的HTML代码,之后,SUN公司受到了ASP的启发,发展出了JSP(Java Server Page),JSP某些代码的编写效果与ASP是非常相似的。这样可以很方便地使一些ASP程序员转向JSP的学习,加大市场的竞争力度。

二、WEB服务器

2.1、WEB服务器简介

1、Web服务器是指驻留于因特网上某种类型计算机的程序,是可以向发出请求的浏览器提供文档的程序。当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件反馈到该浏览器上,附带的信息会告诉浏览器如何查看该文件(即文件类型)。

                           

java后端jwt开源代码 javaweb程序开发进阶源代码_Web_03

2、服务器是一种被动程序:只有当Internet上运行在其他计算机中的浏览器发出请求时,服务器才会响应。

                                            

java后端jwt开源代码 javaweb程序开发进阶源代码_服务器_04

 2.2、常用的Web服务器介绍

      Tomcat

  TomcatTomcat是一个实现了JAVA EE标准的最小的WEB服务器,是Apache 软件基金会的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且开源免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。学习JavaWeb开发一般都使用Tomcat服务器,该服务器支持全部JSP以及Servlet规范,启动界面如图:

            

java后端jwt开源代码 javaweb程序开发进阶源代码_客户端_05

三、搭建JavaWeb应用开发环境——Tomcat服务器

3.1、疑问:学习web开发,为什么必须要先装一个WEB服务器?

  在本地计算机上随便创建一个web页面,用户是无法访问到的,但是如果启动tomcat服务器,把web页面放在tomcat服务器中,用户就可以访问了。这说明什么问题?
  1、不管什么web资源,想被远程计算机访问,都必须有一个与之对应的网络通信程序,当用户来访问时,这个网络通信程序读取web资源数据,并把数据发送给来访者。网络是用物理链路将各个孤立的工作站或主机相连在一起,组成数据链路,从而达到资源共享和通信的目的。网络通信是通过网络将各个孤立的设备进行连接,通过信息交换实现人与人,人与计算机,计算机与计算机之间的通信。
  2、WEB服务器就是这样一个程序,它用于完成底层网络通迅。使用这些服务器,We应用的开发者只需要关注web资源怎么编写,而不需要关心资源如何发送到客户端手中,从而极大的减轻了开发者的开发工作量。

3.2、启动和测试Tomcat服务器

                                       

java后端jwt开源代码 javaweb程序开发进阶源代码_客户端_06

jsp会通过Jsp引擎转化为Servelt放在Tomcat的工作目录当中。