[BAEL-10781] - Added code for spring data rest pagination

This commit is contained in:
amit2103 2019-01-14 00:37:51 +05:30
parent 4d90ca6c58
commit d16167ea63
3 changed files with 56 additions and 4 deletions

View File

@ -64,22 +64,22 @@ public class DbConfig {
@Configuration
@Profile("h2")
@PropertySource("persistence-h2.properties")
@PropertySource("classpath:persistence-h2.properties")
class H2Config {}
@Configuration
@Profile("hsqldb")
@PropertySource("persistence-hsqldb.properties")
@PropertySource("classpath:persistence-hsqldb.properties")
class HsqldbConfig {}
@Configuration
@Profile("derby")
@PropertySource("persistence-derby.properties")
@PropertySource("classpath:persistence-derby.properties")
class DerbyConfig {}
@Configuration
@Profile("sqlite")
@PropertySource("persistence-sqlite.properties")
@PropertySource("classpath:persistence-sqlite.properties")
class SqliteConfig {}

View File

@ -0,0 +1,37 @@
package com.baeldung.models;
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;
}
}

View File

@ -0,0 +1,15 @@
package com.baeldung.repositories;
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.models.Subject;
public interface SubjectRepository extends PagingAndSortingRepository<Subject, Long> {
@RestResource(path = "nameContains")
public Page<Subject> findByNameContaining(@Param("name") String name, Pageable p);
}