JSP学习(一)-------JSP概述

是什么?

JSP 全称 java servlet pages,是一种动态的网页开发技术,其本质是 java sevlet,主要是利用JSP标签在HTML网页中插入java代码程序动态地完成网页开发。

JSP

以下列出了使用JSP带来的好处:

  • 与ASP相比:JSP有两大优势。首先,动态部分用Java编写,而不是VB或其他MS专用语言,所以更加强大与易用。第二点就是JSP易于移植到非MS平台上。

  • 与纯 Servlet相比:JSP可以很方便的编写或者修改HTML网页而不用去面对大量的println语句。

  • 与SSI相比:SSI无法使用表单数据、无法进行数据库

  • 与JavaScript相比:虽然JavaScript可以在客户端动态生成HTML,但是很难与服务器交互,因此不能提供复杂的服务,比如访问数据库和图像处理等等。

  • 与静态HTML相比:静态HTML不包含动态信息。

工作原理

  • 当web容器(tomcat servlet容器)接收到以.jsp扩展名结尾的url访问请求时,会讲请求将给JSP引擎处理,在tomcat中的JSP引擎就是一个servlet程序,负责解析和执行jsp页面。
  • 每个JSP 页面在第一次被访问时,JSP引擎将它翻译成一个Servlet源程序,接着再把这个Servlet源程序编译成Servlet的.class字节码类文件,然后再由web容器(Servlet引擎)像调用普通Servlet程序一样的方式来装载和解释执行这个由JSP页面翻译成的Servlet程序

生命周期

JSP的生命周期就是被创建到被销毁的整个过程,类似于servlet的生命周期,区别在于jsp还包括讲将jsp转化为servlet过程

  • 编译阶段: servlet容器将jsp编译成servlet源文件,生成servlet类

  • 初始化阶段: 加载与JSP对应的servlet类,创建其实例,并调用它的初始化方法

  • 执行阶段: 调用与JSP对应的servlet实例的服务方法

  • 销毁阶段: 调用与JSP对应的servlet实例的销毁然后销毁se体系结构

体系结构

JSP有两种体系结构,分别是JSP Model1和JSP Model2,反映了两种不同的设计思想

  • Model 1
    模型
    JSP学习(一)-------JSP概述
    时序图
    JSP学习(一)-------JSP概述
  • Model 2(MVC的应用)
    模型
    JSP学习(一)-------JSP概述
    时序图
    JSP学习(一)-------JSP概述

  • 区别
    Model1适合小型项目开发,结构简单,开发迅速。但是JSP页面相对复杂,不利于维护。
    Model1适合大型项目开发,职责明确,而且适应变动的需求。
    从模型上和时序图上很容易看出,Model2是在Model1的基础上,分离了控制,将业务逻辑处理分离出来。这样Model2相对来说便于维护

开发web站点的主要方式

  • 采用MVC的思想,主流方式

  • 存粹的jsp,适合小型网站的搭建,不过后期维护特别困难

  • javaBean+servlE+jsp,逐渐被EBJ和spring淘汰