객체지향프로그래밍

    [JPA] JPA의 필요성: 객체와 데이터베이스 간의 격차 해소하기

    객체 지향 프로그래밍의 도전 과제 객체 지향 프로그래밍의 영역에서는 추상화, 상속, 다형성이라는 3박자가 복잡한 시스템의 제어를 조율한다. 그러나 이러한 원칙을 데이터 저장으로 확장하면 수많은 과제가 발생한다. JDBC API 사용 시 불편한 점을 고려하여 그 복잡성을 자세히 살펴보자. 예를 들어 User객체를 조회해보자. // 저장 class UserJdbcTemplate { public User findUserByUsername(String username) { String sql = "SELECT * FROM users WHERE username = ?"; return jdbcTemplate.queryForObject(sql, new Object[]{username}, (resultSet, rowN..