Как применить пейджинг в smartgwt Listgrid

Мне нужно показать более 10 000 записей в listgrid. Мой код работает нормально, но я столкнулся с проблемой производительности, это занимает слишком много времени. Я хочу применить разбиение на страницы в Listgrid, чтобы повысить производительность моей listgrid. Я обнаружил, что следующая документация по методам упоминается о разбиении на страницы, но мне не удалось ее применить. Может ли кто-нибудь объяснить, как я могу использовать этот метод?

protected void transformResponse(DSResponse response,
                                 DSRequest request, Object data)

http://www.smartclient.com/smartgwt/javadoc/com/smartgwt/client/data/DataSource.html#transformResponse%28com.smartgwt.client.data.DSResponse,%20com.smartgwt.client.data.DSRequest,%20java.lang.Object%29


person Dhruva    schedule 17.07.2012    source источник
comment
Трудно ответить, не зная, как вы заполняете свою таблицу списков. В DSRequest методы setStartRow () и setEndRow () используются для выборки соответствующих записей. В DSResponse вы найдете те же методы, а также setTotalRows (), чтобы сообщить сетке списка, какую часть результатов вы выбрали. Использование этих методов зависит от того, как вы выбираете данные для списка.   -  person Eric C.    schedule 17.07.2012
comment
@ EricC. Я устанавливаю список в источнике данных, затем устанавливаю источник данных в Listgrid. datasource.setdata (список), затем установите listgrid.setdatasource (источник данных); Я сделал все 10000 записей, затем я устанавливаю их в сетке списка. Я хочу, чтобы, поскольку я делаю некоторые записи 100 или 200, я показываю их в сетке списка и в фоновом режиме создаются записи.   -  person Dhruva    schedule 18.07.2012
comment
Зависит от того, как построена загрузка вашего сервера, но вам, возможно, придется использовать listgrid.setDataFetchMode(FetchMode.PAGED) и listgrid.setDataPageSize(100);   -  person Eric C.    schedule 19.07.2012
comment
@Dhruva, рекомендую перейти по этой ссылке (stackoverflow.com/questions/9468486/) один раз. а также этот: http://stackoverflow.com/questions/9799090/why-smartgwt-does-not-have-paginated-grid   -  person RAS    schedule 19.07.2012
comment
@EricC. Я уже сделал это, это помогает загружать объект, когда мы прокручиваем сетку списка, но мне нужна разбивка на страницы, как сказано в требовании. dataSource.setResultBatchSize (50); grid.setDataFetchMode (FetchMode.PAGED); grid.setAutoFitData (Autofit.VERTICAL); grid.setShowAllRecords (ложь); grid.setDataPageSize (50); grid.setAutoFetchData (Boolean.TRUE); Спасибо за ваши предложения   -  person Dhruva    schedule 19.07.2012
comment
Ах, то, что вы называете разбиением на страницы, - это управление данными с помощью вкладок (например: tab1 содержит 50 строк, затем tab2 еще 50 и так далее ...). Это не реализовано в smartgwt, но посмотрите ссылки @RAS.   -  person Eric C.    schedule 19.07.2012


Ответы (1)


Используя разбиение на страницы для сетки списка, вы вручную подготавливаете панель разбивки на страницы и помещаете некоторые элементы управления на щелчок, который контролирует загрузку данных сеткой списка. Я пробую, чтобы он работал, и мы уверены, что увеличиваем производительность сети.

person padmavathi    schedule 22.10.2014