GWT "база данных" (на стороне клиента) - PullRequest
26 голосов
/ 16 августа 2010

Я ищу что-то вроде базы данных для объектов GWT (внутри браузера). Он должен работать без HTML5 или Gears (или каких-либо плагинов для браузера). Он не должен быть способен на все, что может делать база данных, но наиболее важными функциями будут

  • автоматическая индексация , по нескольким столбцам
  • какой-то API или язык для выполнения (ограниченное подмножество) запросов

Это может быть немного похоже на Taffy DB , но должно иметь автоматическую индексацию, а должно предоставлять GWT API. Надеюсь, он будет даже меньше по размеру, чем Taffy, если он повторно использует код из библиотеки GWT.

(Может быть, я должен добавить, что мне не нужно постоянное хранилище. Это нормально, если данные должны быть перезагружены / восстановлены, когда пользователь нажмет на перезагрузку.)

Ответы [ 6 ]

5 голосов
/ 30 августа 2010

XBSDB представляется хорошей библиотекой для клиентской базы данных плюс решение для индексирования .

2 голосов
/ 24 августа 2010

Вы можете взглянуть на itemscript , у него есть «база данных» в памяти, которую вы можете запрашивать, используя REST-подобные URL-фрагменты.Я не пробовал, но выглядит многообещающе.Я должен согласиться с tdavies, что, если вам нравится Taffy, написание JSNI-обертки вокруг этого является довольно тривиальной задачей.

Некоторое время назад я создал простую систему хранения данных в GWT, в которой я использовал существующий интерфейс Comparator.для сортировки созданы простой интерфейс фильтра и простой запрос, используемый для хранения любого количества компараторов и фильтров.Простой универсальный класс ModelManager, который хранил объекты модели в одном из классов коллекции и выполнял мои запросы.Он работал довольно хорошо, даже без поддержки индексации.

Вы не найдете никаких существующих решений для вашей проблемы, я потратил огромное количество времени на ее поиск.Кроме того, почему бы не попробовать HTML5?

1 голос
/ 24 августа 2010

Вы смотрели в хранилище данных Dojo?

Я не уверен, насколько хорошо он соответствует вашим конкретным потребностям, но это чистое решение JavaScript. Как и большая часть Dojo, документация может быть немного трудной для разбора, но есть статья об использовании Dojo Grid и базовом шаблоне MVC на developerWorks, которая может вас заинтересовать.

http://www.ibm.com/developerworks/web/library/wa-aj-dojogrid/index.html

Приветствие.

0 голосов
/ 30 января 2012

Я написал небольшую библиотеку для хранения на стороне клиента в GWT. Он основан на локальном хранилище и работает во всех браузерах HTML5 (включая браузеры смартфонов). Это позволяет хранить данные в объектных хранилищах и базах данных.

Вы можете проверить его здесь и посмотреть, соответствует ли он вашим потребностям: https://code.google.com/p/gwt-localstorage-db/

0 голосов
/ 25 августа 2010

Я бы посоветовал вам пересмотреть свой дизайн. Браузеры - не самое отзывчивое приложение в хороший день по разным причинам. В дополнение к этому, дизайн встраивания базы данных в сеанс браузера (как бы он ни был легок) предъявляет явный спрос к тонкому клиенту. Тонкий клиент может иметь или не иметь ресурсы для поддержки требований.

Если у вас есть явный контроль над тонкими клиентами (корпоративная среда?), Было бы лучше использовать некоторые настольные технологии или апплеты (java?) Вне непосредственного контекста браузера.

0 голосов
/ 24 августа 2010

Вы смотрели на SQLite? Вот удобный видеоурок ...

http://www.youtube.com/watch?v=DZSZIfhzc3A

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...