JSP

Servlet的缺陷:Servlet的编码、部署和调试任务繁琐、生成动态网页繁琐,不利于项目分工

使用JSP技术编写动态页面:——有HTML语句嵌套在其中的Java代码组成一个普通文本文件

                                          ——JSP页面的扩展名必须是.jsp

在Web应用程序自动部署JSP

JSP运行机制:

第一阶段:Web容器第一次接收到某JSP页面请求后,首先自动将该JSP页面编译成Servlet代码


第二阶段:JSP页面编译


第三阶段:JSP页面类装载


第四阶段:JSP页面实例化


第五阶段:JSP页面初始化


第六阶段:JSP页面服务


第七阶段:JSP页面销毁


注意:如果一个Web应用程序中含有JSP页面,部署这个应用时,在JSP生命周期中,整个翻译和编译步骤只发生一次,之后的请求将执行编译后的代码。(第一次编译所消耗的时间别之后的时间长)

JSP语法和语义:JSP网页有元素(Element)和模板数据(Template Data)(JSP的静态部分)组成,元素则是必须经由Web容器解释,元素都是以XML做为语法基础,并且大小写要一致

Web容器支持的JSP语法:普通格式和XML格式(普通格式JSP语法是设计给开发者用的,XML兼容JSP语法是设计用来容易被开发工具使用的)

脚本元素:

脚本元素脚本语法
声明<%!  声明  %>
Scriplet<% 代码 %>
脚本表达式<%= 脚本表达式 %>
(不能使用分号来作为脚本表达式的结束符 。脚本表达式可以是常量,也可以是一个动态计算出来的结果值)

注释:JSP注释    <%-- 注释内容-- %>(注释内容不会在客户端运行,在客户端的HTML源文件也不能看到)

HTML注释   <!--  注释内容  --> (可在客户端的源文件中看到注释内容)

Java注释

JSP指令:提供整个JSP页面的相关信息,用于JSP页面与容器之间的通信

JSP三中类型的指令:page——为当前页面提供处理指令

                                include——把另一个文件叫包含在JSP中

                                taglib——指定包含和访问自定义标签库

Page指令属性:(除import属性以外,其余属性只能在一个页面中是指一个特定的属性一次)

language:指定JSP引擎要使用编译网页的语言

info:此网页的相关信息,例如:作者、版本、版权形象等

import:在JSP中银土Java的包和类

contentType:在JSP页面返回http头中指定的MIME类型和字符集

buffer:设置缓冲区大小

autoFlush:当缓冲区满时,输出流缓冲区自动刷新跑出一个异常

session:指定当前页面是否需要参与HTTP会话

idThreadSafe:设置JSP页面是否线程安全

errorPage:当前页面如果发生异常,网页重定向到errorPage指定的页面

isErrorPage:设置相应的页面处理代码执行中出现的错误

include指令:在JSP编译时插入一个包含文本或代码的文件,把文件中的文本静态地包含过去

taglib指令:让用户给予xml语法自己定义标签,实现JSP语法的延伸

JSP标准动作:

<jsp:include>动作:每个文件单独进行编译(动态的包含)

<jsp:forward>动作:将请求从一个JSP页面转发到另一个JSP页面

JSP隐式对象:request、response、pageContext、session、application、out、config、page、exception



评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值