Jump to content

Объекты данных Java

Объекты данных Java ( JDO ) — это спецификация Java объектов сохранения . Одной из его особенностей является прозрачность служб персистентности для модели предметной области . Постоянные объекты JDO — это обычные языка программирования Java классы ( POJO ); им не требуется реализовывать определенные интерфейсы или расширять специальные классы. JDO 1.0 был разработан в рамках процесса сообщества Java как JSR 12 . JDO 2.0 был разработан под JSR 243 и выпущен 10 мая 2006 года. JDO 2.1 был завершен в феврале 2008 года и разработан проектом Apache JDO . JDO 2.2 был выпущен в октябре 2008 года. JDO 3.0 был выпущен в апреле 2010 года.

Сохранение объекта определяется во внешних метафайлах XML , которые могут иметь расширения, зависящие от поставщика. Поставщики JDO предоставляют разработчикам средства расширения , которые изменяют скомпилированные файлы классов Java, чтобы их можно было прозрачно сохранять. (Обратите внимание, что расширение байт-кода не требуется спецификацией JDO, хотя это обычно используемый механизм для реализации требований спецификации JDO.) В настоящее время поставщики JDO предлагают несколько вариантов сохранения, например, в RDBMS , в OODB или в файлы. .

Расширенные классы JDO переносимы между реализациями разных поставщиков. После улучшения класс Java можно использовать с продуктом JDO любого поставщика.

JDO интегрируется с Java EE несколькими способами. Прежде всего, реализация поставщика может быть предоставлена ​​в виде соединителя JEE. [ объяснить ] . Во-вторых, JDO может работать в контексте сервисов транзакций JEE .

JDO против EJB3 против JPA

[ редактировать ]

Спецификация Enterprise JavaBeans 3.0 (EJB3) также охватывает сохранение, как и EJB v2 с Entity Beans . Между двумя органами по стандартизации возникали конфликты по поводу превосходства. JDO имеет несколько коммерческих реализаций.

В конце концов, постоянство было «вырвано» из «EJB3 Core», и был сформирован новый стандарт — Java Persistence API (JPA). JPA использует javax.persistence пакет и впервые был указан в отдельном документе в спецификации EJB3 JSR 220 , но позже был перенесен в отдельную спецификацию JSR 317 . Существенно, javax.persistence потребует не контейнера EJB и, следовательно, будет работать и в среде Java SE, как это всегда было в JDO. JPA, однако, является стандартом объектно-реляционного отображения (ORM), тогда как JDO является одновременно стандартом объектно-реляционного отображения и стандартом прозрачного сохранения объектов. JDO, с точки зрения API, не зависит от технологии базового хранилища данных, тогда как JPA ориентирован на хранилища данных РСУБД (хотя есть несколько поставщиков JPA, которые поддерживают доступ к нереляционным хранилищам данных через API JPA, например DataNucleus и ОбъектБД).

Ведущие коммерческие реализации JDO и проекты с открытым исходным кодом также предлагают реализацию JPA API в качестве альтернативного доступа к своим базовым механизмам персистентности, которые раньше предоставлялись исключительно через JDO в исходных продуктах. Существует множество реализаций JDO с открытым исходным кодом.

Новые возможности JDO версии 2, которых нет в версии 1

[ редактировать ]
  • Концепция графов отключенных объектов
  • Стандартизированные дескрипторы сопоставления ORM (для реализаций JDO на основе ORM)
  • Улучшения JDOQL (однострочная форма; обязательна поддержка дополнительных методов String, Map и Math)
  • Получите, например, Connection от javax.jdo.PersistenceManager
  • Подробнее: именованные запросы (pm.newNamedQuery), FetchPlan, последовательность, удаление по запросу, несколько пользовательских объектов в PM

Эталонные реализации JDO

[ редактировать ]

См. также

[ редактировать ]

Библиография

[ редактировать ]
  • Джордан, Дэвид; Рассел, Крейг (22 апреля 2003 г.). Объекты данных Java (1-е изд.). О'Рейли Медиа . п. 384. ИСБН  0-596-00276-9 .
  • Тьяги, Самир; Форбургер, Майкл; Маккаммон, Кейрон; Бобзин, Хейко (21 сентября 2003 г.). Основные объекты данных Java (1-е изд.). Прентис Холл . п. 576. ИСБН  0-13-140731-7 .
  • Эццио, Дэвид (6 июня 2003 г.). Использование и понимание объектов данных Java (1-е изд.). Апресс . п. 456. ИСБН  1-59059-043-0 . Архивировано из оригинала 23 декабря 2010 года . Проверено 8 февраля 2010 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 2f1e28ab4f416c668f774a034ddfd40c__1698637740
URL1:https://arc.ask3.ru/arc/aa/2f/0c/2f1e28ab4f416c668f774a034ddfd40c.html
Заголовок, (Title) документа по адресу, URL1:
Java Data Objects - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)