【问题标题】:Display table data from mysql to jsp page从mysql到jsp页面显示表数据
【发布时间】:2015-06-02 00:12:51
【问题描述】:

我有

<%@ 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 文件中得到结果。

这里有什么问题?

【问题讨论】:

  • 如果你打开war文件,你看到WEB-INF/lib中的ojdbc jar了吗?

标签: java mysql jsp


【解决方案1】:

如果你得到了

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>

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      将 mysql jar 放在你的 lib 文件夹中......在本地你可能已经作为外部 jar 完成

      【讨论】:

        【解决方案4】:

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

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

        你是加在服务器里还是项目里,所以真的是在war文件里?

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-11-23
          • 1970-01-01
          • 2012-06-11
          • 2020-05-29
          • 2015-09-20
          • 1970-01-01
          • 1970-01-01
          • 2012-02-04
          相关资源
          最近更新 更多