Oracle TopLink est un de mappage et de persistance destiné aux développeurs Java . Développé par Oracle, TopLink fait partie des serveurs OracleAS , WebLogic et OC4J d'Oracle. Il s'agit d'un framework de persistance et de transformation d'objets. TopLink fournit des outils de développement et des fonctionnalités d'exécution qui simplifient le processus de développement et contribuent à accroître les fonctionnalités. Les données persistantes orientées objet sont stockées dans des bases de données relationnelles, ce qui permet de créer des applications performantes. Le stockage des données au format XML (Extensible Markup Language) ou dans des bases de données relationnelles est possible grâce à la transformation des données orientées objet.
Une interface utilisateur est possible sur TopLink grâce à TopLink Mapping Workbench. Cet outil de cartographie permet de réaliser les opérations suivantes :
- Cartographie graphique d'un modèle objet vers un modèle de données .
- Génération du modèle de données à partir de son modèle objet et vice versa.
- Cartographie automatique des modèles de données et des modèles d'objets existants.
L'environnement de développement intégré JDeveloper d'Oracle facilite l'intégration de ces fonctionnalités fournies par l'atelier de mappage.
Grâce à TopLink , les utilisateurs peuvent se concentrer sur leur objectif principal et laisser TopLink gérer l'intégration de la persistance et de la transformation des objets dans leur application. La conception, l'implémentation et le déploiement sont accélérés, car TopLink prend en charge de nombreuses sources et formats de données, tels que les bases de données relationnelles , les bases de données objet-relationnelles , les systèmes d'information d'entreprise (SIE), XML et bien d'autres.
Histoire
Toplink was originally developed by The Object People in Smalltalk. It was ported to Java in 1996-1998 and called "TopLink for Java". In 2002, TopLink was acquired by Oracle Corporation and was developed under the Oracle Fusion Middleware product. The TopLink code was donated to the Eclipse Foundation and the EclipseLink project was born in 2007. The EclipseLink now provides the functionality of TopLink. Sun Microsystems selected EclipseLink in March 2008, as the implementation for the JPA 2.0, JSR 317 reference. A number of versions of TopLink have been released since and the latest version 12c (12.1.3) is available for free Download.
Key Features
- Rapidly build high-performance enterprise applications that are scalable and maintainable.
- Extensive mapping support using relational, object-relational data type and XML.
- Advanced query capability including native SQL, Java Persistence Query Language (JPQL) and EclipseLink Expressions framework.
- RESTful Services
- Just-in-time reading.
- Tenant Isolation
- NoSQL
- Various Optimistic and pessimistic locking policies and options.
- JSON
- Integration with commonly used application servers and databases.
- External Metadata Sources
- TopLink Grid.
Key Components
EclipseLink Core and API
The runtime component of TopLink is provided by the EclipseLink Core. This API provides direct access to the runtime, which is embedded into the application. Persistence behavior is enabled by making application calls that invoke EclipseLink API to perform these functionalities which provides safe access to shared databases.
Import the following class to use extended functionality of EclipseLink.
Object-Relational(JPA 2.0) Component
The binding of Java classes to XML schemas is possible with the help of Object-XML, which is an EclipseLink component. By implementing JAXB, mapping information is provided through annotations. It also provides manipulation of XML.
SDO Component
The Service Data Objects (SDO) provides with the use of SDO API, use dynamic objects to customize and manipulate XML, use of static data objects and conversion of XML Schema.
Database Web Services Component
Les services Web de bases de données (DBWS) facilitent l'accès aux bases de données relationnelles via un service Web. L'accès à une base de données peut être effectué sans avoir à écrire de code Java. Les messages SOAP XML et les bases de données sont connectés par le composant d'exécution de DBWS, qui utilise EclipseLink.
Grille TopLink
TopLink Grid est un mécanisme d'intégration qui assure la connexion entre Oracle Coherence et EclipseLink. Une application interagit généralement avec la base de données relationnelle, qui est sa base de données principale. Mais avec TopLink, l'application peut stocker des données sur la grille Coherence, appelée JPA sur la grille.
La fonctionnalité TopLink Grid ne peut être utilisée que si l'utilisateur dispose d'une licence Oracle Coherence. Cette fonctionnalité est fournie par :
toplink-grid.jar
Pour bénéficier de la prise en charge de TopLink Grid et d'EclipseLink, les utilisateurs doivent également importer le package de classes suivant.
org.eclipse.coherence.*
Opérations TopLink (Insérer, Mettre à jour, Supprimer)
Les opérations de base de données telles que l'insertion , la mise à jour et la suppression peuvent également être effectuées dans TopLink. Les modifications apportées à la base de données sont répercutées dans le cache Oracle Coherence . Dans l'API Java Persistence , une entité est une classe de persistance. TopLink permet d'implémenter de nombreuses fonctionnalités d'optimisation des performances pour l'écriture de volumes importants de données. L'écriture par lots, la prise en charge des procédures stockées, la liaison des paramètres, l'ordonnancement des instructions et d'autres fonctionnalités sont proposées pour répondre aux contraintes de la base de données.
Les opérations de base sont
Insérer
La méthode EntityManager persist(Object entity) est utilisée pour ajouter une instance et la marquer pour insertion dans la base de données.
Une fois la transaction terminée, les newEmployeedonnées seront insérées dans la base de données.
Mise à jour
Mettre à jour une entité signifie simplement lire la transaction et mettre à jour les propriétés de cette entité. La mise à jour du nom de famille de l'employé peut être effectuée comme suit.
Supprimer
La suppression d'une entité est l'inverse de son insertion et peut être effectuée à l'aide d'une remove(Object entity)méthode de l'EntityManager.
La méthode EntityManager flush()supprime l'entité à la fin de la transaction.
Outils de développement
Les utilisateurs peuvent utiliser la plupart des outils du marché et les combiner avec TopLink. Cependant, les outils suivants offrent une intégration spécifique avec TopLink.