1.JSP是什么?
-
JSP是一种基于Java的技术,用于创建动态网页。
-
JSP允许在HTML中嵌入Java代码,这些代码在服务器端执行。
2.Java的工作原理
-
当浏览器请求一个JSP页面时,服务器将JSP文件编译成为一个Servlet(Java类)。
-
这个Servlet生成HTML内容并发送回客户端(浏览器)
3.JSP九大内置对象
-
请求对象(请求域对象):HttpServletRequest request
-
响应对象:HttpServletResponse response
-
会话域对象:HttpSession session
-
当前JSP(Servlet)的配置文件对象:ServletConfig config
-
全局域对象(表示整个项目):ServletContext applicatio
-
当前JSP的输出流对象:JSPWriter out
-
当前JSP的上下文关系对象(相当于国家的外交官,可以获取其他8大内置对象):PageContext pageContext;
-
当前JSP页面对象(表示当前页面):Object page = this
-
当前JSP页面的异常对象:Exception exception
4.内置对象中的四大域
//页面域存储的数据只能在当前页面有效 pageContext.setAttribute("msg","aaa"); //请求域存储的数据只能在本次请求中有效 request.setAttribute("msg","bbb"); //会话域存储的数据只能在对应的客户端中有效 session.setAttribute("msg","ccc"); //全局域存储的数据在整个项目中都有效 application.setAttribute("msg","ddd");
5.EL获取四大域的优先级
-
页面域>请求域>会话域>全局域
6.EL底层理解:${msg}
Object msg = pageContext.getAttribute("msg"); if(msg != null){ out.print(msg); return; } msg = request.getAttribute("msg"); if(msg != null){ out.print(msg); return; } msg = session.getAttribute("msg"); if(msg != null){ out.print(msg); return; } msg = application.getAttribute("msg"); if(msg != null){ out.print(msg); return; }
7.JSTL是什么?
JSTL(JavaServer Pages Standard Tag Library,Java 服务器页面标准标签库)是一组用于简化 JSP 页面开发的标准标签和函数库。它提供了一组自定义的标签,使得开发者可以在 JSP 页面中使用这些标签来完成常见的任务,如条件判断、迭代、格式化数据等,而无需编写大量的 Java 代码。 JSTL 的主要目的是通过提供标准的标签和函数来简化 JSP 页面的开发,降低代码的复杂性和维护成本。它与 Java 标准标签库(JSL)结合使用,使得 JSP 页面的逻辑处理更为清晰和模块化。
总之,JSTL 是 Java EE 平台中的一个重要组成部分,为 JSP 开发者提供了一种更加简洁和有效的方式来处理和呈现动态网页内容。
//JSP九大内置对象: // request; // response; // session; // out; // application; // config; // page; // pageContext; // exception;
//JSP九大内置对象里有四大域 // request; // session; // application; // pageContext;
//注意:页面域存储的数据只能在当前页面有效 pageContext.setAttribute("msg","aaa");
//注意:请求域存储的数据只能在本次请求中有效 request.setAttribute("msg","bbb");
//注意:会话域存储的数据只能在对应的客户端中有效 session.setAttribute("msg","ccc");
//注意:全局域存储的数据在整个项目中都有效 application.setAttribute("msg","ddd");
EL:JSP里简化获取请求域、会话域、全局域、页面域的代码