본문 바로가기

Code/Java

JDBC ResultSet 데이터 없을 경우 체크하기

JDBC를 이용한 DB 이용 프로그램을 작성하다보면,
쿼리문에 따라서 결과가 나오지 않는 경우가 있다.
(ResultSet에는 hasNext()같은 메소드가 없다.)
예전에는 SQL의 count 함수를 이용하여, 갯수를 먼저 센 후,
0일때와 아닐때로 구분하여 작성했던 기억이 있기도 하다.

하지만, 워낙 번거롭기도하고, 뭔가 다른 방법이 있을 것 같아서 찾아보니
아래와 같은 방법으로 하면 손쉽게 해결할 수 있었다.
ResultSet에서는 next()함수를 while의 조건문 안에 두어, 반복을 수행하는 데,
while 문 대신 if문으로 먼저 검사한 후, 
그 다음부터 while문을 이용하면 된다.
즉, while문을 if + do-while로 대치하게 된다.

실제적인 예는 아래 출처에서 살펴보도록 하자.


* 출처: http://www.rgagnon.com/javadetails/java-0116.html