hehe`~这个问题我曾经碰到郭~~,你可能是一个Connection 对应了多个ResultSet引起的,当时我这里是General error~~~

解决方案 »

  1.   

    至于这个问题我在做项目时老碰到,如下面摘自我项目中的代码,注释部分均有执行时的例外,就是有异常在执行时产生,所以工建议的方法是用一个函数来做,可以反复调用,这样问题就好办了
    else if(object instanceof Login)
    {
     loginObject=(Login)object;
     try
     {
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
      Connection con=DriverManager.getConnection("jdbc:odbc:KofSystem","sa",null);
      PreparedStatement stat=con.prepareStatement("select * from ZjyUser where vUserName=?");
      stat.setString(1,loginObject.userName);
      ResultSet result=stat.executeQuery();
      //System.out.println("len="+loginObject.userPassword.length()+">>"+loginObject.userPassword+"<<");
      if(result.next())
      {
    /*
    stat=con.prepareStatement("select * from ZjyUser where vUserName=? and vUserPassword=?");
    stat.setString(1,loginObject.userName);
    stat.setString(2,loginObject.userPassword);
    result=stat.executeQuery();

    if(result.next())
    {
         System.out.println("register user login...");
    PrintStream toClient=new PrintStream(inFromClient.getOutputStream());
    toClient.println("登陆成功");
    toClient.close();
    }*/
    if(result.getString(4).trim().equals(loginObject.userPassword.trim()))
    {
     System.out.println("register user login...");
     PrintStream toClient=new PrintStream(inFromClient.getOutputStream());
     toClient.println("登陆成功");
     toClient.close();
    }
    else
    {
     System.out.println("user password error...");
     PrintStream toClient=new PrintStream(inFromClient.getOutputStream());
     toClient.println("密码错误");
     toClient.close();
    }
       }
       else
       {
    System.out.println("the user is not exist...");
    PrintStream toClient=new PrintStream(inFromClient.getOutputStream());
    toClient.println("用户名错误");
    toClient.close();
       }
     }
     catch(Exception error)
     {
    System.out.println("could not execute the query"+error);
     }
    }