解决方案 »

  1.   

    在 if(rs.next()){ 之前加上 rs.last(); // 将光标移动到最后一行     
    int rowCount = rs.getRow(); // 得到当前行号,即结果集记录数  
    看看查询得到的结果数,如果结果数为0,那就说明是SQL赋值的问题了
      

  2.   

    我估计是没有这个username存在,输出一下username的值看看?是不是乱码了?
      

  3.   

    经常出错的地方,表名 字段名 sql语句 赋值。
      

  4.   

    打断点,单步调试,看看connection是连上了,username的值是什么,rs的返回的是什么,或者是不是直接抛异常了
      

  5.   

    这是最新情况,username确定有值,并且数据库里有的,还没有进if(rs.next()方法!public Users selectInfo(String username){
    Users user = new Users();
    System.out.println("username的值为::"+username);
    con = DatabaseDAO.getConnection();
    try{
    pt = con.prepareStatement("SELECT * FROM users where username = ?"); pt.setString(1, username); 
    rs = pt.executeQuery();
    rs.last(); // 将光标移动到最后一行     
    int rowCount = rs.getRow(); // 得到当前行号,即结果集记录数
    System.out.println("当前行号为::"+rowCount);
    if(rs.next()){
    System.out.println("=================================");
    }
    输出的结果为
      

  6.   

    我用了楼下回复的办法,username的值是有的,并且数据库里也有值的
    public Users selectInfo(String username){
            Users user = new Users();
            System.out.println("username的值为::"+username);
            con = DatabaseDAO.getConnection();
            try{
                pt = con.prepareStatement("SELECT * FROM users where username = ?");
     
                pt.setString(1, username); 
                rs = pt.executeQuery();
                rs.last(); // 将光标移动到最后一行     
                int rowCount = rs.getRow(); // 得到当前行号,即结果集记录数
                System.out.println("当前行号为::"+rowCount);
                if(rs.next()){           
                    System.out.println("=================================");
                }
    输出结果为:
      

  7.   

    这没事,我在这里精简了一下
    我不是说你的输出结果的条数,你输出username的那行为什么多了两个冒号
    还有当前行数输出的怎么还有+号和感叹号
    而且遍历结果集怎么没有看到循环
      

  8.   

    1.复制sql语句直接在数据库上查询,是否能或许正确结果
    2.先把不用where过滤username,查看是否可以获取result
    3.输出username是否为空或者乱码
      

  9.   

    这没事,我在这里精简了一下
    我不是说你的输出结果的条数,你输出username的那行为什么多了两个冒号
    还有当前行数输出的怎么还有+号和感叹号
    而且遍历结果集怎么没有看到循环
    嗯,我为了精简,复制过来把标点符号改动了一下的