一、JSP
(一)前言
1、.jsp 与 .html 一样属于前端内容,创建在 WebContent 之下;
2、嵌套的 java 语句放置在<% %>里面;
3、嵌套 java 语句的三种语法:
① 脚本:<% java 代码 %>
② 声明:<% ! java 代码 %>
③ 表达式:<% = java 代码 %>
4、引入其他类,使用 <@page import="路径" >
5、JSP 有九大内置对象,无需进行显式声明即可使用:
如:
PrintWriter pw=response.getWriter();
pw.println("<h1>用Servlet响应前端</h1>");
等价于:
<%out.println("<h1>用JSP响应前端</h1>");%>
(二)四大作用域
1、page (页面作用域):仅对当前页面有效;
2、request(请求作用域):请求一次,生效一次;
3、session(会话作用域):关闭浏览器之前有效;
4、application(应用程序作用域):关闭服务器之前有效;
后三种作用域均可使用 .setAttribute("key",value) 和 .getAttribute("key",value) 进行存储和取值,如果使用 EL 表达式的话,<%application.getAttribute("key",value)%> 也可以用 <%${applicationScope.key}%> 来代替。
EL 表达式的语法结构:${作用域名Scope.key}
(三)JSTL 核心标签库
1、使用 JSTL 核心标签库需要引入 jstl.jar 和 standard.jar 包;
2、需要在 .jsp 文件中添加:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3、常用的核心标签:
① if 标签
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:if test="${applicationScope.name==123}">
<h1>succeed!~</h1>
</c:if>
</body>
</html>
② choose 标签
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<c:choose>
<c:when test="${applicationScope.name==123}">
<h1>succeed!~</h1>
</c:when>
<c:otherwise>
<h1>failed!~</h1>
</c:otherwise>
</c:choose>
</body>
</html>