Java Web基础教程(二)开发基础

前言

Java
web是一种基于B\S(浏览器\服务器)架构的网络应用程序的技巧完结。那种结构的Web应用程序被多量的公司级应用所利用。随着Web应用程序的层面不断扩张,守旧的Web开发方式不能够满足日益复杂的事体供给,所以出现了更为客观越发进取的MVC开发形式。随之而来的也油然则生了一比比皆是的根据MVC形式的开支框架,Struts框架、Spring
MVC 等。

1. Web 技术的上进

1. 首先品级 静态网站

Web技术出现发轫,由于硬件技术的范围超越一半Web应用都是依照静态的HTML页面,有部分动态Web应用运转起来也是绝非前日那样流畅的。静态页面只可以起到音讯宣布的效果,它们并不享有交互能力。

2. 次之阶段 动态网站

从未有过互动能力的应用程序,是纯属不可能流行起来的。有成都百货上千大方提议了不一致的贯彻动态Web程序的化解方案。个中最早提议的正是通过CGI(通用网关接口),个中最要紧的表征正是足以经过CGI技术访问数据库,因为差不离拥有的Web应用都亟待对数据开展存取。CGI技术固然很有力,可是它也有投机的不足之处,比如完成CGI程序的技术难度比较大,代码不易维护等。

3. Servlet 实现动态网站

为了缓解上述的这几个历史遗留难题,Java
在一九九七年出产了温馨的动态Web技术Servlet
Servlet有如下技术优点

  1. 基于Java技术达成
  1. 跨平台
  2. 能够访问众多数据库
  3. 多线程
  4. 网络

Servlet的请求响应流程

  1. 浏览器向服务器发送请求
  2. Web服务器接受请求
  3. 将请求提交给Servlet引擎
  4. Servlet引擎调用瑟维斯方法
  5. 重临响应给客户端(相应的代码)

Servlet是全方位JavaWeb技术的为主,约等于说Servlet能够实现全部的动态JavaWeb程序的机能。可是假诺客户端页面的逻辑十三分复杂的话,编写Servlet的工作量是尤其大的,而且代码不易维护。

4. JSP的出现

为了化解那几个题目落到实处页面展现代码编写与控制逻辑代码编写的分开,JSP技术就好像此出生了。
JSP技术能够在同三个页面团长客户端代码与服务端代码实行混合编制程序,能够一直行使Java代码作为服务端脚本。

sun公司为了丰富利用已有的Servlet技术,在首先次访问JSP页面时,JSP页面会被JSP引擎翻译成Servlet,然后再交由Servlet引擎来开始展览拍卖。

JSP页面包车型地铁乞请、相应和运维流程

2. Java Web 技术

1. Java Web 的主干组成

3个杰出的Java
web程序中应有蕴涵以下因素,将它们打包在一起,并在Web容器中运维。

  • Servlet
  • Java Server Pages
  • JSP标准标签(JSTL)和定制标签
  • 在Web应用程序中央银行使的Java类
  • 静态的公文,包含HTML、图像、JavaScript和CSS
  • 叙述Web应用程序的元音信(web.xml)

2. Java Web 的目录结构

正规目录结构

  1. untitled3 是以此工程的根目录
  1. web 目录下存放能源文件 例如 图片目录、CSS目录、JS目录、jsp文件等
  2. WEB-INF 目录下 存放 工程的配置文件 web.xml 和 lib 库文件

3. Java Web 的布置文件

铺排文件是有着Java
web应用程序的柱子。我们这边介绍的文书重庆大学是身处WEB-INF目录下的web.xml文件。除此之外在汤姆cat\conf目录下也有叁个web.xml文件,那么些文件是对此汤姆cat服务器的配置文件,一种全局的配备。
布局文件能够拓展如下的连带安插

  1. Servlet Context 初阶化参数
  1. Session配置
  2. Servlet/JSP定义
  3. 标签库引用
  4. MIME类型映射
  5. 欢迎页
  6. 错误页
  7. 平安新闻

3. MVC 模式和 MVC框架

通过广泛的应用Servlet/JSP技术,开发者们渐次发现了Servlet与JSP技术的流弊

HTML代码、JavaScript、CSS和动态JSTL、java代码混合在联名不便于前期的维护,为了缓解好这么些题材将页面与服务端代码分离,那正是MVC格局的主导思想之一。

1. JSP Model 1 与 JSP Model2

  • JSP Model1

Mode1由三片段组成

  1. 客户端浏览器
  2. 服务端程序(JSP/Servlet)
  3. 数据库

Model1的构架

那种协会也有它的不足之处,没有水到渠成进一步的代码层次分离。

  • JSP Model2

MVC是模型(Model)-视图(View)-控制器(Controller)的简称

以下正是并行图示

Model2的构架

MVC方式能够达成最大限度的代码重用

2. Web应用中的基础服务

在web应用中有诸多的基础功效能够在成千成万页面进行理并答复用,我们开始展览以下总计。

  • 页面导航:那些效应最还好控制器中实现
  • 页面布局:通过正规方法来实现页面布局
  • 数量注解:最好通过集合框架来落实对数据的验证
  • 工作逻辑重用:把能够再一次利用的作业逻辑从系统中分离出来,形成一种种独立的零部件,那样重用起来就格外不难了。

3. 什么是MVC模式

MVC方式将1个用到分成3片段:Model(模型)、View(视图)、Controller(控制器),那三个部分应该尽量少的耦合,从而得以提升应用程序的可扩充性和可维护性。

  • 七个视图能够对应四个模型
  • 能够经过模型为视图提供不一样的多少
  • Ajax,能够在控制器中添加权限验证来界定用户对敏感资源的造访
  • 下落各层次之间的耦合性,有利于对系统中各层开始展览扩大

4. 常用的MVC框架

  • Struts 1.x

  • Struts 2.x

  • Spring MVC

总结

大家理解了web技术的历史及其发展路程,领悟了在web应用开发中所必需的情节,领会到在多人支付中MVC方式所起到的基本点意义。

下节预报

  1. HTML
  2. CSS
  3. JavaScript
  4. Ajax

敬请期待哦~

相关文章