jsp
目录
出错页面
当程序出错了跳转到出错页面。
在页面的头部添加errorPage="error.jsp"信息
在错误页面头部添加isErrorPag=“true”信息
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" errorPage="error.jsp"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
我是index.jsp页面。
<%=10/0 %>
</body>
</html>
error.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" isErrorPage="true"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
出错了。。<%=exception.toString() %>
</body>
</html>
刚问index页面报错
出错了。。java.lang.ArithmeticException: / by zero
包含其他页面的两种方法
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
我是index.jsp页面。<br>
<%-- 第一种方法:静态包含 --%>
<%@include file="other.jsp" %>
<%-- 第二种方法 --%>
<%-- <jsp:include page="other.jsp"></jsp:include> --%>
</body>
</html>
other.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
我是other页面的内容。
</body>
</html>
访问index页面出现信息
我是index.jsp页面。
我是other页面的内容。
两种方法的比较:
静态包含是先将页面代码包含进来,再运行。
动态包含是先将页面运行,再包含起来。
网页跳转的两种方法
效果相同
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
我是index.jsp页面。<br>
<!-- 方法一:jsp跳转 -->
<%-- <jsp:forward page="other.jsp"></jsp:forward> --%>
<!-- 方法二:请求转发 -->
<%
request.getRequestDispatcher("other.jsp").forward(request, response);
%>
</body>
</html>
跳转携带参数
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
我是index.jsp页面。<br>
<jsp:forward page="other.jsp">
<jsp:param value="zhujunwei" name="name"/>
</jsp:forward>
</body>
other.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%=request.getParameter("name") %>
</body>
</html>
jsp内置对象
九大内置对象
pageContext
request
session
application
out
response
exception
page
config
四个作用域对象
pageContext【PageContext】
作用域仅限于当前的页面。还可以获取到其他八个内置对象。
request【HttpServletRequest 】
作用域仅限于一次请求, 只要服务器对该请求做出了响应。 这个域中存的值就没有了。
session【HttpSession 】
作用域限于一次会话(多次请求与响应) 当中。
application【ServletContext 】
整个工程都可以访问, 服务器关闭后就不能访问了。
作用域大小pageContext < request < session < application
三种输出
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
默认的内容<br>
<%
out.write("这是out输出内容");
%>
<br>
<%
response.getWriter().write("这是response输出的内容");
%>
<br>
</body>
结果
这是response输出的内容 默认的内容
这是out输出内容
---------------
我每一次回头,都感觉自己不够努力,所以我不再回头。
---------------