jsp的知识
jsp是什么?
底层是servlet的程序,响应数据的封装页面
访问jsp页面,tomcat会翻译成一个java源文件和字节码文件。
这个java文件继承HttpJspBase 间接继承 HttpServlet
https://www.runoob.com/jsp/jsp-directives.html
<%@ page contexType="",>
language 编译语言java
contentType 连接类型text/html; charset=utf-8
pageEncoding 页面本身的字符集
import 导包
autoFlush 设置是否开启缓存默认true
buffer 缓冲大小默认8Kb
errorPage 错误页面路径
isErrorPage 标记该页面是错误页面默认是true
session 访问当前jsp页面,是否会创建HttpSession对象,默认true
extends 设置jsp翻译出来的java默认继承谁
jsp常用脚本
表达式脚本
<%=表达式脚本%>
_jspService()
out.print()
代码脚本
<%
java语句
%>
jsp九大内置对象
- request是请求 一次请求时才有效
- pageContext是PageContextlmpl类 只有当前页面有效
- session是HttpSession类 一次会话有效
- application 是ServletContext 整个web工程都有效
上面四个是四大域对象,优先从小到大使用 - config 是ServletConfig
- out
- page
- exception
- response是响应
jsp的out和response.getWrite().write("…")区别
out.flush()执行后out的缓冲会追加到response缓冲末尾
out.print可以输出任何数据
out.write只适合输出字符串
jsp 常用标签之静态包含
一般网页有:
头部信息,
主体信息,
尾部信息
静态包含(常用)
<%@ include file=" jsp页面"%>
特点:1.不会翻译被包含的jsp页面
2.是直接把被包含的jsp页面的代码拷贝到包含的位置执行输出
动态包含
JspRuntimeLibrary.include可以传递参数
<jsp:include page=" jsp页面">
<jsp:param name=“username” value=“root”/>
</jsp:include>
jsp常用标签请求转发
<jsp:forward page=“转发地址页面”></jdp:forward>
Listener监听器
javaweb三大组件分别是:Servlet程序,Filter过滤器,Listener监听器
监听某个事物的变化,然后回调函数,反馈给程序去做一些相应的处理
ServletContextListener监听器
监听ServletContext对象的创建和销毁
创建时调用contextInitialized
销毁时调用contextDestroyed
在web.xml中配置