【发布时间】:2017-04-06 09:33:49
【问题描述】:
我已编写代码连接到 Oracle 数据库以检索数据。
//数据库内容 员工: 身份证名称部门
1 Ghiridhar IT
2 Pabitra Finance
3 Sagar Management
我也尝试只使用 scriplet 标签而不是所有三个标签。然后到结果是一样的。
用于 JDBC 连接的 JSP 代码:
<%@page import="java.sql.*"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
//Declaration
<%!
Statement stmt = null;
Connection con = null;
ResultSet rs = null;
StringBuffer sb = new StringBuffer("");
%>
//JDBC Code
<%
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe",
"system","system");
stmt=con.createStatement();
rs=stmt.executeQuery("select * from Employee");
while(rs.next())
{
out.println(rs.getInt(1)+" "+rs.getString(2)+" "+rs.getString(3));
}
stmt.execute("insert into Employee values(4,'John','Finance')");
rs=stmt.executeQuery("select * from Employee");
while(rs.next())
{
sb.append(rs.getInt(1)+" "+rs.getString(2)+" "+rs.getString(3));
sb.append("</UL>");
}
out.println(sb);
con.close();
} //try block ends
catch(Exception e)
{ System.out.println(e);}
%>
//code ends
</body>
</html>
输出屏幕为空白。请帮助我解决这个问题。
【问题讨论】:
-
看起来你有一个例外。使用正确的日志记录并向我们展示完整的异常 stakctrace。但说真的,不要将这样的代码放在 JSP 中。将其分解为单独的 dao 或服务层。
-
非常抱歉。但我忘了为 oracle 添加 JAR 文件。谢谢你让我留意日志。我已经在 Net bean 上执行了它,它把错误显示为一个信息,我没有注意到它。
-
旁注:不要在JSP中做业务逻辑;将其提取到一个类中,并使用 MVC 模式,或者(至少)从 JSP 调用该类。更容易维护,也更容易调试。编写意大利面条式代码的诱惑力更小。