Я интегрировал кролика с базой данных Oracle, и я сохраняю
Данные с использованием Jackrabbit, если я не хочу извлекать данные, используя Jackrabbit, каким образом я могу получить данные. В базе данных данные хранятся в типах blob.Как получить данные из базы данных без использования apache jackrabbit datastore?
ответ
Как уже упоминалось выше, в случае с TTTTrippin, структура ORM упростит ситуацию. Но если вы действительно хотите сделать это вручную в Oracle, подход будет:
Изучите код ОСМ http://jackrabbit.apache.org/jcr/object-content-mapping.html, а затем получить содержание в соответствии с логикой ассоциаций и отношений с Oracle, вероятно, не в одной, а несколько запросов на документ; в конечном итоге с пользовательскими функциями, которые поддерживаются в Oracle и могут упростить задачу.
Было бы интересно узнать предысторию ваших вопросов. Вы отметили его «Spring» и «CMS». Я не вижу причин, по которым вы хотели бы получить доступ к данным непосредственно из Oracle, это утомительно. Если вы хотите предоставить API для контента во внешнюю систему, или если вы потеряли CMS, который был когда-то перед вами и просто использовал репортаж Jackrabbit в качестве хранилища контента, вы все равно можете использовать такую структуру ORM/OCM автономно, чтобы упростить доступ к данным.
То, как Jackrabbit хранит данные в БД, является деталью реализации, и это не волшебным образом отображает это в «красивую» схему БД, если это то, что вы имеете в виду. (Иерархическая природа и все функции JCR делают это невозможным). Это немного похоже на файловую систему Unix, а затем спрашивает, как я могу прочитать низкоуровневые inodes и т. Д. Из реализации файловой системы - вы действительно не должны.
И последнее, но не менее важное: обратите внимание на то, что при запуске ничего другого (кроме настройки кластера Jackrabbit) не следует записывать в БД (таблицы, используемые Jackrabbit), так как это легко приведет к повреждению данных.
Короткий ответ, вы не можете. Если вам нужно напрямую получить доступ к данным в базе данных, рассмотрите, например, пример. структура ORM. – TedTrippin
@TedTrippin Структура ORM - это не что иное, как код, который инкапсулирует бит (или немного больше) абстракции. Но этот фрагмент кода также должен будет получить доступ к базе данных через JDBC в конце, так почему же OP не сможет сделать это с помощью своего собственного кода? Он должен уметь изучать код http://jackrabbit.apache.org/jcr/object-content-mapping.html, а затем получать контент, хотя, вероятно, не в одном, а в нескольких запросах на один документ, определенные функции, которые поддерживаются в Oracle и могут упростить задачу. Думаю, это был бы «длинный ответ»? –
Если OP должен пройти эти длины, то они выбрали неправильные технологии. Моя точка зрения заключалась в том, что с помощью ORM данные были бы легко доступны непосредственно из базы данных без необходимости «изучать код» и писать собственный код. – TedTrippin