|
|
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
1)Собственно интересует данный вопрос. Нужно реализовать редактирование данных прямо в таблице. JdbcRowSet для этого подходит как нельзя лучше, но туториалов по нему кот наплакал. Пробовал пример JTableBinding из netBeans - скорость работы никакая. 2)Подскажите, может есть более совершенный способ организовать редактирование данных прямо в таблице? Пока наиболее быстродейственным и простым вариантом мне представляется изменение RowSet по команде пользователя (напр. Добавить, Изменить) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:24:11 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
RowSet это просто альтернатива ResultSet, с приведенным к стандарту именованием. Разницы в работе с ResultSet нет никакой. А в чем именно возникли сложности? Реализуете AbstractTableModel и ListSelectionModel в виде обертки над ResultSet. Выполняете запрос, держите открытый ResultSet. Апдейты сохраняеете туда же. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:39:05 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Даже туториал на эту тему есть! http://docs.oracle.com/javase/tutorial/jdbc/basics/jdbcswing.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:40:20 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
LedFly, нету.Тебе в delphi или Net. Ну ил SmartGWT попробуй ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:40:38 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, как раз так как вы написали я и собирался реализовать, но потом "засмотрелся" в сторону data binding, думал там совершеннее можно реализовать редактирование данных в таблице. Значит похоже data binding для моей задачи не желательно использовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:44:26 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Petro123, как-раз с delphi и ADO я и пришел) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:45:58 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Petro123нету.Тебе в delphi или Net. Для открытого курсора делается на коленке за пару часов. Нет именно отвязанного DataSet, который может синхронизироваться с базой, когда нужно. Petro123Ну ил SmartGWT попробуй Web. Принципиальной разницы в фичах, по сравнению с JTable - нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:46:19 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
BlazkowiczДля открытого курсора делается на коленке за пару часов. Нет именно отвязанного DataSet, который может синхронизироваться с базой, когда нужно. - там вроде кэша нету в коробке - вместе с биндингом и редактированием наверно подольше? Просто инфы очень мало :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:50:08 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
LedFlyBlazkowicz, как раз так как вы написали я и собирался реализовать, но потом "засмотрелся" в сторону data binding, думал там совершеннее можно реализовать редактирование данных в таблице. Значит похоже data binding для моей задачи не желательно использовать? Под data binding обычно подразумевается связь с JavaBeans - объектами. Т.е. классы типа Teacher, Student. Таблица (JTable) автоматически связывается со списоком таких объектов. А вот синхронизировать списки этих объектов с базой будет отдельным увлекательным занятием. Поэтому если нужно просто редактировать открытый курсор, то проще написать свою реализацию. Взять любой пример, который нормально читает из скроллируемого ResultSet и добавить сохранение изменений. Хотя, возможно, какой-то кэш ещё понадобится, чтобы постоянно не дергать курсор при рендеринге. Но, это уже нюансы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:51:36 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
отвязанный (ClientDataset) и в Delphi редко. Вот подкачка-кэш при ,больших таблах - часто ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:51:37 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
LedFlyPetro123, как-раз с delphi и ADO я и пришел) тогда сразу на ОРМ. Это тебе не пригодится IMHO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:53:30 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Petro123- там вроде кэша нету в коробке - вместе с биндингом и редактированием наверно подольше? С редактированием и без кэша. Под биндингом что именно подразумевается? Если биндинг колонок UI на колонки DВ, то это через ResultSetMetaData делается на раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:54:01 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Petro123Вот подкачка-кэш при, больших таблах - часто Кэш на чтение это ещё пол дня работы. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:56:11 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, даааа. Ради красоты Модели, пол-дня то, полдня то, ... А прогеры ведь студенты :) .... Биндинг (мож неправильно) - DataSourse\DataSet c SQL маппингом. Присоединил, автогенерация колонок в табле и ВСЁ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 16:59:33 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Petro123даааа. Ради красоты Модели, пол-дня то, полдня то, ... А прогеры ведь студенты :) Ну, студенту - неделя на всё про всё. Petro123Биндинг (мож неправильно) - DataSourse\DataSet c SQL маппингом. Присоединил, автогенерация колонок в табле и ВСЁ. Из TableModel читаем ResultSetMetaData напрямую - получаем имена колонок, тип и количество. Editor/Renderer под все основные типы в JTable уже есть. Что ещё биндить? Нужен ли кэш - вопрос открытый. У клиента на проекте несколько лет грид работал, привязаный на 300К записей. Без всякого кэша скролируется\редактируется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 17:12:22 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
BlazkowiczPetro123даааа. Ради красоты Модели, пол-дня то, полдня то, ... А прогеры ведь студенты :) Ну, студенту - неделя на всё про всё. ======== офигеть. Верю :) Petro123Биндинг (мож неправильно) - DataSourse\DataSet c SQL маппингом. Присоединил, автогенерация колонок в табле и ВСЁ. Из TableModel читаем ResultSetMetaData напрямую - получаем имена колонок, тип и количество. Editor/Renderer под все основные типы в JTable уже есть. Что ещё биндить? Нужен ли кэш - вопрос открытый. У клиента на проекте несколько лет грид работал, привязаный на 300К записей. Без всякого кэша скролируется\редактируется. ===== от канала зависит. У меня 10K на 0,5 мегабите 15 сек табла открыв. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 17:17:24 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Petro123от канала зависит. У меня 10K на 0,5 мегабите 15 сек табла открыв. Открытый курсор за пределами LAN? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 17:19:14 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, да, ADSL в подмосковье и оракл наружу портом :) Тесты делал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 17:21:45 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
Тогда нафиг открытый курсор? Просто ленивую постраничную загрузку сделать. Вроде такого: http://rubenlaguna.com/wp/2010/01/13/jtable-bound-to-a-database-with-lazy-loading/index.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 17:26:23 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
А не подскажите, почему данный фокус проходит? Код: java 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 17:27:53 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
то есть данные в таблице конечно не появляются, но и компилятор ошибку не выдает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 17:30:22 |
|
||
|
Связь JTable и JdbcRowSet
|
|||
|---|---|---|---|
|
#18+
BlazkowiczТогда нафиг открытый курсор? Просто ленивую постраничную загрузку сделать. Вроде такого: http://rubenlaguna.com/wp/2010/01/13/jtable-bound-to-a-database-with-lazy-loading/index.html ну, я только для теста, из дома загружал. Технически, я давал ссылки на DevExpress там достаточно сменить флаг DataMode на ленивую. И всё. Он уже переключает ПРИБИНДЕННЫй DataSet сам. Ничего писать не надо. НО! Пользователи не хотят, т.к. сортировка становится не клиентская (на букву), а серверная. (У них канала потолще). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2012, 17:32:07 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37620562&tid=2132804]: |
0ms |
get settings: |
11ms |
get forum list: |
23ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
51ms |
get topic data: |
19ms |
get forum data: |
4ms |
get page messages: |
113ms |
get tp. blocked users: |
3ms |
| others: | 358ms |
| total: | 594ms |

| 0 / 0 |
