JSP基础---java server page


servlet缺陷:编码、部署和调试任务繁琐;生成动态网页繁琐,不利于项目分工
jsp HTML模板+java代码;所以的java语言都可以在jsp中使用。
html定义了整个网页的骨架,页面的结构和外观,java代码用来操作数据的显示。
jsp声明 <%! 声明内容 %> 可以声明变量、函数、静态块;jsp的声明主要定义全局的变量方法。
jspAPI
jsp翻译为java代码_jsp.java。_jsp继承了HttpJspBase,HttpJspBase继承了HttpServlet。
jsp和servlet同异:
两个都是servlet,都是服务器端动态网页技术;
jsp重在数据显示,servlet主要处理业务逻辑。
jsp的脚本片段 <% java代码 %> ,所有的java代码都放在service方法里,可以调用外部属性和方法;
脚本片段里只能出现java代码,不能出现任何模板元素。jsp引擎在翻译jsp代码的时候,会将脚本片段里面的所以java代码放在service里
在脚本片段里面要嵌套模板元素,需要把脚本片段分开。
脚本表达式 输出内容 <%= 内容 %> = <% out.print(内容) %>
JSP生命周期:
由JSP引擎翻译(jsp->java),编译(java->class),加载,实例化(new),初始化(init),调用service方法,销毁(destroy)
JSP指令-------提供整个JSP页面的相关信息;用于JSP页面与容器之间通信。
1、page:用于定义jsp页面的各种属性,无论page指令出现在jsp哪个地方,都作用于整个页面。
<%@ page language ="java" import ="java.util.*" pageEncoding ="utf-8" %>
2、include:可以包含文件(包含文件内容);include指令表示引入的文件内容,可以是静态文件,也可以是动态文件。
<%@ include xxxx %>静态包含
静态包含:先把其他页面的内容引入到当前这个页面,变成一个页面,最终只会产生一个servlet;包含动态网页时,内容必须遵循jsp语法,被引入的文件可以是任意的扩展名。静态引入会生成一个文件,再翻译成servlet,引入的文件不能有指令冲突。
<%jsp: include xxxx %>静态包含
动态包含:包含的是结果,有多少个动态页面就包含多少个结果。创建多个servlet,将所有servlet结果放一起。如果包含静态文件,就相当于静态包含。
<%jsp: forword page= "xx" %>跳转到另一个jsp
3、taglib:导入标签库的指令
jsp隐式对象
pageContext: 是jsp技术中最重要的一个对象,代表jsp的运行环境。这个对象封装了其他8个对象。他自身也是一个容器(域对象),用当前这个对象来封装数据;这个对象还包含了一些动作(跳转、引入文件等)。
pageContext通过GetAttribute(String)方法可以获取到其他对象的属性值。
pageContext通过FindAttribute(String)方法可以获取到其他对象的属性值。
FindAttribute(String)方法首先找本身,存在返回值;不存在则继续按照作用范围从小到大的顺序查找其他对象。(page--》request--》session--》application),都找不到则返回null。
pageContext.forword(" ")--->跳转
pageContext.include(" ")--->引入文件
page===》表示当前jsp对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值