首页 > 代码库 > java web开发阅读笔记:第一章

java web开发阅读笔记:第一章

学习该书前所用推荐书籍《名师讲坛—java开发实战经典》

 

一web开发前奏

1.1网页发展

  首先搞懂。

1.HTTP:超级文本传输协议,是一种通讯协议。

通过这个网络协议WW浏览器与WWW服务器之间的通讯进行规定,并且通过这个协议我们可以浏览网页,通过网页从客户端写入信息,从服务端得到信息。而通常的HTTP消息包括”客户端->服务端“与”服务端->客户端“的消息传送,图解HTTP协议的功能:

技术分享

是在客户端通过浏览器根据HTTP协议中向服务器端发出请求,通过服务器向文件系统做出相应的行为(找到相应的网络文件),服务器端再通过HTTP协议对客户端做出回应,显示在浏览器中。

2胖客户端与瘦客户端:是否需要单独的客户端程序支持

因为最开始使用静态web不能实现绚丽的用户体验,因此出现了APPlet程序(就是我们所说的APP),它是基于web网页上的APP。并没有改变服务端,只是在客户端新增了动态效果。依然是采用请求与回应机制(同上)。这里所说到的胖客户端,就是运行时需要一个单独的客户端程序(就和平时上网所用的某个功能提示需要下载APP一样)。

APPlet(采用Java编程语言编写的小应用程序。)

APP(手机软件,就是安装在手机上的软件,完善原始系统的不足与个性化。)

3.JVM:Java Virtual Machine(Java虚拟机)

一般高级语言若需要在一个计算机上运行就需要配置一定的环境,为了解决这个问题,并且我们也知道由于java语言与平台无关,所以有了JVM即在实际的计算机通过虚拟机进行运行。

4.静态请求和动态请求

正如静态动态,静态请求就是不需要增删改查,需要得到的信息就是建站者上传的html文件(html是静态的),而动态请求是需要对保存在服务器上的文件进行改动。在最初的静态web时有说回应网页文件,可以知道网页其实就是独立的文件。

根据静态请求,动态请求,我们可以知道静态网页和动态网页的本质区别是,能否对数据库操作。

5.web容器:(一种服务程序,是处理从客户端发出的请求)

web容器工作包括解析请求,创建对象,处理请求,根据请求对象创建回应等。其实也就是说,我们只需要关注如何将我们的程序与这个黑匣子的线头一一接好,web容器这个黑匣子会帮我们处理发出的动态请求。图解web容器在动态网页中的作用:

技术分享

 

现在来看web开发历程:

静态网页->APPlet->动态网页

由于静态网页不能实现绚丽多姿的用户体验和对数据库操作,所以出现了APPlet,但是由于APPlet只能实现表面的体验改观,不能进行文件的读写、无法对数据库操作、且必须有单独的客户端(胖客户端)这些问题依然存在。前两者都是在客户端进行一些改变,且存在以上问题,所以出现了动态网页。这里指出实现动态网页的5种方式:CGI,PHP,ASP,ASP.NET,JSP。

在动态网页中,我们不再需要JVM虚拟机,而是直接通过浏览器,在服务器端进行了改变,有了web服务插件来识别静态还是动态的请求,若是动态请求就通过web容器对动态请求作出处理,再将所有的响应传送到web服务器上,通过HTTP回应将信息回应道web浏览器上。

这就是web的艰险历程。

 

1.2企业开发架构

  首先还是搞清楚几个概念。

1.B/S C/S

B/S:Browse/Server(浏览器/服务端)

在浏览器上运行的程序架构,以浏览器作为客户端,在服务端安装软件,用户通过浏览器则可访问客户端。

C/S:Client/Server(客户端/服务端)

需要在本地计算机上安装工作软件,管理维护都是需要在客户端和服务端一起改动。

也就是说,B/S将C/S中所需要安装在用户计算机的一些软件直接安装到服务端(具体区别http://jingyan.baidu.com/article/b0b63dbfc9a2874a483070c0.html)

 

所以呢,企业开发架构我们现在来看。如果要分开发动态web,通过B/S模式,对不同的功能单独进行相关处理,修改时候也能单独进行修改,所以现代企业当中我们更多的采用B/S模式,更好分工嘛。

开发模式:

技术分享

JAVA EE就是一种开发平台。

1.3JAVA EE架构

  理解概念。

1.JAVA SE:JAVA设计语言与平台的总称

Java SE:Java标准版,也是Java的核心。

对JAVA EE来说,JAVA SE相当于是一种语法规定,是以JavaSE为基础的。JAVA EE(JAVA企业版)本可以更方便的移植、健壮、可伸缩且安全的服务器端 Java 应用程序。

2.NET开发架构:也是一种平台开发,且是基于JAVA EE的一种企业开发架构。

 

JAVA EE架构到底是什么呢?有什么呢?从上面可以知道,JAVA EE是开发平台的一种中间体。整个JAVA EE架构由容器、组件、服务组成。理解成某一具体操作对应一种组件(这里讲组件就是APPlication程序,就是APP),而容器相当于我们说的黑匣子(一个容器装一种组件),我所理解的java ee服务就是我们在平台上所看到的各种各样的功能,而且这些功能是JAVA EE自有的,不需要我们单独写组件装容器的一些服务。

 而且我们知道了JAVA EE用于企业版本平台的开发,那么在整个企业平台开发中,它包括的三个层次也理解一下。客户层<->中间层<->企业信息系统层,不同用户通过浏览器或者是应用程序通过中间层层得到服务,并将所有需要保存的数据放在企业信息系统层。

 1.4JAVA EE核心设计模式

明白概念。

1.JSP:java服务器页面。

一种使软件开发者可以响应客户端请求,而动态生成HTML、XML或其他格式文档的Web网页的技术标准。 是将静态技术(如HTML)与动态技术(java)结合的动态web技术。

2.JAVABean:一种JAVA语言写成的可重用组件。

为写成JavaBean,类必须是公共和具体的,且具有无参数的构造器。从这个地方看,我理解成控相当于函数的调用,控制层调用模型层的模型组件,通过模型组件访问持久层中数据库,得到的一些数据我们通过JavaBean组件进行重用,最后由JavaBean和JSP显示。

 

MVC设计模式:JAVA EE当中最核心的设计模式就是MVC设计模式.用户通过浏览器发出请求,请求回到控制层被处理,处理结果是调用模型层的模型组件,通过组件往数据库访问,再将所有结果保存在JAVABean中,最后JSP和JAVABean一起完成页面显示。

图解MVC设计模式:

技术分享

1.5Struts开发框架

对于一般项目不需要MVC设计模式这么多,因而出现了Struts,Struts出现的主要作用是在web层上的开发问题。

 

 

学习了第一章节,从web发展历程-企业开发架构-java ee开发架构-java ee核心设计模式:mvc设计模式-struts开发框架

了解如HTTP通讯协议,胖客户端与瘦客户端,JVM虚拟机,APPlet,容器等概念,与设计动态网页完整的思路次序,不同的部分所需要的技术,不同部分之间的如何联系,他们之间的关系。

java web开发阅读笔记:第一章