簡體   English   中英

無法使用JSP從MySQL數據庫獲取數據

[英]Cannot fetch data from mySQL database with JSP

我正在嘗試使用JSP從我的數據庫檢索數據並將它們投影到html頁面。 我使用的是servlet scriptlet,但發現JSTL是更好的方法,所以我去了。 問題在於,在編譯時頁面確實返回了錯誤: The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

我試圖從使用標准Java的同一數據庫中獲取數據,但它確實起作用了……但是在這里卻沒有。 我針對特定頁面的源代碼是:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@page import="java.sql.*" %>
<%@page import="java.lang.String" %>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Main Menu</title>
</head>

<style>
    body {
        background-color: lightblue;
    }
</style>

<sql:setDataSource var = "snapshot" driver = "com.mysql.jdbc.Driver"
                   url = "jdbc:mysql://127.0.0.1:3306/CARDATA"
                   user = "toomlg4u"/>

<sql:query dataSource = "${snapshot}">USE CARDATA;</sql:query>

<sql:query dataSource = "${snapshot}" var = "result">
    SELECT * FROM Users;
</sql:query>

<table border = "1" width = "100%">
    <tr>
        <th>ID</th>
        <th>Full Name</th>
        <th>Password</th>
        <th>Email</th>
    </tr>

<c:forEach var = "row" items = "${result.rows}">
    <tr>
        <td> <c:out value = "${row.userId}"/></td>
        <td> <c:out value = "${row.realName}"/></td>
        <td> <c:out value = "${row.userName}"/></td>
        <td> <c:out value = "${row.passWord}"/></td>
        <td> <c:out value = "${row.email}"/></td>
    </tr>
</c:forEach>
</table>

</body>
</html>

感謝您的幫助!

PS:這只是一個小項目,並不專業。

編輯

我將jconnector復制到$ CATALINA_HOME的lib文件夾中,因此現在它顯示表但沒有值...奇怪的是,上面的兩個查詢...

您尚未將taglibs導入文件中

<%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %> 

到頁面頂部。

您的表也有5列,但只有4個標題列。

您也可以刪除<%@ page導入標簽

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM