如何使用jsp以HTML格式显示MySQL表的内容

时间:2015-06-18 08:54:43

标签: html mysql jsp

我是编程的绝对初学者,我有这个任务:在网页中显示来自MySql数据库的表的内容。我正在尝试使用从教程中获取的代码:

html代码:

<html>
    <head>
        <title>Spettacoli disponibili</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width">
    </head>
    <body>
        <h2>Lista dei teatri</h2>
        <form method="post" action="Teatri.jsp"></form>
    </body>
</html>

teatri.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>Lista dei teatri</title>
</head>
<body>

<sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
     url="jdbc:mysql://localhost/teatro"
     user="root"/>

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

<table border="1" width="100%">
<tr>
   <th>Teatro</th>
   <th>Indirizzo</th>
   <th>Citta</th>
   <th>Provincia</th>
   <th>Telefono</th>
</tr>
<c:forEach var="row" items="${result.rows}">
<tr>
   <td><c:out value="${row.nome}"/></td>
   <td><c:out value="${row.indirizzo}"/></td>
   <td><c:out value="${row.citta}"/></td>
   <td><c:out value="${row.provincia}"/></td>
   <td><c:out value="${row.telefono}"/></td>
</tr>
</c:forEach>
</table>

</body>
</html>

但它为我工作,页面打开但表格没有显示。 我错了吗?

1 个答案:

答案 0 :(得分:0)

在sql:setDataSource标记中

“password”属性缺失。您需要添加它。

<sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
     url="jdbc:mysql://localhost/teatro"
     user="root"
     password="Your DB Password"/>