From 017f467ba8f5398555a12e2ba543e4d10157d661 Mon Sep 17 00:00:00 2001 From: amit2103 Date: Sat, 2 Nov 2019 16:30:09 +0530 Subject: [PATCH] [BAEL-17317] - Check article code - https://www.baeldung.com/rest-api-pagination-in-spring --- spring-boot-rest/pom.xml | 4 ++ .../baeldung/modelmapper/model/Subject.java | 37 +++++++++++++++++++ .../repository/SubjectRepository.java | 16 ++++++++ 3 files changed, 57 insertions(+) create mode 100644 spring-boot-rest/src/main/java/com/baeldung/modelmapper/model/Subject.java create mode 100644 spring-boot-rest/src/main/java/com/baeldung/modelmapper/repository/SubjectRepository.java diff --git a/spring-boot-rest/pom.xml b/spring-boot-rest/pom.xml index 598b589ea0..16150d061a 100644 --- a/spring-boot-rest/pom.xml +++ b/spring-boot-rest/pom.xml @@ -44,6 +44,10 @@ org.springframework.boot spring-boot-starter-data-jpa + + org.springframework.boot + spring-boot-starter-data-rest + diff --git a/spring-boot-rest/src/main/java/com/baeldung/modelmapper/model/Subject.java b/spring-boot-rest/src/main/java/com/baeldung/modelmapper/model/Subject.java new file mode 100644 index 0000000000..9efa449dfe --- /dev/null +++ b/spring-boot-rest/src/main/java/com/baeldung/modelmapper/model/Subject.java @@ -0,0 +1,37 @@ +package com.baeldung.modelmapper.model; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; + +@Entity +public class Subject { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; + + @Column(nullable = false) + private String name; + + public Subject() { + } + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } +} \ No newline at end of file diff --git a/spring-boot-rest/src/main/java/com/baeldung/modelmapper/repository/SubjectRepository.java b/spring-boot-rest/src/main/java/com/baeldung/modelmapper/repository/SubjectRepository.java new file mode 100644 index 0000000000..ddbf3334ec --- /dev/null +++ b/spring-boot-rest/src/main/java/com/baeldung/modelmapper/repository/SubjectRepository.java @@ -0,0 +1,16 @@ +package com.baeldung.modelmapper.repository; + +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.data.repository.PagingAndSortingRepository; +import org.springframework.data.repository.query.Param; +import org.springframework.data.rest.core.annotation.RestResource; + +import com.baeldung.modelmapper.model.Subject; + +public interface SubjectRepository extends PagingAndSortingRepository { + + @RestResource(path = "nameContains") + public Page findByNameContaining(@Param("name") String name, Pageable p); + +} \ No newline at end of file