2005-11-27 16:17:00 +00:00
|
|
|
|
<?xml version='1.0' encoding="iso-8859-1"?>
|
|
|
|
|
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3CR3//EN"
|
|
|
|
|
"../support/docbook-dtd/docbookx.dtd"
|
|
|
|
|
[
|
|
|
|
|
<!ENTITY tutorial SYSTEM "modules/tutorial.xml">
|
|
|
|
|
<!ENTITY architecture SYSTEM "modules/architecture.xml">
|
|
|
|
|
<!ENTITY configuration SYSTEM "modules/configuration.xml">
|
|
|
|
|
<!ENTITY persistent-classes SYSTEM "modules/persistent_classes.xml">
|
|
|
|
|
<!ENTITY basic-mapping SYSTEM "modules/basic_mapping.xml">
|
|
|
|
|
<!ENTITY collection-mapping SYSTEM "modules/collection_mapping.xml">
|
|
|
|
|
<!ENTITY association-mapping SYSTEM "modules/association_mapping.xml">
|
|
|
|
|
<!ENTITY component-mapping SYSTEM "modules/component_mapping.xml">
|
|
|
|
|
<!ENTITY inheritance-mapping SYSTEM "modules/inheritance_mapping.xml">
|
|
|
|
|
<!ENTITY session-api SYSTEM "modules/session_api.xml">
|
|
|
|
|
<!ENTITY transactions SYSTEM "modules/transactions.xml">
|
|
|
|
|
<!ENTITY events SYSTEM "modules/events.xml">
|
|
|
|
|
<!ENTITY batch SYSTEM "modules/batch.xml">
|
|
|
|
|
<!ENTITY query-hql SYSTEM "modules/query_hql.xml">
|
|
|
|
|
<!ENTITY query-criteria SYSTEM "modules/query_criteria.xml">
|
|
|
|
|
<!ENTITY query-sql SYSTEM "modules/query_sql.xml">
|
|
|
|
|
<!ENTITY filters SYSTEM "modules/filters.xml">
|
|
|
|
|
<!ENTITY xml SYSTEM "modules/xml.xml">
|
|
|
|
|
<!ENTITY performance SYSTEM "modules/performance.xml">
|
|
|
|
|
<!ENTITY toolset-guide SYSTEM "modules/toolset_guide.xml">
|
|
|
|
|
<!ENTITY example-parentchild SYSTEM "modules/example_parentchild.xml">
|
|
|
|
|
<!ENTITY example-weblog SYSTEM "modules/example_weblog.xml">
|
|
|
|
|
<!ENTITY example-mappings SYSTEM "modules/example_mappings.xml">
|
|
|
|
|
<!ENTITY best-practices SYSTEM "modules/best_practices.xml">
|
|
|
|
|
]>
|
|
|
|
|
|
|
|
|
|
<book lang="fr">
|
|
|
|
|
|
|
|
|
|
<bookinfo>
|
|
|
|
|
<title>HIBERNATE - Persistance relationnelle en Java standard</title>
|
|
|
|
|
<subtitle>Documentation de r<>f<EFBFBD>rence d'Hibernate</subtitle>
|
2006-10-02 18:27:05 +00:00
|
|
|
|
<releaseinfo>3.2final</releaseinfo>
|
2005-11-27 16:17:00 +00:00
|
|
|
|
</bookinfo>
|
|
|
|
|
|
|
|
|
|
<toc/>
|
|
|
|
|
|
|
|
|
|
<preface id="preface" revision="2">
|
|
|
|
|
<title>Pr<EFBFBD>face</title>
|
|
|
|
|
<para>
|
2005-12-09 15:27:41 +00:00
|
|
|
|
Traducteur(s): Vincent Ricard, Sebastien Cesbron, Michael Courcy, Vincent Gigu<67>re, Baptiste Mathus, Emmanuel Bernard, Anthony Patricio
|
2005-11-27 16:17:00 +00:00
|
|
|
|
</para>
|
|
|
|
|
<para>
|
|
|
|
|
Travailler dans les deux univers que sont l'orient<6E> objet et la base de donn<6E>es
|
|
|
|
|
relationnelle peut <20>tre lourd et consommateur en temps dans le monde de
|
|
|
|
|
l'entreprise d'aujourd'hui. Hibernate est un outil de mapping objet/relationnel
|
|
|
|
|
pour le monde Java. Le terme mapping objet/relationnel (ORM) d<>crit la technique
|
|
|
|
|
consistant <20> faire le lien entre la repr<70>sentation objet des donn<6E>es
|
|
|
|
|
et sa repr<70>sentation relationnelle bas<61>e sur un sch<63>ma SQL.
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
Non seulement, Hibernate s'occupe du transfert des classes Java dans les tables
|
|
|
|
|
de la base de donn<6E>es (et des types de donn<6E>es Java dans les types de donn<6E>es SQL),
|
|
|
|
|
mais il permet de requ<71>ter les donn<6E>es et propose des moyens de les r<>cup<75>rer.
|
|
|
|
|
Il peut donc r<>duire de mani<6E>re significative le temps de d<>veloppement qui
|
|
|
|
|
aurait <20>t<EFBFBD> autrement perdu dans une manipulation manuelle des donn<6E>es via SQL
|
|
|
|
|
et JDBC.
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
Le but d'Hibernate est de lib<69>rer le d<>veloppeur de 95 pourcent des t<>ches de
|
2006-02-18 18:10:39 +00:00
|
|
|
|
programmation li<6C>es <20> la persistance des donn<6E>es communes. Hibernate n'est
|
2005-11-27 16:17:00 +00:00
|
|
|
|
probablement pas la meilleure solution pour les applications centr<74>es sur les
|
|
|
|
|
donn<6E>es qui n'utilisent que les proc<6F>dures stock<63>es pour impl<70>menter la logique
|
|
|
|
|
m<>tier dans la base de donn<6E>es, il est le plus utile dans les mod<6F>les m<>tier orient<6E>s
|
|
|
|
|
objets dont la logique m<>tier est impl<70>ment<6E>e dans la couche Java dite interm<72>diaire.
|
|
|
|
|
Cependant, Hibernate vous aidera <20> supprimer ou <20> encapsuler le code SQL
|
|
|
|
|
sp<73>cifique <20> votre base de donn<6E>es et vous aidera sur la t<>che commune qu'est
|
|
|
|
|
la transformation des donn<6E>es d'une repr<70>sentation tabulaire <20> une
|
|
|
|
|
repr<70>sentation sous forme de graphe d'objets.
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
Si vous <20>tes nouveau dans Hibernate et le mapping Objet/Relationnel voire m<>me en Java,
|
|
|
|
|
suivez ces quelques <20>tapes :
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Lisez <xref linkend="tutorial"/> pour un didacticiel plus long avec plus d'instructions <20>tape par <20>tape.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Lisez <xref linkend="architecture"/> pour comprendre les environnements dans lesquels
|
|
|
|
|
Hibernate peut <20>tre utilis<69>.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Regardez le r<>pertoire <literal>eg</literal> de la distribution Hibernate, il contient
|
|
|
|
|
une application simple et autonome. Copiez votre pilote JDBC dans le r<>pertoire
|
|
|
|
|
<literal>lib/</literal> et <20>ditez <literal>src/hibernate.properties</literal>, en
|
|
|
|
|
positionnant correctement les valeurs pour votre base de donn<6E>es. A partir d'une
|
|
|
|
|
invite de commande dans le r<>pertoire de la distribution, tapez <literal>ant eg</literal>
|
|
|
|
|
(cela utilise Ant), ou sous Windows tapez <literal>build eg</literal>.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Fa<46>tes de cette documentation de r<>f<EFBFBD>rence votre principale source d'information.
|
|
|
|
|
Pensez <20> lire <emphasis>Hibernate in Action</emphasis>
|
|
|
|
|
(http://www.manning.com/bauer) si vous avez besoin de plus d'aide avec le design
|
|
|
|
|
d'applications ou si vous pr<70>f<EFBFBD>rez un tutoriel pas <20> pas. Visitez aussi
|
|
|
|
|
http://caveatemptor.hibernate.org et t<>l<EFBFBD>chargez l'application exemple
|
|
|
|
|
pour Hibernate in Action.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Les questions les plus fr<66>quemment pos<6F>es (FAQs) trouvent leur r<>ponse sur le
|
|
|
|
|
site web Hibernate.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
Des d<>mos, exemples et tutoriaux de tierces personnes sont r<>f<EFBFBD>renc<6E>s sur
|
|
|
|
|
le site web Hibernate.
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
<listitem>
|
|
|
|
|
<para>
|
|
|
|
|
La zone communautaire (Community Area) du site web Hibernate est une
|
|
|
|
|
bonne source d'information sur les design patterns et sur diff<66>rentes
|
|
|
|
|
solutions d'int<6E>gration d'Hibernate (Tomcat, JBoss, Spring Framework, Struts,
|
|
|
|
|
EJB, etc).
|
|
|
|
|
</para>
|
|
|
|
|
</listitem>
|
|
|
|
|
</orderedlist>
|
|
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
Si vous avez des questions, utilisez le forum utilisateurs du site web Hibernate.
|
|
|
|
|
Nous utilisons <20>galement l'outil de gestion des incidents JIRA pour tout ce qui
|
|
|
|
|
est rapports de bogue et demandes d'<27>volution. Si vous <20>tes int<6E>ress<73> par le
|
|
|
|
|
d<>veloppement d'Hibernate, joignez-vous <20> la liste de diffusion de d<>veloppement.
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
Le d<>veloppement commercial, le support de production et les formations <20> Hibernate
|
|
|
|
|
sont propos<6F>s par JBoss Inc (voir http://www.hibernate.org/SupportTraining/). Hibernate
|
|
|
|
|
est un projet Open Source professionnel et un composant critique de la suite de produits
|
|
|
|
|
JBoss Enterprise Middleware System (JEMS).
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
</preface>
|
|
|
|
|
|
|
|
|
|
&tutorial;
|
|
|
|
|
|
|
|
|
|
&architecture;
|
|
|
|
|
|
|
|
|
|
&configuration;
|
|
|
|
|
|
|
|
|
|
&persistent-classes;
|
|
|
|
|
|
|
|
|
|
&basic-mapping;
|
|
|
|
|
&collection-mapping;
|
|
|
|
|
&association-mapping;
|
|
|
|
|
&component-mapping;
|
|
|
|
|
&inheritance-mapping;
|
|
|
|
|
|
|
|
|
|
&session-api;
|
|
|
|
|
&transactions;
|
|
|
|
|
&events;
|
|
|
|
|
&batch;
|
|
|
|
|
|
|
|
|
|
&query-hql;
|
|
|
|
|
&query-criteria;
|
|
|
|
|
&query-sql;
|
|
|
|
|
&filters;
|
|
|
|
|
&xml;
|
|
|
|
|
|
|
|
|
|
&performance;
|
|
|
|
|
|
|
|
|
|
&toolset-guide;
|
|
|
|
|
|
|
|
|
|
&example-parentchild;
|
|
|
|
|
&example-weblog;
|
|
|
|
|
&example-mappings;
|
|
|
|
|
|
|
|
|
|
&best-practices;
|
|
|
|
|
|
|
|
|
|
</book>
|
|
|
|
|
|