본문 바로가기

JDBC

Select 한개의 데이터

Main

public class mainClass {

	public static void main(String[] args) {
		DBConnection.initConnection();

		SelectTest st = new SelectTest();
		
		String id = "1"; 	//찾으려는 데이터
		UserDto dto = st.search(id);
		if (dto != null) {
			System.out.println(dto.toString());
			
		}else {
			System.out.println("등록되어있지 않은 id입니다");
		}
	}
}

 

 

SelectTest

public class SelectTest {

	//Select의 종류
	//1. 한개의 Data를 취득
	public UserDto search(String id) {	//return값은 Dto 종이. 
	
		String sql = " SELECT ID, NAME, AGE, JOINDATE " 
						+ " FROM USERTEST"
						+ " WHERE ID = '" + id + "'";	
		System.out.println("sql : " + sql);
		
		Connection conn = DBConnection.getConnection();	//db접근
		Statement stmt = null; //sql 적용시키는 쿼리문
		ResultSet rs = null; 		//DB로부터 결과를 retrun 
		
		UserDto dto = null;
		
		try {
			stmt = conn.createStatement();
			
			rs = stmt.executeQuery(sql);// select는 executeQuery를 씀, return값은 resultSet
			
			if (rs.next()) {	// 데이터가 있는경우. (없으면 그냥 넘어감)
				String _id = rs.getString("id");
				String _name = rs.getString("name");	//"" 속 컬럼명은 db컬럼명
				int _age = rs.getInt("age");
				String _joindate = rs.getString("joindate");
				
				dto = new UserDto(_id, _name, _age, _joindate);
			}
			
		} catch (SQLException e) {
			e.printStackTrace();
		}finally {
			DBClose.close(stmt, conn, rs);
		}
		return dto;
	}
}

'JDBC' 카테고리의 다른 글

Delete  (0) 2020.06.30
Select  (0) 2020.06.30
Update  (0) 2020.06.30
JDBC 기본 연결  (0) 2020.06.30
INSERT (기본 -> DBclose 수정)  (0) 2020.06.30