jsp注释(隐式注释)
-
jsp语法
1.jsp声明<%! >
只能声明变量 声明方法 不能写代码块
类中 只执行一次
2.jsp脚本<% %>
只能写代码块,不能声明方法
service()方法中 每次发起请求都会执行
3.jsp表达式<%= %>
只能写表达式 把内容显示到浏览器界面上
方法参数中 每次发起请求都会执行
4.jsp运行原理
把工程部署到服务器上后,第一次向jsp发起请求,jsp引擎会将jsp文件转换成java文件(servlet文件)
在编译成.class文件 在浏览器中访问jsp时,执行的是.class文件
jsp九大内置对象
request HttpServletRequest 请求
response HttpServletResponse 响应
out JspWriter 带有缓冲区的输出流
session HttpSession 会话
application ServletContext 应用程序对象
config ServletConfig 每个界面都有的配置对象
pageContext PageContext 当前页面对象,通过此对象可以获取到其他八个内置对象
page Object 相当于this
exception Exception 异常
request.getMethod
jsp指令:<%@ 指令名 属性名=属性值....%>
1.page指令 对当前界面的配置
buffer:输出流缓冲区的大小
errorPage:错误界面
import:导包
session:是否提供session对象
2.include指令 包含一个界面
file 界面路径
3.taglib指令 引入标签库
<%@ page import="java.io.PrintWriter"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" buffer="8kb" errorPage="error.jsp" isErrorPage="true"
session="true"%>
<%
//out ---- JspWriter 带有缓冲区的输出流
//PrintWriter 普通输出流
out.write("张三");
out.write("<h3>你好</h3>");
out.print("123456");
PrintWriter writer = response.getWriter();
writer.write("hello");
//session.setAttribute("name", "aaa");
%>
四大域对象
<%-- 四大域对象:
application ServletContext 应用程序对象
程序运行期间,在任何时间,在任何文件中都可以获取到存入的数据
session HttpSession 会话
在同一次会话期间,在任何文件中都可以获取到存入的数据
request HttpServletRequest 请求
在同一次请求期间有效, 只能在请求转发的两个界面中共享数据
pageContext PageContext 页面对象
只能在当前界面中使用数据
--%>
<%
application.setAttribute("page", "application");
session.setAttribute("page","session");
request.setAttribute("page", "request");
pageContext.setAttribute("page", "pageContext");
//response.sendRedirect("two.jsp");
request.getRequestDispatcher("two.jsp").forward(request, response);
%>
findAtrribute()
<!--
findAtrribute()从四个作用域中依次查找对应的属性数据,
如果查找到数据就返回,如果没有找到,继续去下一个域中查找
如果四个域中都没有,返回null
优先级:
pageContext > request > session > application
-->
application: <%=application.getAttribute("page") %>
<br/>
session:<%=session.getAttribute("page") %>
<br/>
request:<%=request.getAttribute("page") %>
<br/>
pageContext:<%=pageContext.getAttribute("page") %>
findAtrribute: <%=pageContext.findAttribute("page") %>