jdbc 썸네일형 리스트형 [JDBC] JPA(Java Persistence API) 왜 사용할까? 목차개요ORMEntityPersistence Context(영속성 컨텍스트)Repository한계점 개요JDBC를 더 쉽게 사용하기 위한 JDBC Template은 Query의 결과를 객체로 변환해주는 Mapper를 사용할 수 있습니다. 이 Mapper는 DB 의존성 및 중복 쿼리 문제점이 있습니다. 또한 JDBC Template의 다음과 같은 문제점이 있습니다.문제설명해결 방법상속의 문제RDB는 객체의 상속 관계를 표현할 수 없습니다.@OneToMany, @ManyToOne관계 문제RDB는 객체의 참조 관계 방향을 표현할 수 없습니다.@JoinColumn, @MappedBy탐색 문제RDB는 객체처럼 참조를 따라 순차적으로 탐색할 수 없습니다.@FetchType, fetchJoin()밀도 문제RDB는 .. 더보기 [JDBC] JDBC Template 목차개요JDBC Template 개요⭐ JDBC Template을 알아보기 전, 왜 필요하게 되었는지 간단하게 알아보겠습니다. JDBC Template을 사용하기 전에는 개발자들이 직접 JDBC를 통하여, SQL문을 작성하였습니다. JDBC로 직접 SQL문을 작성했을 때, 다음과 같은 문제가 발생하였습니다. 중복되고 반복적인 SQL 코드 비즈니스 로직과 SQL이 혼재되어 코드의 가독성과 유지보수성이 저하됩니다. (관심사의 분리가 잘 안됩니다.)객체 매핑의 불편함과 타입 오류 가능성`ResultSet`을 수동으로 읽어 객체에 매핑해야 합니다.예: `resultSet.getInt("age")` 에서처럼 수동으로 `age`가 null이면 `NullPointerException`이 발생할 수도 있습니다.컴파일.. 더보기 [JDBC] Query 요청을 위한 Statement vs PreparedStatement 목차개요StatementPreparedStatement 개요💡 JDBC DriverManager를 통해 적절한 드라이버를 찾아 데이터베이스와 연결하고, 연결이 완료되면 `Connection` 객체를 반환받습니다.이 `Connection` 객체를 통해 `Statement` 또는 `PreparedStatement`를 생성하여 SQL 쿼리를 실행할 수 있습니다.`Statement`는 정적인 SQL을 문자열로 직접 실행할 때 사용하고,`PreparedStatement`는 파라미터를 바인딩할 수 있어 보안과 성능 면에서 더 우수합니다. Statement정의정적 SQL 문을 실행하고 그 실행 결과를 반환하는데 사용되는 인터페이스입니다. 특징기본적으로 하나의 `Statement` 객체당 단 하나의 `Result.. 더보기 이전 1 다음