第一章WEB

来源:互联网 发布:js倒计时功能 编辑:程序博客网 时间:2024/06/10 06:34

我们本章来简单介绍一下WEB应用程序,了解一下HTTP协议。我们要理解JavaWeb应用程序的目录结构。能够使用MyEclipse开发和部署项目。
QQ大家都用过吧,12306网站也都买过火车票,还有好多同学都玩过LOL吧。这些个程序是不是首先得先有台电脑,然后是不是都得上官网下载,下载一个客户端,电脑联网才能够玩。还要时不时的更新,比如换地图了,增加 英雄了。都需要更新维护。这样的程序都是C/S程序,叫做(客户端/服务器)。那么淘宝、京东这类网站为什么不用下载与更新呢?他们采用的是B/S模式。什么是B/S模式?和C/S一样,首先得有电脑,然后打开浏览器我们就能够直接使用。不用再下载客户端,即时数据更新也不需要我们在电脑上操作,我们只用打开浏览器就可以使用。用户使用界面通过浏览器来实现,主要的事务逻辑在服务器端实现,数据的存取在数据库, 这样就形成了三层结构。第一层:表示层,用户界面。第二层:业务层,包含系统的业务和功能代码。第三层:数据存取层,完成一些数据的操作。就比如你去饭店吃饭的时候,你看菜单点菜,然后服务员报到厨房,厨房来给你做,最后服务员再给你端上来。

那么这B/S模式的优点在哪?耦合度小。(什么是耦合度,比如说现在的自行车,都是组装的。你如果觉得车座不好看,你就自己买一个可以直接换上。这就叫耦合。)还有良好的可扩展性。最关键的是分工协作,效率提高,就像刚才咱们提到的去吃饭一样。
接下来我们来看一下B/S 的工作流程;首先我们打开浏览器进行一些操作,产生一种需求,将这种需求提交给web服务器。服务器进行相应的处理,访问数据库返回结果。然后将找到的信息向相应给浏览器。是不是和饭店吃饭流程很像啊?那么到现在我们大家应该对C/S 和B/S有一些了解了吧?知道他们的不同点在哪了吧?C/S是客户端/服务器,就像我们电脑桌面上的图形界面一样。你玩LOL的时候下载安装成功后桌面是不是也会生成一个快捷方式,那个小图标。这叫GUI,图形用户界面。B/S是浏览器/服务器,只用打开浏览器登录web都能够使用。

我们之前学过的WEB网页HTML是静态网页,之前大家也都写过,觉得和我们在网上用到的网页相比有什么缺点啊?首先静态网页缺少与用户的交互性,而且还不能够自动更新。比如我们打开一个天气网站想看的肯定是实时的天气情况,如果是静态网页的话就不能够实现。那么我们就需要用到动态网页。动态是什么意思呢?有的同学就会说动态就是让网页动起来,加一些动画什么的。这样的理解是错的。动态的意思是原来不存在的,在我们发出请求以后服务器根据请求生成的叫动态。动态网页就是根据不同用户,不同时间返回不同的网页。它具有交互性、自动更新和随机性的优点。还是我们之前提到的吃饭。一个饭店的服务员和厨师一般都是固定。根据不同的顾客,点的不同的菜,厨师会做出相应的食品。

那么我们还有一个问题就是,在不同的地方,如国外。你说中国话,服务员说着法国话或者泰国话,互相听不懂怎么办?这个时候我们都会采取国际上统一的语言英语来进行交流。我们的计算机也是一样。客户端和服务器说的话都互相听不懂,我们就要采取国际上统一标准HTTP协议来进行交互。HTTP协议是TCP/IP协议的上层协议,它包括了TCP/IP协议。我们在客户端发送的请求统一采用HTTP请求,服务器也会根据请求返回相应的HTTP响应。

既然我们通过HTTP协议来进行请求和响应,那么我们来了解一下使用HTTP协议时都需要用到哪些东西?URL就是统一资源定位符。。。。。。。。(根据PPT简单介绍一下)

我们在网上浏览的时候,最终返回的都是网页。这是因为服务器在HTML内容前面加上了首部信息。我们来看一下相应的剖析。首先是HTTP协议,1.1的版本。后面这个200是状态码,表示成功的意思。后面OK是文本表示的成功。下面相应体中包括HTML内容,就是我们要看到的内容。上面第三行是什么意思?Content-type:text/html。这是告诉浏览器我们的内容类型是html类型的文本信息。这是正常情况下的。那么如果错误了,显示什么的?错误的状态码是500,服务器处理错误。我们以后可能会经常看到这个状态码,以后只要看到500,意思就是你的代码写错了。要从代码中间找错误。若果看到的是404的话,那肯定就是路径错误。你女朋友要去狂商场,你把他带到了科技城。那她肯定找不到想要的衣服了。这是错误的路径。当然还有其他的状态码,这三个是最常用的。

我们说了这么多请求,那么请求的时候是怎么去请求的呢?用的是什么方法?我们先来看一个相对简单点的get方法。get方法主要就是要求服务器获得一个资源并把资源发送回来。我们来剖析一下http请求。-------(PPT)------我们再来看一下另一种方法。POST方法,----(PPT)----post方法更加强大,请求的同时也会发送一些表单数据和二进制数据。---(对比一下get和post方法)-----当然还有其他方法,比如head、put、delete等。

我们利用get或者post方法,提交请求,那么他具体的流程是什么呢?---(PPT)------好了,一个完整的流程下来,那么在这个流程中请求提交给服务器,服务器是怎么去处理的呢?服务器中会有一个servlet来专门解决,servlet的具有~~~三个优点。那这个servlet是不能单独运行的,她必须有一个运行环境。这时候就来给大家介绍一下tomcat...............................................................