목록공부/Database (2)
Kim ByeungHyun

JDBC, SQL Mapper, ORM의 개념 이해하고 차이점 인지하기 JDBC (Java Database Connectivity)는 자바 언어를 통해 데이터베이스와 연결하여 데이터를 처리하기 위한 자바 API입니다. JDBC는 데이터베이스와의 연결, 쿼리 실행, 결과 처리 등 데이터베이스와의 상호작용을 담당합니다. 데이터베이스와 직접 통신하기 때문에 SQL 쿼리 작성에 대한 책임이 개발에게 있습니다. SQL Mapper는 SQL 쿼리를 자동으로 생성하여 데이터베이스와 상호작용할 수 있도록 도와주는 라이브러리입니다. SQL Mapper는 다바 객체와 데이터베이스의 테이블 간의 매핑을 담당하여, SQL 쿼리를 자동으로 생성하여 객체를 데이터베이스에 삽입, 갱신, 삭제 등의 작업을 수행할 수 있습니다. 개발..

N + 1 문제가 무엇인가? N + 1 문제는 데이터베이스에서 발생하는 성능 이슈 중 하나입니다. 이 문제는 특정 레코드를 조회 할 때, 그 레코드와 연관된 다른 레코드들을 함께 조회하는 경우 발생합니다. 예를 들어, 게시물을 저장하는 데이터베이스에서 각 게시물은 해당 게시물을 작성한 사용자의 정보를 참조 할 수 있습니다. 이때, 게시물을 조회할 때 해당 게시물의 작성자 정보도 함께 조회하게 되는데, 이때 작성자 정보가 중복해서 조회되는 경우를 N+1 문제라고 합니다. N + 1 쿼리 문제의 원인? Spring Data JPA에서 제공하는 Repository의 findAll(), findById() 등과 같은 메소드를 사용하면 바로 DB에 SQL 쿼리를 날리는 것이 아닙니다. JQL이라는 객체지향 쿼리 ..