본문 바로가기

웹 프로그래밍/Spring Framework

[Spring / API ] SearchResults


JPAQuery로 query를 작성하여 getResults()로 결과 값들을 가져올 땐 SearchResults 클래스로 반환한다. 자세한건 아래에!


SearchResults 클래스는 메타데이타 검색의 결과를 나타낸다.

결과는 많은 수의 아이템들을 포함할 수도 있기 때문에, 어플리케이션은 결과 셋에 대해 'window'를 필요로 한다. 이 때의 'window'는 SQL에서의  OFFSET과 LIMIT 문의 기능과 비슷하다.

 

결과 셋은 getResults() 메소드가 호출되었을 때에만 유효하다. 만약 getResults() 메소드가 호출되지 않았다면 결과 셋은 비어있게 된다.

 

SearchResults 객체에 정의된 프로퍼티들과 메소드들은 배열로 나타낼 수도 있다. 그래서 이 배열에 있는 결과를 접근할 수 있게 한다.

 

 

 

Properties

 

 

  • readonly Integer length

 

:  현재 이용 가능한 results에 있는 아이템의 갯수.
   getResults() 메소드가 호출되어 MetadataSearch 이벤트가 어플리케이션에게 결과가 이용가능하다는 것을 알리기 전까지는 length의 값은 zero 이다.

 

 

  • readonly  Integer offset

: 전체 결과 셋에 대한 현재 offset.

 

 

  • readonly Integer totalSize

 

: 결과 셋에 있는 전체 아이템의 갯수.
  getResults() 메소드가 호출되어 MetadataSearch 이벤트가 어플리케이션에게 결과가 이용가능하다는 것을 알리기 전까지 totalSize의 값을 정의되지 않는다.

 

 


Methods

 

Object item( Integer index )

: 현재 이용가능한 결과들 중 collection 내에서 아규먼트 index의 위치에 있는 아이템을 반환한다.

 

Boolean getResults( Integer offset, Integer count )

: query에 맞는 아이템 집합을 검색하고 회수(retrieve)한다.

 

void abort()

:  결과 요청을 중지시키고 이 SearchResults 객체와 관련있는 MetadataSearch 객체에 설정되어 있던 query와 제약조건 또는 나열 방법들을 제거한다.



출처 : http://blog.naver.com/muri1004/140198344968