以下是我的JdbsJsp.java代码
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.sql.*" errorPage="/ErrorPage.jsp"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/saumil","root","root");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from emp");
while(rs.next())
{
out.println(rs.getInt(1)+" "+rs.getString(2));
}
}
catch(Exception e)
{
}
%>
</body>
</html>
我的错误页面如下,
<%@page isErrorPage="true"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>An Exception has occured(probably SQLException)</h1>
<%=exception.getMessage()%>
</body>
</html>
我故意将表名设置为'emp'(数据库中没有这样的表)来显示错误页面。但是,我没有显示错误页面,而是一个完全空白的屏幕。 “异常发生(可能是SQLException)”的消息未显示。 希望有人能指导我。
答案 0 :(得分:0)
在您的JdbcJsp.jsp页面中,而不是写作,
catch(Exception e)
{
}
写,
finally
{
}
据我所知,'catch'可能会阻止您显示自定义异常页面。