注册 登录
编程论坛 J2EE论坛

jsp链接mysql出错,帮看一下这两个文件.

guixiaolan 发布于 2008-02-28 23:02, 1056 次点击
conn.java文件如下:

package conn;
import java.sql.*;
public class conn {
        String dbUrl = "jdbc:mysql://localhost:3306/user";
    String dbUser = "root";
    String dbPassword = "12345";

    Connection connect = null;
    ResultSet rs = null;

    public conn() {
        try {
            Class.forName("org.gjt.mm.mysql.Driver");
        }
        catch(java.lang.ClassNotFoundException e) {
            System.err.println( e.getMessage());
        }
    }

    public ResultSet executeQuery(String sql) {
        try {
            connect = DriverManager.getConnection(dbUrl,dbUser,dbPassword);
            Statement stm = connect.createStatement();
            rs = stm.executeQuery(sql);
        }
        catch(SQLException ex) {
            System.err.println(ex.getMessage());
        }
        return rs;
    }
}

conn.jsp文件如下:

<%@ page contentType="text/html; charset=gb2312" %>
<%@ page language="java" import="java.sql.*"%>
<jsp:useBean id="connBean" scope="page" class="conn.conn"/>
<html>
<head>
    <title>使用Bean连接MYSQL数据库</title>
</head>
<body  bgcolor="#FFCCCC">
    <div align="center">
      <table width="60%" border="1">
        <tr>
            <td width="50%" bgcolor="#CCCCFF">
                  <div align="center"><font color="#FF0033"><b>学号</b></font></div>
              </td>
              <td width="25%" bgcolor="#CCCCFF">
                  <div align="center"><font color="#FF0033"><b>姓名</b></font></div>
              </td>
        </tr>
<%
    ResultSet rs = connBean.executeQuery("select * from info");
    while (rs.next()){
%>
           <tr>
            <td width="50%">
                  <div align="center"><%=rs.getString(1)%></div>
            </td>
              <td width="25%">
                <div align="center"><%=rs.getString(2)%></div>
              </td>
        </tr>
<%
    }
    rs.close();
%>
  </table>
</body>
</html>


提示 while (rs.next()){ 这一行出错.
请问有没有好的连接方式.
5 回复
#2
kingyor2008-02-29 09:44
import
import java.sql.*;

public class PubSQL{

    private Connection conn;
    public ResultSet rs;
    private String sDBDriver;
    private String sConnStr;

    public PubSQL()
    {
        conn = null;
        sDBDriver = "org.gjt.mm.mysql.Driver";
        sConnStr = "jdbc:mysql://127.0.0.1:3306/"+dbname+"?user=root&password=123";
        try
        {
            Class.forName(sDBDriver);
        }
        catch(ClassNotFoundException classnotfoundexception)
        {
            System.out.println("Jdbc_conn():" + classnotfoundexception.getMessage());
        }
    } public ResultSet query(String s)
        throws Exception
    {
        try
        {
            s = new String(s.getBytes("UTF-8"), "ISO8859_1");
            conn = DriverManager.getConnection(sConnStr);
            Statement statement = conn.createStatement();
            rs = statement.executeQuery(s);
        }
        catch(SQLException sqlexception)
        {
            System.out.print("sql.executeQuery:" + sqlexception.getMessage());
        }
        return rs;
    }

    public void update(String sy)
        throws Exception
    {
        try
        {
            sy = new String(sy.getBytes("UTF-8"), "ISO8859_1");
            conn = DriverManager.getConnection(sConnStr);
            Statement statement = conn.createStatement();
            statement.executeUpdate(sy);
        }
        catch(SQLException sqlexception)
        {
            System.out.print("sql.executeQuery:" + sqlexception.getMessage());
        }
    }
}

[[it] 本帖最后由 kingyor 于 2008-2-29 09:58 编辑 [/it]]
#3
nhy5202008-02-29 14:48
应该把这个写成一个方法返回结果集,这样再调用就方便了
#4
guixiaolan2008-02-29 17:02
能不能看一下我的那个错在哪里
或者大家有成功的能否提供一下代码?
#5
论坛元老2008-04-02 17:04
import
import java.sql.*;

public class PubSQL{

&nbsp; &nbsp; private Connection conn;
&nbsp; &nbsp; public ResultSet rs;
&nbsp; ...
#6
Starlove2008-04-03 10:39
Bean里面throws exception
jsp里面try
信息太少
再说的详细一点
1