테스트 기반으로 JDBC 통해 DB CRUD #2

JDBC READ

@Test
public void findByUserId(String userId) {
    User user = userDao.findByUserId("userId");
    assertEquals(UserTest.TEST_USER, user);
}
  • 객체 비교를 위하여 User의 hashcode, equals를 재정의 해 준다.

 

public User findByUserId(String userId) {
    String sql = "select * from USERS where userId = ?";
    PreparedStatement pstmt = getConnection().prepareStatement(sql);
    pstmt.setString(1, userId);
    
    ResultSet rs = pstmt.executeQuery();
    
    if (!rs.next()) {
        return null;
    }
    
    if (rs.next()) {
        User user = new User(
            rs.getString("userId"),
            rs.getString("password"),
            rs.getString("name"),
            rs.getString("email")
        
        return user;
    }
    
    
    return null;
}
  • DB에 변화을 주었던 INSERT 구문에서는 executeUpdate를 사용한다.
  • 조회에서는 결과값을 얻어와야 하므로 ResultSet을 리턴하는 executeQuery를 사용한다.

executeUpdate

executeUpdate

댓글



Designed by JB FACTORY