article thumbnail image
Published 2022. 11. 30. 17:05

**Select문 => 실행결과를 ResultSet으로 받기 => ResultSet으로부터 데이터 뽑아 자바객체(ArrayList)에 옮겨 담기 

1.  최종 조회 결과를 담을 자바 객체 와 JDBC 과정중에 필요한 객체 미리 세팅 

ArrayList<Test> list =new ArrayList<>();// 텅빈리스트
Connection conn = null;
Statement stmt = null;
ResultSet rset = null;

 

2. 앞으로 실행할 sql문 변수에 담기 

String sql = "SELECT TNO,TNAME,TDATE FROM TEST";

 

3. JDBC과정 

try {
	Class.forName("oracle.jdbc.driver.OracleDriver");  
	conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","JDBC","JDBC");
	stmt = conn.createStatement();
	rset= stmt.executeQuery(sql);
			
	// ResultSet으로부터 데이터 뽑아서 자바객체에 옮겨담기 
	while(rset.next()) {  / rset.next() 행이 있으면 true / 없으면 false반환 
			list.add(new Test(rset.getInt("tno"),
					rset.getString("TNAME"),
					rset.getDate("TDATE")));
			}
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			try {
				rset.close();
				stmt.close();
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}

>> 여러행이 출력 되어야 할시에는 반복문 돌려서 rset.next() 에  마지막 행이 조회될때까지 
    ArrayList에  ResultSet의 결과를  옮겨 담기 

 

4. list에 담은 객체 출력하기  --> list가 비어 있을경우 조회 결과 없음 |  아닐 경우 list에 담긴 값 반복문을 통해 출력 

if(list.isEmpty()) {
	System.out.println("조회 결과가 없습니다.");
   } else {
		  for(int i=0; i<list.size();i++) {
			 System.out.println(list.get(i));	
           }
      }
}

 

>> select 실행 결과

'JDBC' 카테고리의 다른 글

JDBC 01 _ delete문  (0) 2022.11.30
JDBC 01 _ update문  (0) 2022.11.30
JDBC 01 _ insert문 삽입  (0) 2022.11.29
JDBC 01 _ 단일행 select문 조회  (0) 2022.11.29
JDBC 01 _ Basic  (0) 2022.11.29
복사했습니다!