데이터베이스에서 처리된 결과를 저장하는 객체로 주로 SELECT문의 결과를 저장합니다.
ResultSet객체에 저장합니다.res.next()를 통해 SELECT문의 row 1개씩 순회하며 원하는 값을 출력 할 수 있습니다. try{
ResultSet = res = null;
Connection con = DriverManager.getConnection(url, id, pw);
Statement stmt = con.createStatement();
String sql = "SELECT * FROM book";
res = stmt.executeQuery(sql);
while(res.next()) {
int bookId = res.getInt("book_id");
String bookName = res.getString("book_name");
String bookLoc = rest.getString("book_loc");
out.print("bookId : " + bookId + ", ");
out.print("bookName : " + bookName + ", ");
out.print("bookLoc : " + bookLoc + "</br>");
}
} catch (Exception e) {
}
while(res.next())를 통해 데이터(row)가 있는지 먼저 확인하고 데이터에 접근 하므로 NullException이 발생하지 않습니다.중복호출건 혹은 Null값으로 인해 배포 결과가 UPDATE 안되는 현상 발생
SELECT 후 UPDATE 하는 방식이므로 SELECT 되지 않으면 배포 결과가 저장되지 않음
SELECT 후 결과 데이터를 LOG를 통해 찍어내므로써 중복호출 혹은 NULL 값이 발생하는 현상 유추 가능할 것으로 예상하여
추후 동일한 현상이 발생한 경우 Log 확인을 위해 인터페이스에 ResultSet 결과 출력코드 추가