rs.next() 부분 수정
rs가 계속 돌아서 null 값이 씌워지는게 아니라, ResultSet의 커서(current cursor)는 원래 첫번째 행 바로 전을 가리키도록 초기화 되기 때문에 이상한 값이 씌워지는 거였다. 그래서 맨 처음에 rs.next() 함수를 호출하는 것도 커런트 커서를 첫번째 행으로 옮기기 위함이라고...
rs에 여러 행의 값이 들어가는 경우에는 while(rs.next())를 사용해 계속 커서를 다음 행으로 넘겨줘야 하고, 만약 단일행이 들어간다면(들어가는게 확실하다면) if(rs.next())로 써줘도 된다.