JSP,全称Java Server Pages,是一种动态的网页技术标准,是一个简化的Servlet,它与Servlet是Java EE规范的两个基本成员。从本质上来讲,JSP就是Servlet,而它需要编译成Servlet才能运行。所以,有时候我们称JSP 是生成Servlet的一个“草稿”。
基本组成:
静态数据,如HTML
JSP指令,如include指令
JSP脚本元素和变量
JSP动作
用户自定义标签
特点:
1、跨平台
由于JSP是基于Java编写的,所以可以不受平台限制,且移植性较好。
2、生成内容与显示分离
使用HTML语言来设计和格式化静态页面的内容,而使用JSP标签和Java代码片段来实现动态部分。JSP页面只负责显示,业务处理部分交由JavaBean或者Servlet等,这样两者之间的修改互不影响。
3、组件重用
可以使用JavaBean来编写业务组件,实现重复部分的封装,得到可重用。
生命周期:
JSP的生命周期类似于Servlet,有区别的地方就是JSP需要编译成Servlet。
●编译阶段:
servlet容器编译servlet源文件,生成servlet类
●初始化阶段:
加载与JSP对应的servlet类,创建其实例,并调用它的初始化方法
●执行阶段:
调用与JSP对应的servlet实例的服务方法
●销毁阶段:
调用与JSP对应的servlet实例的销毁方法,然后销毁servlet实例
常见动态网页开发技术对比:
JSP:属于Java平台,安全性高,适合大型的、企业级的Web应用程序开发。
ASP.NET:属于.Net平台,简单易学。但是安全性、跨平台性较差。
PHP:简单高效,成本低,开发周期短。适合中小型Web应用开发。
小结:
本质上,JSP就是Servlet,是为了简化Servlet中的大量println语句而形成的一种简单、方便的网页技术。刚开始的时候以为JSP就是一个页面,但是随着深入的学习,发现JSP并不仅仅是简单的页面,还可以嵌入Java代码或者Java脚本来实现数据的动态绑定。