Oracle TopLink — это фреймворк отображения и сохранения для разработчиков Java . TopLink производится Oracle и является частью серверов OracleAS , WebLogic и OC4J компании Oracle. [1] Это фреймворк сохранения и преобразования объектов. TopLink предоставляет инструменты разработки и функциональные возможности времени выполнения, которые упрощают процесс разработки и помогают повысить функциональность. Постоянные объектно-ориентированные данные хранятся в реляционных базах данных, что помогает создавать высокопроизводительные приложения. Хранение данных в XML (Extensible Markup Language) или реляционных базах данных становится возможным благодаря преобразованию их из объектно-ориентированных данных.
Богатый пользовательский интерфейс возможен на TopLink с помощью TopLink Mapping Workbench. Этот Mapping Workbench позволяет с легкостью выполнять следующее.
Среда разработки JDeveloper от Oracle обеспечивает простую интеграцию этих функций, предоставляемых Mapping Workbench.
Используя TopLink , пользователи могут больше сосредоточиться на своей основной задаче и позволить TopLink заниматься интеграцией сохранения и преобразования объектов в их приложение. Процесс проектирования, внедрения и развертывания ускоряется, поскольку TopLink поддерживает различные источники данных и форматы, такие как реляционная база данных , объектно-реляционная база данных , корпоративная информационная система (EIS), XML и многие другие.
Toplink изначально был разработан The Object People в Smalltalk. Он был портирован на Java в 1996-1998 годах и назван "TopLink for Java". В 2002 году TopLink был приобретен Oracle Corporation и был разработан в рамках продукта Oracle Fusion Middleware. Код TopLink был передан в дар Eclipse Foundation, и проект EclipseLink родился в 2007 году. [1] EclipseLink теперь обеспечивает функциональность TopLink. Sun Microsystems выбрала EclipseLink в марте 2008 года в качестве реализации для JPA 2.0, JSR 317 reference. С тех пор было выпущено несколько версий TopLink, и последняя версия 12c (12.1.3) доступна для бесплатной загрузки. [2]
Компонент среды выполнения TopLink предоставляется ядром EclipseLink. Этот API обеспечивает прямой доступ к среде выполнения, которая встроена в приложение. Поведение сохранения обеспечивается путем выполнения вызовов приложения, которые вызывают API EclipseLink для выполнения этих функций, что обеспечивает безопасный доступ к общим базам данных. [3]
Импортируйте следующий класс для использования расширенных функций EclipseLink.
импорт org.eclipse.persistence.*
Связывание классов Java с XML-схемами возможно с помощью Object-XML, который является компонентом EclipseLink. Реализуя JAXB , информация о сопоставлении предоставляется через аннотации. Он также обеспечивает манипуляцию XML. [3]
Объекты данных службы (SDO) обеспечивают использование API SDO, использование динамических объектов для настройки и манипулирования XML, использование статических объектов данных и преобразование XML-схемы. [3]
Database Web Services (DBWS) облегчает доступ к реляционным базам данных с помощью веб-сервиса. Доступ к базе данных может быть осуществлен без необходимости написания кода Java. Сообщения XML SOAP и базы данных связаны компонентом времени выполнения DBWS, который использует EclipseLink. [3]
TopLink Grid — это механизм интеграции, который обеспечивает связь между Oracle Coherence и EclipseLink. Приложение обычно взаимодействует с реляционной базой данных, которая является его основной базой данных. Но с TopLink приложение может хранить данные в сетке Coherence, называемой JPA на сетке. [4]
Функциональность TopLink Grid может быть использована только при наличии у пользователя лицензии Oracle Coherence. Эта функциональность предоставляется:
топлинк-сетка.jar
Чтобы получить поддержку TopLink Grid и EclipseLink, пользователям также необходимо импортировать следующий пакет классов.
орг.затмение.когерентность.*
Операции с базой данных, такие как Insert , Update и Delete, также могут выполняться в TopLink. Изменения, внесенные в базу данных, отражаются в кэше Oracle Coherence . В Java Persistence API сущность является классом сохранения. Используя TopLink, можно реализовать ряд функций производительности для записи больших объемов данных. Пакетная запись, поддержка хранимых процедур, привязка параметров, упорядочивание операторов и другие функции предлагаются для удовлетворения ограничений базы данных.
Основные операции:
Метод EntityManager persist(Object entity) используется для добавления экземпляра и пометки его для вставки в базу данных.
entityManager.getTransaction (). begin ( ) ; Сотрудник newEmployee = новый Сотрудник ( 5 ) ; entityManager.persist ( newEmployee ) ; entityManager.getTransaction ( ). commit () ;
По завершении транзакции newEmployee
данные будут добавлены в базу данных. [5]
Обновление сущности означает простое чтение транзакции и обновление свойств этой сущности. Обновление Employee LastName может быть выполнено следующим образом. [5]
entityManager.getTransaction ( ) . begin ( ); Сотрудник существующийСотрудник = entityManager.find ( Employee.class , 5 ) ; существующийСотрудник.setLastName ( " NewLastName " ) ; entityManager.getTransaction ( ) . commit () ;
Удаление сущности является противоположностью вставки и может быть выполнено с использованием remove(Object entity)
метода EntityManager.
entityManager.getTransaction ( ) . begin ( ) ; Сотрудник существующийСотрудник = entityManager.find ( Employee.class , 5 ) ; entityManager.remove ( существующийСотрудник ) ; entityManager.getTransaction ( ) . commit ( ) ;
Метод EntityManager flush()
удаляет сущность по завершении транзакции. [5]
Пользователи могут использовать большинство инструментов на рынке и использовать TopLink вместе с ним. Но следующие инструменты обеспечивают особую интеграцию с TopLink.