2013-07-05 3 views
0

페이지 전체에서 정보를 검색하는 방법을 이해하는 데 어려움을 겪고 있습니다. 내 현재 응용 프로그램에는 데이터베이스, 서버/서비스 및 프런트 엔드 GUI 클라이언트 응용 프로그램이 있습니다.서버 - 클라이언트 애플리케이션에서의 스프링 데이터 페이지 매기기

백엔드 (서비스)는 다음과 같습니다

IOrdheadService.java

public interface IOrdheadService { 

@GET 
@Path("/ordheads") 
@Produces("application/json") 
List<Ordhead> getOrdheadList(); 

@GET 
@Path("/ordhead/{id}") 
@Produces("application/json") 
Ordhead getOrdhead(@PathParam("id") String id); 

에게 OrdheadService.java

@Service 
@Path("ordheadservice") 
public class OrdheadService implements IOrdheadService { 

@Autowired 
private OrdheadRepository ordheadRepository; 
@Autowired 
private IPrimaryKeyGenerator primaryKeyGenerator; 

@Override 
public List<Ordhead> getOrdheadList() { 
    return ordheadRepository.findAll(); 
} 

@Override 
public Ordhead getOrdhead(@QueryParam("id") String id) { 
    return ordheadRepository.findByPrimaryKey(id); 
} 

OrdheadRepository.java

public interface OrdheadRepository extends JpaRepository<Ordhead, String> { 

Ordhead findByPrimaryKey(String id); 
} 

그리고 일을 e 클라이언트는 다음과 같은 정보를 수신합니다.

private List<Ordhead> resultList; 
    resultList = client.getOrdheadList(); 

그런 다음 | < < < >>> | 화면에 버튼. 페이지와 해당 기능을 복제하려고

, 나는 내 OrdheadService 작동

PageRequest page1 = new PageRequest(
      0, 20, Direction.ASC, "primaryKey"); 
      Pageable p = new PageRequest(0, 20); 
    return ordheadRepository.findAll(page1).getContent(); 

에 다음과 같은 시도 - 처음 20 개 결과를 반환합니다. 그러나 클라이언트가 얼마나 많은 페이지가 있는지 알아야합니다. 그 방법이 (40 개) 기록이 있고 클라이언트는 다음 (20 개) 기록을 얻을 다음과 같은 링크를 읽고 내가 시도 21

기록하기 위해 클라이언트를 이동합니다 >> 버튼을 누르면 기록 (20)에있는 경우 :

https://github.com/SpringSource/spring-data-rest/wiki/Paging-and-Sortinghttp://blog.fawnanddoug.com/2012/05/pagination-with-spring-mvc-spring-data.html

그러나 올바르게 구현하는 방법을 알아 내지 못했습니다.

도움을 주시면 감사하겠습니다.

당신은

답변

1

ordheadRepository.findAll(page1) 페이지의 컨텐츠와 함께 필요한 모든 정보를 포함하는 Page<Ordhead>를 돌려드립니다.

+0

나는 실제로 (코드를 실행하여) 그것을 테스트 할 기회를 얻지 못했지만 지금 javadoc을보고 '페이지 = 새 PageRequest (...) '로 내 라인을 변경하면 - 기능을 사용하는 데 필요한 모든 방법을 제공하십시오. 감사! –

관련 문제