Java Framework de persistence

Java Framework de persistence

Persistance (informatique)

Page d'aide sur l'homonymie Pour les articles homonymes, voir persistance.

En programmation, la gestion de persistance des données (en anglais : persistence) et éventuellement des états de programme se réfère au mécanisme responsable de la sauvegarde et la restauration de données, afin qu'un programme puisse se terminer sans que ses données ni son état d'exécution soient perdus.

Ces informations de reprise peuvent être sauvegardées sur disque ou transmises à un serveur (un serveur de bases de données relationnelles, par exemple).

Tout mécanisme logiciel de persistance acceptable se doit de convertir les données en format indépendant de l'architecture matérielle avant de les sauvegarder. Toutefois, pour des raisons de rapidité d'exécution en cas d'urgence, une sauvegarde dans un format spécifique reste acceptable aussi s'il existe par ailleurs un mécanisme de conversion de cet état vers une forme portable.

Du fait de la différence de modèles entre les bases de données et les langages de programmation (notamment les langages objet) la notion de correspondance entre modèles (en anglais : mapping) est centrale.

Sommaire

Exemples

Les termes utilisés sont des couches logicielles permettant l'accès des données aux fichiers ou aux bases de données. L'utilisation d'une base de données objets évite le besoin d'un ORM utilisé dans le cas de l'utilisation d'un langage objet et d'un stockage relationnel.

APL

Le langage et système APL était muni de persistance dès 1969 : les programmes, les variables et l'état d'exécution y sont en effet contenus directement dans ce que l'on nomme un workspace (espace de travail). La commande )CONTINUE permet de sauvegarder l'ensemble, qui sera automatiquement rechargé à l'identique dès le redémarrage du système, y compris si l'on était dans une session de débogage. Plusieurs espaces de travail, ou le même à différentes étapes de traitement, peuvent être sauvegardés sous des noms différents.

Le même concept est présent dans Smalltalk avec sa notion d'image.

Java

fichier
RelStorage au format pickle
module driver basée sur les standards
JDBC
API
Java Persistance API
JDO
EJB3
SDO
Fractal
Component
Speedo implémente JDO
JPOX implémente JDO JPA
ORM
Hibernate (ORM) a accès a HSQLDB (sgbd) par JDBC (interface)
iBatis compatible XML relationnel
TopLink : développé par Oracle compatible JPA
Cayenne compatible jdbc et fichier xml
JORM
framework
MEDOR
Perseus
ASM

Cas particulier de Prevayler qui est une interface qui stocke toutes les données en RAM avec fichier de sauvegarde

Python

fichier au format pickle est spécifique a python et est portable ,indépendant des plateformes
shelve dictionnaire qui utilise pickle (fichier)
pickle module python amélioré par cPickle (fichier)
module et sgbd
ZODB
module driver qui est une couche au-dessus d'une base de données qui doit être installée en premier
anydbm , dbhash , dbm , dumbdbm, gdbm , whichdb
Psycopg
Mysql
API
il n'existe pas d' API standard faisant abstraction de la base de donnée utilisé comme ODBC sous Window. Le plus connu a pour nom DB-API. Le driver multiplateforme a pour nom mxODBC.
module ORM qui fournit une API de programmation évitant l'utilisation du SQL .
SQLAlchemy
Storm ORM
SQLobject

Autres

  • En électronique numérique, les données telles les instructions d'un circuit programmables doivent être préservées (EEPROM, Flash, etc)
  • Les serveurs de base de données relationnelles sauvegardent généralement les bases de données sur disque et les modifications sur un fichier journal (mécanisme du COMMIT).
  • La sérialisation Java, ainsi que celle de Perl permettent de sauvegarder les objets sur disque ou dans une base de données relationnelle. Le langage Python dispose d'un module pickle pour sauver/restaurer des graphes d'objets sur disque.
  • Le moteur de jeux Agar sauvegarde sa hiérarchie d'objets (tels les cartes et les personnages) en format binaire. Le concepteur de niveaux crée la hiérarchie initiale et le joueur la modifie au cours du jeu.
  • Les commandes )SAVE et )CONTINUE en APL permettent de sauvegarder la totalité de son environnement de travail (workspace) en catastrophe, et de reprendre le tout ensuite exactement là où on l'avait laissé. Forth dispose d'un mécanisme analogue.
  • Les langages SmallTalk et Common Lisp ont la capacité de sauver sur disque une image (en anglais snapshot) du système ou du programme en train de s'exécuter. L'exécution du programme correspondant à cette image peut être reprise plus tard.
  • La notion de prévalence des objets (sérialisation transparente des graphes d'objets en mémoire et support des transactions sur ces objets) connaît un récent succès d'estime, à travers ses implémentations en Java (Prevayler) et Common Lisp (Elephant).

Voir aussi

Ce document provient de « Persistance (informatique)#Java ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Java Framework de persistence de Wikipédia en français (auteurs)

Игры ⚽ Нужно сделать НИР?

Regardez d'autres dictionnaires:

  • Java Frameworks de persistence — Persistance (informatique) Pour les articles homonymes, voir persistance. En programmation, la gestion de persistance des données (en anglais : persistence) et éventuellement des états de programme se réfère au mécanisme responsable de la… …   Wikipédia en Français

  • Java Persistence API — The Java Persistence API, sometimes referred to as JPA, is a Java programming language framework that allows developers to manage relational data in Java Platform, Standard Edition and Java Platform, Enterprise Edition applications.The Java… …   Wikipedia

  • Java Persistence API — (JPA)  API, входящий с версии Java 5 в состав платформ Java SE и Java EE, предоставляет возможность сохранять в удобном виде Java объекты в базе данных[1]. Существует несколько реализаций этого интерфейса, одна из самых популярных использует …   Википедия

  • Java EE — Java Platform, Enterprise Edition o Java EE (anteriormente conocido como Java 2 Platform, Enterprise Edition o J2EE hasta la versión 1.4), es una plataforma de programación parte de la Plataforma Java para desarrollar y ejecutar software de… …   Wikipedia Español

  • Java Platform, Enterprise Edition — Тип Платформа программирования Разработчик Sun Microsystems …   Википедия

  • Java Platform — Java Platform, Enterprise Edition Java Platform, Enterprise Edition Тип Платформа программирования Разработчик Sun Microsystems …   Википедия

  • Java 2 Enterprise Edition — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… …   Deutsch Wikipedia

  • Java 2 Platform Enterprise Edition — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… …   Deutsch Wikipedia

  • Java EE — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… …   Deutsch Wikipedia

  • Java Platform Enterprise Edition — Java Platform, Enterprise Edition, abgekürzt Java EE oder früher J2EE, ist die Spezifikation einer Softwarearchitektur für die transaktionsbasierte Ausführung von in Java programmierten Anwendungen und insbesondere Web Anwendungen. Sie ist eine… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”