我在写注册会员逻辑时。 当在注册页面填写用户名liuyifei。 发送请求后,去数据库中查询t_user表。 如果存在在用户名则返回注册页面;如果不存在,则添加此次注册信息。

为什么,数据库中不存在该用户名,返回的user实例不等于null呢。

public User findByUsername(String username) throws Exception {

  Connection conn = null;
  User user = new User();
  try {
   conn = DBUtil.getConnection();
   String sql = "select * from t_user where username=?";
   PreparedStatement prep = conn.prepareStatement(sql);
   prep.setString(1, username);
   ResultSet rs = prep.executeQuery();
   while(rs.next()){
    user.setUsername(rs.getString("username"));
    user.setName(rs.getString("name"));
    user.setPwd(rs.getString("pwd"));
    user.setGendar(rs.getString("gendar"));
   }
  } catch (Exception e) {
   e.printStackTrace();
  }finally{
   DBUtil.close(conn);
  }
  System.out.print("根据注册的用户名字段,到数据库t_user表中匹配。当该用户名不存在时,检验返回的user是否等于null: ");
  System.out.println(user==null);
  return user;
 }