一、JSP简介:
1、定义:全称是 java Server Pages jsp是一个简化的Servlet设计,实现了 在java中 添加htm标签 的功能
即 jsp = java + html
2、特点:(1)jsp 是一种动态网页技术便准,也是javaEE的标准;
(2)jsp 是部署在 服务器端才能执行的程序
(3)将程序逻辑和页面显示分离;(4)采用标签简洁化开发;(5)组建可重用
3、JSP页面的组成:静态内容 + 指令 + 表达式 + 小脚本 + 声明 + 注释
4、JSP指令(三大指令):
(1)page指令:1>一般位于jsp页面的顶端
2> 语法:<%@ page 属性1=”属性值“ 属性2=”属性值1,属性值2“...属性n=”属性值n“%>
3> page指令属性有三个-----language:指定使用的脚本语言(java)
-----import:通过该属性来引用脚本语言(java语句)中使用到的类文件
-----contentType:用来指定jsp页面编码格式:text/html,utf-8
(2)include指令:将外部文件 嵌套 在当前的jsp文件中,同时解析jsp语句
(3)taglib指令:用来引用标签库并设置标签库的前缀,该指令也允许jsp页面使用用户自定义的标签,也可以为标签库命名
5、JSP注释方式:
(1)采用html注释方法:<!--注释--> //客户端可见(点击浏览器源码 注释可见)
(2)采用jsp注释方法:<%--注释--%> //客户端不可见(点击浏览器源码 注释不可见)
(3)采用jsp脚本注释方法://单行注释 /*多行注释*/ //客户端不可见(点击浏览器源码 注释不可见)
6、jsp脚本:即在jsp页面中 执行 的java代码
(1)基本语法:<%java代码%>
(2)表达式语法:<% =表达式%> //注意:表达式 最后处 不以分号结束!!
(3)jsp页面的生命周期:
用户发出.jsp文件请求--> 是否是第一次请求(是)--->JSP引擎把该文件转换成一个servlet类,即生成字节码文件(.class),创建servlet的实例,并执行jspInit()---->访问生成的字节码---->解析执行jspService()
(否)--->直接访问生成的字节码文件----->解析执行jspService()
注:1>jspInit():在整个Servlet的生命周期中,只执行一次!
2>jspService():该方法被调用来处理 客户端的请求,对于每一个请求,jsp引擎创建一个新的线程来处理请求。
若有多个客户端同时请求该jsp文件,则jsp引擎就会创建对个线程。因为每个客户端请求 对应 一个线程,则以多线程(多客户端访问)执行方式 大大的降低了对系统资源的需求,即 提高了系统的并发量和响应时间(优点)。
但是,也要注意多线程带来的同步问题(缺点)。由于Servlet始终主语内存,所以响应是非常快的!
3>若.jsp文件被修改了,则服务器就会根据设置决定是否对该文件重新编译,若需重编译,则使用重新编译的结果 取代 内存中的Servlet,然后再解析执行jspService()....