2008-09-18 4 views
2

감사 내역의 보고서보기를 작성 중이므로이를 .jsp에 표시해야합니다. 데이터베이스에서 화면으로 데이터를 가져 오는 "가장 좋은"방법은 무엇입니까?매우 큰 결과 집합의 데이터를 표시하는 가장 좋은 방법은 무엇입니까?

우리는 의존성 삽입, 데이터 액세스 객체 및 Hibernate를 위해 Spring을 사용하고 있습니다. 이 보고서에는 최대 절전 모드 또는 직선 jdbc를 사용할 수 있습니다.

모든 레코드를 메모리에로드하면 메모리가 부족합니다.

jsp에서 쿼리를 실행하지 않는 아이디어가 있습니까?

답변

6

이 당신의 절전 결과의 페이지 매김을 사용하는 자연의 장소입니다 것 같다 - 서블릿 수준에서 쿼리를 실행하고이 사람이 설명하는 방법과 유사한 방법으로 결과 페이지를 매기는 :

http://blog.hibernate.org/Bloggers/Everyone/Year/2004/Month/08/Day/14#pagination

이것은 내가 본 Hibernate 페이지 매김을 구현하는 가장 쉬운 방법입니다 ...

+0

나는 그것을 좋아한다, 링크를 위해 감사한다! – 18Rabbit

1

페이징을 사용하고 한 번에 페이지에서 특정 수의 행만로드하면됩니다.

2

Display Tag Library은 서블릿이나 포틀릿에서 페이지 매김 된 결과 세트를 제공하는 데 매우 좋습니다. 그러나 일반적으로 메모리에로드 된 전체 목록과 함께 작동합니다. 따라서 org.displaytag.pagination.PaginatedList 인터페이스를 구현하여 페이지 매김 된 결과 세트로 작업하려면 약간의 작업을해야합니다. 디스플레이 태그 웹 사이트에는 tutorial이 있습니다. 튜토리얼에는 그다지 익숙하지 않지만 인터페이스를 다시 구현하는 것은 매우 쉽습니다.

1

또 다른 방법은 scroll()을 사용하여 한 번에 한 행을 스트리밍하는 것입니다.

관련 문제