显示从mysql到jsp页面的表数据

时间:2015-03-28 19:18:51

标签: java mysql jsp

我有

<%@ page import="com.mysql.*" %>
<%@ page import="java.sql.*" %>

<html>
<body>
<div id="content">


    <p>Displaying table contents: </p>

    <table border="0" cellpadding="10">
        <thead>
            <tr>
                <th>Id</th>
                <th>Name</th>
                <th>Company</th>
                <th>Salary</th>
            </tr>
        </thead>
        <tbody>


            <%
                Class.forName("com.mysql.jdbc.Driver");
                Connection conn = null;
                conn = DriverManager.getConnection("jdbc:mysql://localhost:8080/Connection", "username", "password");
                Statement stmt = null;
                stmt = conn.createStatement();
                String query = "select * from employeee";
                ResultSet rs = null;
                rs = stmt.executeQuery(query);
                while(rs.next()){
            %>
            <tr>
                <%
                    int id = rs.getInt("id");
                    String name = rs.getString("name");
                    String company = rs.getString("company");
                    int salary = rs.getInt("salary");
                %>
                <td><%=id %></td>
                <td><%=name %></td>
                <td><%=company %></td>
                <td><%=salary %></td>
            </tr>               

            <%      
                }
            %>

        </tbody>
    </table>
</div>
</body>
</html>

我收到Class Not Found Exception for com.mysql.jdbc.Driver

我已将外部jar添加到项目中并使用相同的代码,我将结果放在普通的java文件中。

这里有什么问题?

4 个答案:

答案 0 :(得分:1)

首先,JSP是应用程序的表示层,它不应该知道数据库。将数据库代码从JSP中删除到bean中。 JSP读取bean并显示数据。

也就是说,JDBC驱动程序是运行JSP的服务器的外部依赖项,必须添加到服务器的类路径中。

您是否已将其添加到服务器或项目中,这实际上是在war文件中?

答案 1 :(得分:1)

将mysql jar放在你的lib文件夹中..在本地你可能已经做过外部jar

答案 2 :(得分:0)

我会研究像DataTables(http://www.datatables.net/)这样的框架,并将数据库访问代码移到它所属的服务器上。

答案 3 :(得分:0)

如果你正在

CLASS NOT FOUND EXCEPTION

然后将SQL连接器jar文件放在Webinf/library文件夹

如果数据未从数据库中检索,则在while块后使用这些语句并删除代码行。

<tr>
  <td><%=rs.getInt("ID") %></td>
  <td><input type="text" value="<%=rs.getString("NAME") %>"></td>
  <td><input type="text" value="<%=rs.getString("COMPANY") %>"></td>
  <td><input type="text" value="<%=rs.getInt("SALARY") %>"></td>
</tr>