JSP-page指令学习
格式<%@ page ….. %>
学了这几点
在JSP里面写Java代码是这样的
<%
Date date = new Date();
%>
那么必须导入包才可以使用
<%@ page import="java.util.Date" %>
除了JSP内置的隐含对象之外,其他都要导入包才可以使用
errorPage
指向错误页面
<%@ page errorPage="/WEB-INF/error1.jsp"%>
在WEB-INF目录下的error1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page isErrorPage="true" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<h3>这是错误页面 error1.jsp</h3>
错误信息:<%= exception.getMessage() %>
</body>
</html>
可以看到
<%@ page isErrorPage="true" %>
那么就可以使用隐含对象exception
错误信息:<%= exception.getMessage() %>
a.jsp
<%@page import="java.text.DateFormat"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.util.Date" %>
<%@ page errorPage="/WEB-INF/error1.jsp"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
int i = 10/0;
%>
</body>
</html>
运行:
可以看到这其实是转发机制,同一个请求,看地址栏就可得知
还有一种可以在web.xml进行配置
<error-page>
<error-code>404</error-code>
<location>/WEB-INF/error.jsp</location>
</error-page>
error.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" isErrorPage="true"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<h3>404错误页面</h3>
</body>
</html>
a.jsp
<%@ page errorPage="error1.jsp"%>
这个路径不是正确的,所以会出现404错误
运行: