JSP(Java Server Pages)
Java特有的页面技术
淘汰原因:
1.必须要有java环境
2.必须要有 tomcat环境
3.jsp要有编译过程 解析成本太高 效率低
jsp脚本片段
语法:<%....%>
<%
int num = 0;
num++;
System.out.println(num);
%>
JSP和servlet区别 !!
1.jsp本质上就是一个servlet
2.jsp更侧重于视图展示 servlet更侧重于逻辑处理
3.先有servlet 后有的jsp
JSP表达式
可以取值 向页面打印输出
<%= num %>
JSP声明片段
可以定义各种属性 方法 代码块
<%!
int x = 0;
public void a1(){
}
static{
}
%>
JSP指令标识
<%@ 指令名 属性1 = "值1" 属性2 = "值2" ...%>
page指令: 用来定义整个JSP页面的相关属性
include指令:引入其他的JSP页面 先把两个页面结合 再去编译成servlet(几乎不用)
taglib指令:引入页面上需要用到的标签库
写上错误页 可以获取错误信息
exception.getMessage() 获取错误信息
JSP标签
1.内置标签
-
jsp:include 引入指定的页面
-
jsp:forward 转发页面
-
jsp:param 传参数
2.JSTL标签 需要导入JSTL标签
3.自定义标签
jsp:include标签 和 include指令区别
include标签: 先把要引入的页面编译 再合并
include指令: 先把要引入的页面合并 再编译
JSP作用域 !!!
1.当前页 (pageContext) 一个属性只能在一个页面中获取
2.一次请求(request) 一个页面重设置的属性 范围是一次请求
3.一次会话(session) 一个会话中的属性 只要页面不关闭 都能获取到
4.整个web应用(appliacation) 在这个服务器上 当前项目下的任何一个页面
pageContext:<%= pageContext.getAttribute("pageContext")%> request:<%= request.getAttribute("request")%> session:<%= session.getAttribute("session")%> application:<%= application.getAttribute("application")%>
作用域使用规则
从小到大使用!!! 一般用request
JSP内置对象 !!!
内置:不需要创建就能使用
1.request 请求对象
2.response 响应对象
3.session 会话对象
4.out 输出对象
5.page 当前jsp页面的对象
6.application 应用全局对象
7.exception 异常 (只能在制定了isErrorpage = "true"的页面才能用)
8.pageContext 页面上下文对象
9.config 配置对象
EL表达式
${...}
EL表达式致命缺陷:1.只能读,不能写
2.不支持流程控制语句
EL表达式的内置作用域对象
-
pageContext
-
requessScope
-
sessionScope
JSTL标签库
需要导包 取值用EL表达式
<%@ taglib perfix = "...." uri = "..." %>
标签:Java,标签,JSP,jsp,include,servlet,Pages,页面 From: https://www.cnblogs.com/lyh15552012044/p/16644674.html