【发布时间】:2013-12-29 08:31:16
【问题描述】:
JSP 和 sql 专家 我有一个小问题困扰着我。我是 JSP 和数据库访问的新手。
我创建了一个 mysql 数据库,并使用 Java 程序代码编译通过命令行成功运行它。
但是,当我尝试使用 JSP 页面从数据库中提取数据时,我收到的只是一个空的或空白的 html 表,其中包含四列 EMP ID;年龄;名;姓氏。
问题是为什么没有数据显示在数据库的html页面中?
我怀疑根本原因之一可能是产生错误行消息,但是当我将其格式化为时,我不再收到任何错误消息。
请协助。
下面是MySQL数据库:
database - 'EMP'.
table - 'Employees'.
Columns; id; age; first; last.
data; 100; 28; Zaid; Khan.
password - 'password'
下面是 FirstExample.jsp 代码。
<%@ page import="java.io.*, java.util.*, java.sql.*" %>
<%@ page import="javax.servlet.http.*, javax.servlet.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
<html>
<head>
<title>SELECT operation</title>
</head>
<body>
<sql : setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/EMP"
user="root" password="password"/>
<sql : query dataSource="${snapshot}" var="result">
SELECT * from Employees;
</sql : query>
<table border="1" width="100%">
<tr>
<th>Emp ID</th>
<th>Age</th>
<th>First Name</th>
<th>Last Name</th>
</tr>
<c:forEach var="row" items="${result.rows}">
<tr>
<td><c:out value="${row.id}"/></td>
<td><c:out value="${row.age}"/></td>
<td><c:out value="${row.first}"/></td>
<td><c:out value="${row.last}"/></td>
</tr>
</c:forEach>
</table>
</body>
</html>
以下是文件和类路径:
JSP page: C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\jsp pages\RegName.jsp
CLASSPATH: C:\Program Files\Apache Software Foundation\Tomcat 7.0\lib\jsp-api.jar;C:\Program Files\Apache Software Foundation\Tomcat 7.0\lib\jstl-1.2.jar;C:\glassfish3\jdk\jre\lib;C:\Program Files (x86)\MySQL\MySQL Connector J\mysql-connector-java-5.1.27-bin.jar
JAVA_HOME: C:\glassfish3\jdk
Path: C:\glassfish3\jdk\bin;C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin
【问题讨论】: