我正在尝试编写一些JAVA来发送SQL查询,然后将数据作为JSP页面中的表返回。JAVA中的代码本身可以很好地输出到控制台,但当我尝试将表放入JSP页面时,它会忽略它。
下面是我为JSP页面编写的代码:
<%@page import="entd481.week3_v2_miller.DB"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<body>
<table align="center" cellpadding="5" cellspacing="5" border="1">
<tr bgcolor="#A52A2A">
<td><b>Customer ID</b></td>
<td><b>First Name</b></td>
<td><b>Last Name</b></td>
<td><b>E-Mail</b></td>
<td><b>Phone</b></td>
<%
String url = "jdbc:mysql://XXX.XXX.XXX.XX:XXXX/XXXXXXXX";
String username = "XXXXXXX";
String password = "XXXXXXXXX";
String query = "SELECT * FROM XXXXXXX.Customers;";
try {
Connection conn = DriverManager.getConnection(url, username, password);
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(query);
while (rs.next()) {
String customerID = rs.getString("Customer_ID");
String firstName = rs.getString("FirstName");
String lastName = rs.getString("LastName");
String email = rs.getString("email");
String phoneNumber = rs.getString("PhoneNumber");
out.print("<tr>");
out.print("<td>" + customerID + "</td>");
out.print("<td>" + firstName + "</td>");
out.print("<td>" + lastName + "</td>");
out.print("<td>" + email + "</td>");
out.print("<td>" + phoneNumber + "</td>");
out.print("</tr>");
}
st.close();
conn.close();
}
catch (Exception e) {
System.out.println(e);
}
%>
</table>
</body>
</html>
打印到控制台(从JAVA代码的Angular 来看)效果很好--获得了DB的所有内容。但是我很困惑,为什么当我运行这个程序时,结果页面的结果是空白的,而且我告诉它out.print的HTML都没有通过。
任何帮助都将不胜感激。
1条答案
按热度按时间x6h2sr281#
pom.xml文件中缺少依赖项,已通过以下方法解决:
然后,必须在JSP页面上另外添加以下代码以实现DB连接:
现在一切似乎都在运转。感谢@ DawooodibnKareem为我指明了正确的方向。