Доступ к данным Java для CouchDB: ORM или REST? - PullRequest
2 голосов
/ 04 января 2012

Я работаю над приложением, действующим в качестве шины обслуживания событий для интеграции различных устаревших компонентов .... Приложение использует хранилище данных для аудита всех событий и запросов, отправляемых между системами, а также для хранения метаданных о подписке на шиныконечные точки ... и т.д..Я хочу использовать CouchDB в качестве хранилища данных, поскольку в него уже встроены многие требования моего приложения (REST API, репликация, документы с метаданными версий и т. Д.).Вот как выглядит мой стек приложений:

  [spring-integration filters/routers/service activators]
  [service layer]
  [dao layer]
  [database]

С базой данных CouchDB, я полагаю, что слой DAO будет либо библиотекой Java Ektorp, либо простым клиентом REST.Вот мой вопрос: разве не строится слой DAO с видом Ektorp?Я имею в виду, почему бы просто не использовать RestTemplate в слое сервиса, который общается с представлениями и проектными документами в CouchDB, и сэкономить мне некоторые усилия по написанию кода?

Я что-то упустил?

Спасибо,

Ответы [ 2 ]

4 голосов
/ 04 января 2012

Я не знаю, пробовали ли вы это еще, но LightCouch во многих отношениях действовал бы как шаблон REST.Помимо обработки преобразования документов в ваши домены и разработки документов / представлений, вы можете использовать его в качестве клиента для CouchDB в любом месте приложения, например DAO или на уровне служб.

3 голосов
/ 04 января 2012

Если вы катите свой собственный, вам нужно будет выполнить анализ / отображение результатов просмотра json, а что нет.

Помимо эффективного анализа результатов просмотра / сопоставления объектов, которое может быть утомительно разрабатывать самостоятельно, Ektorp также поможет вам с управлением проектной документацией с помощью аннотаций.

В Ektorp есть еще много функций, которые, я думаю, вы оцените, когда углубитесь в CouchDB.

Если ваше приложение будет выполнять только простое получение отдельных документов, тогда может быть достаточно шаблона отдыха. В противном случае я не думаю, что вам удастся сделать это самостоятельно.

...