GitHub

https://github.com/Backcoder-June

BackCoder 기록 그리고 숙달

JPA 2

[ JPA ] JPA <=> DB , Entity / Repository

DB를 조작, 정의하고자 할 때 SQL 문, 쿼리문을 사용해야 합니다. SQL문을 사용해 DB 와 연결하는 과정에서, 매 쿼리문 마다 반복되는 코드가 많았고, JDBC => Spring JDBC => SQL Mapper ( Mybatis ) 이를 간결하게 만들기 위한 방법들이 발전해오며, Mybatis도 여전히 많이 사용되고 있습니다. 하지만 SQL문에 의존적인 면이 있어서, 이를 자동화시키고, 객체지향적 쿼리를 만들고자 => Hibernate ( open source ) 가 등장하게 되었고, => Spring JPA 로 발전 해 오게 되었습니다. 여전히 DB 에는 SQL 문을 통해 전달하지만, 개발자 입장에서는 JPA에서 미리 만들어 놓은 findByEmail(); 등과 같은 메소드만 사용하면 sele..

Back to the JPA 2023.01.29

JPA Paging 처리 (Page, Pageable)

JpaRepository 를 상속해서 사용할 수 있는 메소드 중 findAll() 메소드는 Page findAll(Pageable pageable); 위와 같이 Page 처리에 대한 정보를 담고있는 Pageable 객체를 매개변수로 받아서, 목표로 하는 T 객체를 페이징처리하여 Page 객체타입으로 받아내는 기능을 제공합니다. Pageable 는 Pageable pageable = PageRequest.of( pageRequestDTO.getPage() - 1, pageRequestDTO.getSizePerPage(), Sort.Direction.DESC, "createdDate" ); PageRequest (자식) 객체를 이용해서, PageRequest.of( 1.현재페이지, 2.페이지당 데이터개수, ..

Back to the Spring 2023.01.18