This article shows how to do Spring Data JPA paging and sorting using the PagingAndSortingRepository interface. Technologies used: Spring Boot 3.1.2 Spring Data JPA H2 in-memory database Java 17 Maven 3 JUnit 5 Spring Integration Tests with TestRestTemplate Unit Tests with Mocking (Mockito) Table of contents: 1. Extends PagingAndSortingRepository 2. Extends JpaRepository 3. Pageable and […]

Read more Spring Data JPA Paging and Sorting example

This article shows how to use @DataJpaTest to test the Spring Data JPA application. Technologies used: Spring Boot 3.1.2 Spring Data JPA (Hibernate 6 is the default JPA implementation) H2 in-memory database Maven Java 17 JUnit 5 Table of contents: 1. Project Directory 2. Spring Data JPA – Entity and Repository 3. @DataJpaTest 3.1 Disable […]

Read more Testing Spring Data JPA with @DataJpaTest

We migrated the project to Spring Boot 3, and the JPA entity class hits package javax.persistence does not exist. java: package javax.persistence does not exist import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; P.S. Tested with Spring Boot 3.1.2 Solution Spring Boot 3 migrated all Java EE APIs javax.* to their equivalent Jakarta EE variant […]

Read more Spring Boot – package javax.persistence does not exist

Try to mock a repository save() method, but it is always returning null? P.S Tested with Spring Boot 2 + Spring Data JPA @Test public void save_book_OK() throws Exception { Book newBook = new Book(1L, "Mockito Guide", "mkyong"); when(mockRepository.save(newBook)).thenReturn(newBook); mockMvc.perform(post("/books") .content("{json}") .header(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON)) .andExpect(status().isCreated()); } Solution 1. Mockito uses the equals for argument matching, try […]

Read more Spring + Mockito – Unable to mock save method?