Generated via fr-FR XML and English XML

git-svn-id: https://svn.jboss.org/repos/hibernate/core/trunk@14139 1b8cb986-b30d-0410-93ca-fae66ebed9b2
This commit is contained in:
xhuang 2007-10-26 07:24:12 +00:00
parent 0a97c39acc
commit 37c227e761
25 changed files with 7064 additions and 6627 deletions

View File

@ -14,19 +14,19 @@ msgstr ""
#: architecture.xml:21
#, no-c-format
msgid "Architecture"
msgstr "Arquitetura"
msgstr "Architecture"
#. Tag: title
#: architecture.xml:24
#, no-c-format
msgid "Overview"
msgstr "Visão Geral"
msgstr "Généralités"
#. Tag: para
#: architecture.xml:26
#, no-c-format
msgid "A (very) high-level view of the Hibernate architecture:"
msgstr "Uma visão bem ampla da arquitetura do Hibernate:"
msgstr "Voici une vue (très) haut niveau de l'architecture d'Hibernate :"
#. Tag: para
#: architecture.xml:39
@ -35,9 +35,9 @@ msgid ""
"This diagram shows Hibernate using the database and configuration data to "
"provide persistence services (and persistent objects) to the application."
msgstr ""
"Esse diagrama mostra o Hibernate usando o banco de dados e a configuração de "
"dados para prover persistência de serviços (e persistência de objetos) para "
"o aplicativo."
"Ce diagramme montre Hibernate utilisant une base de données et des données "
"de configuration pour fournir un service de persistance (et des objets "
"persistants) à l'application."
#. Tag: para
#: architecture.xml:44
@ -49,12 +49,11 @@ msgid ""
"provide its own JDBC connections and manage its own transactions. This "
"approach uses a minimal subset of Hibernate's APIs:"
msgstr ""
"Nós gostaríamos de mostrar uma visão mais detalhada da arquitetura em "
"execução. Infelizmente, o Hibernate é muito flexível e suporta várias "
"aproximações. Nós iremos mostrar os dois extremos. Na arquitetura mais "
"simples o aplicativo fornece suas próprias conexões JDBC e gerencia suas "
"transações. Esta abordagem usa o mínimo de subconjuntos das APIs do "
"Hibernate:"
"Nous aimerions décrire une vue plus détaillée de l'architecture. "
"Malheureusement, Hibernate est flexible et supporte différentes approches. "
"Nous allons en montrer les deux extrêmes. L'architecture légère laisse "
"l'application fournir ses propres connexions JDBC et gérer ses propres "
"transactions. Cette approche utilise le minimum des APIs Hibernate :"
#. Tag: para
#: architecture.xml:61
@ -63,14 +62,15 @@ msgid ""
"The \"full cream\" architecture abstracts the application away from the "
"underlying JDBC/JTA APIs and lets Hibernate take care of the details."
msgstr ""
"A arquitetura \"completa\" abstrai a aplicação de ter de lidar diretamente "
"com JDBC/JTA e APIs e deixa o Hibernate tomar conta dos detalhes."
"L'architecture la plus complète abstrait l'application des APIs JDBC/JTA "
"sous-jacentes et laisse Hibernate s'occuper des détails."
#. Tag: para
#: architecture.xml:75
#, fuzzy, no-c-format
msgid "Heres some definitions of the objects in the diagrams:"
msgstr "Algumas definições dos objetos do diagrama: <placeholder-1/>"
msgstr ""
"Voici quelques définitions des objets des diagrammes : <placeholder-1/>"
#. Tag: term
#: architecture.xml:80
@ -88,11 +88,12 @@ msgid ""
"cache of data that is reusable between transactions, at a process- or "
"cluster-level."
msgstr ""
"Um cache threadsafe (imutáveis) composto de identidades compiladas para um "
"único banco de dados. Uma fabrica para <literal>Session</literal> e um "
"cliente de <literal>ConnectionProvider</literal>. Pode conter um cachê "
"opcional de dados (segundo nível) reutilizáveis entre transações, no nível "
"de processo- ou cluster."
"Un cache threadsafe (immuable) des mappings vers une (et une seule) base de "
"données. Une factory (fabrique) de <literal>Session</literal> et un client "
"de <literal>ConnectionProvider</literal>. Peut contenir un cache optionnel "
"de données (de second niveau) qui est réutilisable entre les différentes "
"transactions que cela soit au sein du même processus (JVLM) ou par plusieurs "
"nœuds d'un cluster."
#. Tag: term
#: architecture.xml:92
@ -110,17 +111,18 @@ msgid ""
"persistent objects, used when navigating the object graph or looking up "
"objects by identifier."
msgstr ""
"Objeto single-threaded, de vida curta, representando uma conversação entre o "
"aplicativo e o armazenamento persistente. Cria uma camada sobre uma conexão "
"JDBC. É uma fabrica de <literal>Transaction</literal>. Possui um cachê "
"obrigatório (primeiro nível) de objetos persistentes, usado para navegação "
"no gráficos de objetos e pesquisa de objetos pelo identificador."
"Un objet mono-threadé, à durée de vie courte, qui représente une "
"conversation entre l'application et l'entrepôt de persistance. Encapsule une "
"connexion JDBC. Factory (fabrique) des objets <literal>Transaction</"
"literal>. Contient un cache (de premier niveau) des objets persistants, ce "
"cache est obligatoire. Il est utilisé lors de la navigation dans le graphe "
"d'objets ou lors de la récupération d'objets par leur identifiant."
#. Tag: term
#: architecture.xml:104
#, no-c-format
msgid "Persistent objects and collections"
msgstr "Objetos persistentes e coleções"
msgstr "Objets et Collections persistants"
#. Tag: para
#: architecture.xml:106
@ -133,18 +135,19 @@ msgid ""
"closed, they will be detached and free to use in any application layer (e.g. "
"directly as data transfer objects to and from presentation)."
msgstr ""
"Objetos, de vida curta, single threaded contendo estado persistente e função "
"de negócios. Esses podem ser JavaBeans/POJOs, onde única coisa especial "
"sobre eles é que são associados a (exatamente uma) <literal>Session</"
"literal>. Quando a <literal>Session</literal> é fechada, eles são separados "
"e liberados para serem usados dentro de qualquer camada da aplicacao (Ex. "
"diretamente como data transfer objects de e para a camada de apresentação)"
"Objets mono-threadés à vie courte contenant l'état de persistance et la "
"fonction métier. Ceux-ci sont en général les objets de type JavaBean (ou "
"POJOs) ; la seule particularité est qu'ils sont associés avec une (et une "
"seule) <literal>Session</literal>. Dès que la <literal>Session</literal> est "
"fermée, ils seront détachés et libres d'être utilisés par n'importe laquelle "
"des couches de l'application (ie. de et vers la présentation en tant que "
"Data Transfer Objects - DTO : objet de transfert de données)."
#. Tag: term
#: architecture.xml:117
#, no-c-format
msgid "Transient and detached objects and collections"
msgstr "Objetos e coleções desatachados e transientes"
msgstr "Objets et collections transients"
#. Tag: para
#: architecture.xml:119
@ -155,10 +158,10 @@ msgid ""
"application and not (yet) persisted or they may have been instantiated by a "
"closed <literal>Session</literal>."
msgstr ""
"Instâncias de classes persistentes que ainda não estão associadas a uma "
"<literal>Session</literal>. Eles podem ter sido instanciados pela aplicação "
"e não persistido (ainda) ou eles foram instanciados por uma "
"<literal>Session</literal> que foi encerrada."
"Instances de classes persistantes qui ne sont actuellement pas associées à "
"une <literal>Session</literal>. Elles ont pu être instanciées par "
"l'application et ne pas avoir (encore) été persistées ou elle ont pu être "
"instanciées par une <literal>Session</literal> fermée."
#. Tag: term
#: architecture.xml:128
@ -177,12 +180,13 @@ msgid ""
"demarcation, either using the underlying API or <literal>Transaction</"
"literal>, is never optional!"
msgstr ""
"(Opcional) Objeto de vida curta, single threaded, usado pela aplicação para "
"especificar unidades atômicas de trabalho. Abstrai o aplicativo de lidar "
"diretamente com transações JDBC, JTA ou CORBA. Uma <literal>Session</"
"literal> pode, em alguns casos, iniciar várias <literal>Transaction</"
"literal>s. Entretanto, a demarcação da transação, mesmo utilizando API ou "
"Transaction subjacentes, nunca é opcional!"
"(Optionnel) Un objet mono-threadé à vie courte utilisé par l'application "
"pour définir une unité de travail atomique. Abstrait l'application des "
"transactions sous-jacentes qu'elles soient JDBC, JTA ou CORBA. Une "
"<literal>Session</literal> peut fournir plusieurs <literal>Transaction</"
"literal>s dans certains cas. Toutefois, la délimitation des transactions, "
"via l'API d'Hibernate ou par la <literal>Transaction</literal> sous-jacente, "
"n'est jamais optionnelle!"
#. Tag: term
#: architecture.xml:141
@ -203,10 +207,10 @@ msgid ""
"<literal>DriverManager</literal>. Not exposed to application, but can be "
"extended/implemented by the developer."
msgstr ""
"(Opcional) Uma fábrica de (e combinações de) conexões JDBC. Abstrai a "
"aplicação de lidar diretamente com <literal>Datasource</literal> ou "
"<literal>DriverManager</literal>. Não exposto para a aplicação, mas pode ser "
"implementado ou estendido pelo programador."
"(Optionnel) Une fabrique de (pool de) connexions JDBC. Abstrait "
"l'application de la <literal>Datasource</literal> ou du "
"<literal>DriverManager</literal> sous-jacent. Non exposé à l'application, "
"mais peut être étendu/implémenté par le développeur."
#. Tag: term
#: architecture.xml:151
@ -223,15 +227,14 @@ msgid ""
"(Optional) A factory for <literal>Transaction</literal> instances. Not "
"exposed to the application, but can be extended/implemented by the developer."
msgstr ""
"(Opcional) Uma fábrica para instâncias de <literal>Transaction</literal>. "
"Não exposta a aplicação, mas pode ser extendida/implementada pelo "
"programador."
"(Optionnel) Une fabrique d'instances de <literal>Transaction</literal>. Non "
"exposé à l'application, mais peut être étendu/implémenté par le développeur."
#. Tag: emphasis
#: architecture.xml:160
#, no-c-format
msgid "Extension Interfaces"
msgstr "Extension Interfaces"
msgstr "Interfaces d'extension"
#. Tag: para
#: architecture.xml:162
@ -241,9 +244,10 @@ msgid ""
"customize the behavior of your persistence layer. See the API documentation "
"for details."
msgstr ""
"O Hibernate oferece várias opções de interfaces estendidas que você pode "
"implementar para customizar sua camada persistente. Veja a documentação da "
"API para maiores detalhes."
"Hibernate fournit de nombreuses interfaces d'extensions optionnelles que "
"vous pouvez implémenter pour personnaliser le comportement de votre couche "
"de persistance. Reportez vous à la documentation de l'API pour plus de "
"détails."
#. Tag: para
#: architecture.xml:171
@ -253,16 +257,16 @@ msgid ""
"<literal>Transaction</literal>/<literal>TransactionFactory</literal> and/or "
"<literal>ConnectionProvider</literal> APIs to talk to JTA or JDBC directly."
msgstr ""
"Dada uma arquitetura simples, o aplicativo passa pelas APIs "
"<literal>Transaction</literal>/<literal>TransactionFactory</literal> e/ou "
"<literal>ConnectionProvider</literal> para se comunicar diretamente com a "
"transação JTA ou JDBC."
"Dans une architecture légère, l'application n'aura pas à utiliser les APIs "
"<literal>Transaction</literal>/<literal>TransactionFactory</literal> et/ou "
"n'utilisera pas les APIs <literal>ConnectionProvider</literal> pour utiliser "
"JTA ou JDBC."
#. Tag: title
#: architecture.xml:179
#, no-c-format
msgid "Instance states"
msgstr "Estados de instância"
msgstr "Etats des instances"
#. Tag: para
#: architecture.xml:180
@ -273,16 +277,16 @@ msgid ""
"emphasis>. The Hibernate <literal>Session</literal> object is the "
"persistence context:"
msgstr ""
"Uma instância de classes persistentes pode estar em um dos três diferentes "
"estados, que são definidos respeitando um <emphasis>contexto persistente</"
"emphasis>. O objeto <literal>Session</literal> do Hibernate é o contexto "
"persistente:"
"Une instance d'une classe persistante peut être dans l'un des trois états "
"suivants, définis par rapport à un <emphasis>contexte de persistance</"
"emphasis>. L'objet <literal>Session</literal> d'hibernate correspond à ce "
"concept de contexte de persistance :"
#. Tag: term
#: architecture.xml:188
#, no-c-format
msgid "transient"
msgstr "transiente"
msgstr "passager (transient)"
#. Tag: para
#: architecture.xml:190
@ -291,14 +295,15 @@ msgid ""
"The instance is not, and has never been associated with any persistence "
"context. It has no persistent identity (primary key value)."
msgstr ""
"A instância não é, e nunca foi associada com nenhum contexto persistente. "
"Não possui uma identidade persistente (valor de chave primária)."
"L'instance n'est pas et n'a jamais été associée à un contexte de "
"persistance. Elle ne possède pas d'identité persistante (valeur de clé "
"primaire)"
#. Tag: term
#: architecture.xml:198
#, no-c-format
msgid "persistent"
msgstr "persistente"
msgstr "persistant"
#. Tag: para
#: architecture.xml:200
@ -310,17 +315,18 @@ msgid ""
"<emphasis>guarantees</emphasis> that persistent identity is equivalent to "
"Java identity (in-memory location of the object)."
msgstr ""
"A instância está atualmente associada a um contexto persistente. Possui uma "
"identidade persistente (valor de chave primária) e, talvez, correspondente a "
"um registro no banco de dados. Para um contexto persistente em particular, o "
"Hibernate <emphasis>guarantees</emphasis> que a identidade persistente é "
"equivalente a identidade Java (na localização em memória do objeto)."
"L'instance est associée au contexte de persistance. Elle possède une "
"identité persistante (valeur de clé primaire) et, peut-être, un "
"enregistrement correspondant dans la base. Pour un contexte de persistance "
"particulier, Hibernate <emphasis>garantit</emphasis> que l'identité "
"persistante est équivalente à l'identité Java (emplacement mémoire de "
"l'objet)"
#. Tag: term
#: architecture.xml:212
#, no-c-format
msgid "detached"
msgstr "desatachado"
msgstr "détaché"
#. Tag: para
#: architecture.xml:214
@ -332,17 +338,17 @@ msgid ""
"For detached instances, Hibernate makes no guarantees about the relationship "
"between persistent identity and Java identity."
msgstr ""
"A instância foi associada com um contexto persistente, porém este contexto "
"foi fechado, ou a instância foi serializada por outro processo. Possui uma "
"identidade persistente, e, talvez, correspondenta a um registro no banco de "
"dados. Para instâncias desatachadas, o Hibernate não garante o "
"relacionamento entre identidade persistente e identidade Java."
"L'instance a été associée au contexte de persistance mais ce contexte a été "
"fermé, ou l'instance a été sérialisée vers un autre processus. Elle possède "
"une identité persistante et peut-être un enregistrement correspondant dans "
"la base. Pour des instances détachées, Hibernate ne donne aucune garantie "
"sur la relation entre l'identité persistante et l'identité Java."
#. Tag: title
#: architecture.xml:229
#, no-c-format
msgid "JMX Integration"
msgstr "Integração JMX"
msgstr "Intégration JMX"
#. Tag: para
#: architecture.xml:231
@ -352,9 +358,10 @@ msgid ""
"managed via a JMX standard service. We provide an MBean implementation in "
"the distribution, <literal>org.hibernate.jmx.HibernateService</literal>."
msgstr ""
"JMX é padrão J2EE para manipulação de componentes Java. O Hibernate pode ser "
"manipulado por um serviço JMX padrão. Nós fornecemos uma implementação do "
"MBean na distribuição, <literal>org.hibernate.jmx.HibernateService</literal>."
"JMX est le standard J2EE de gestion des composants Java. Hibernate peut être "
"géré via un service JMX standard. Nous fournissons une implémentation d'un "
"MBean dans la distribution : <literal>org.hibernate.jmx.HibernateService</"
"literal>."
#. Tag: para
#: architecture.xml:237
@ -364,10 +371,10 @@ msgid ""
"Application Server, please see the JBoss User Guide. On JBoss AS, you also "
"get these benefits if you deploy using JMX:"
msgstr ""
"Para um exemplo de como instalar o Hibernate como um serviço JMX em um "
"servidor de aplicativo JBoss, por favor, consulte o manual do usuário do "
"JBoss. No JBoss As, você poderá ver os benefícios de de se fazer o deploy "
"usando JMX:"
"Pour avoir un exemple sur la manière de déployer Hibernate en tant que "
"service JMX dans le serveur d'application JBoss Application Server, référez "
"vous au guide utilisateur JBoss (JBoss User Guide). Si vous déployez "
"Hibernate via JMX sur JBoss AS, vous aurez également les bénéfices suivants :"
#. Tag: para
#: architecture.xml:245
@ -383,16 +390,16 @@ msgid ""
"call the <literal>HibernateContext</literal> to access a <literal>Session</"
"literal>."
msgstr ""
"<emphasis>Session Management:</emphasis> O ciclo de vida de uma "
"<literal>Session</literal> do Hibernate pode ser automaticamente conectada a "
"um escopo de transação JTA. Isso significa que você não precisará mais abrir "
"e fechar manualmente uma <literal>Session</literal>, isso se torna trabalho "
"para um interceptor EJB do JBoss . Você também não precisa se preocupar, "
"nunca mais, com demarcação de transação em seu código (a não ser que você "
"prefira escrever uma camada persistente portável, para isso, use a API "
"opcional do Hibernate <literal>Transaction</literal>). Você deve chamar "
"<literal>HibernateContext</literal> para acessar uma <literal>Session</"
"literal>."
"<emphasis>Gestion de la session :</emphasis> Le cycle de vie de la "
"<literal>Session</literal> Hibernate peut être automatiquement limitée à la "
"portée d'une transaction JTA. Cela signifie que vous n'avez plus besoin "
"d'ouvrir et de fermer la <literal>Session</literal> manuellement, cela "
"devient le travail de l'intercepteur EJB de JBoss. Vous n'avez pas non plus "
"à vous occuper des démarcations des transactions dans votre code (sauf si "
"vous voulez écrire une couche de persistance qui soit portable, dans ce cas "
"vous pouvez utiliser l'API optionnelle <literal>Transaction</literal> "
"d'Hibernate). Vous appelez l'<literal>HibernateContext</literal> pour "
"accéder à la <literal>Session</literal>."
#. Tag: para
#: architecture.xml:257
@ -406,14 +413,14 @@ msgid ""
"optional HAR deployment, JBoss will automatically detect all mapping files "
"in your HAR file."
msgstr ""
"<emphasis>HAR deployment:</emphasis>: Normalmente você faz o deploy de um "
"serviço JMX do Hibernate usando um serviço descritor de deploy do JBoss (em "
"um EAR e/ou arquivo SAR), que suporta todas as configurações usuais de uma "
"<literal>SessionFactory</literal> do Hibernate. Entretanto, você ainda "
"precisa nomear todos os seus arquivos de mapeamento no descritor de "
"deploração. Se você decidir usar o deploy opcional HAR, o JBoss irá "
"automaticamente detectar todos os seus arquivos de mapeamento no seu arquivo "
"HAR."
"<emphasis>Déploiement HAR :</emphasis> Habituellement vous déployez le "
"service JMX Hibernate en utilisant le descripteur de déploiement de JBoss "
"(dans un fichier EAR et/ou un SAR), il supporte toutes les options de "
"configuration usuelles d'une <literal>SessionFactory</literal> Hibernate. "
"Cependant, vous devez toujours nommer tous vos fichiers de mapping dans le "
"descripteur de déploiement. Si vous décidez d'utiliser le déploiement "
"optionnel sous forme de HAR, JBoss détectera automatiquement tous vos "
"fichiers de mapping dans votre fichier HAR."
#. Tag: para
#: architecture.xml:268
@ -421,8 +428,8 @@ msgstr ""
msgid ""
"Consult the JBoss AS user guide for more information about these options."
msgstr ""
"Consulte o manual do usuário do JBoss AS, para obter maiores informações "
"sobre essas opções."
"Consultez le guide d'utilisation de JBoss AS pour plus d'informations sur "
"ces options."
#. Tag: para
#: architecture.xml:272
@ -431,16 +438,15 @@ msgid ""
"Another feature available as a JMX service are runtime Hibernate statistics. "
"See <xref linkend=\"configuration-optional-statistics\"/>."
msgstr ""
"Another feature available as a JMX service are runtime Hibernate statistics. "
"See <xref linkend=\"configuration-optional-statistics\"/>. Outra opção "
"disponível como um serviço JMX são as estatísticas de execução do Hibernate. "
"Veja a <xref linkend=\"configuration-optional-statistics\"/>."
"Les statistiques pendant l'exécution d'Hibernate (au runtime) sont une autre "
"fonctionnalité disponible en tant que service JMX. Voyez pour cela <xref "
"linkend=\"configuration-optional-statistics\"/>."
#. Tag: title
#: architecture.xml:279
#, no-c-format
msgid "JCA Support"
msgstr "Suporte JCA"
msgstr "Support JCA"
#. Tag: para
#: architecture.xml:280
@ -450,17 +456,15 @@ msgid ""
"for more details. Please note that Hibernate JCA support is still considered "
"experimental."
msgstr ""
"Hibernate may also be configured as a JCA connector. Please see the website "
"for more details. Please note that Hibernate JCA support is still considered "
"experimental. O Hibernate pode também ser configurado como um conector JCA. "
"Por favor, visite o website para maiores detalhes. Entretanto, note que o "
"suporte JCA do Hibernate ainda é considerado experimental."
"Hibernate peut aussi être configuré en tant que connecteur JCA. Référez-vous "
"au site web pour de plus amples détails. Il est important de noter que le "
"support JCA d'Hibernate est encore considéré comme expérimental."
#. Tag: title
#: architecture.xml:287
#, no-c-format
msgid "Contextual Sessions"
msgstr "Sessões contextuais"
msgstr "Sessions Contextuelles"
#. Tag: para
#: architecture.xml:288
@ -476,14 +480,17 @@ msgid ""
"utilized third-party frameworks (such as Spring or Pico) which provided "
"proxy/interception-based contextual sessions."
msgstr ""
"Muitas aplicações que usam o Hibernate necessita de algum tipo de sessão "
"\"contextual\", onde uma sessão dada é na verdade um escopo de um contexto. "
"Entretanto, através de aplicações a definição sobre um contexto é geralmente "
"diferente; e contextos diferentes definem escopos diferentes. Aplicações "
"usando versões anteriores ao Hibernate 3.0 tendem a utilizar tanto sessões "
"contextuais baseadas em <literal>ThreadLocal</literal>, classes utilitárias "
"como <literal>HibernateUtil</literal>, ou utilizar frameworks de terceiros"
"(como Spring ou Pico) que provê sessões contextuais baseadas em proxy."
"Certaines applications utilisant Hibernate ont besoin d'une sorte de session "
"\"contextuelle\", où une session est liée à la portée d'un contexte "
"particulier. Cependant, les applications ne définissent pas toutes la notion "
"de contexte de la même manière, et différents contextes définissent "
"différentes portées à la notion de \"courant\". Les applications à base "
"d'Hibernate, versions précédentes à la 3.0 utilisaient généralement un "
"principe maison de sessions contextuelles basées sur le "
"<literal>ThreadLocal</literal>, ainsi que sur des classes utilitaires comme "
"<literal>HibernateUtil</literal>, ou utilisaient des framework tiers (comme "
"Spring ou Pico) qui fournissaient des sessions contextuelles basées sur "
"l'utilisation de proxy/interception."
#. Tag: para
#: architecture.xml:297
@ -500,16 +507,17 @@ msgid ""
"<literal>J2EE</literal> container. Based on that, the <literal>JTA</literal>-"
"based contextual sessions is all you should ever need to use."
msgstr ""
"A partir da versão 3.0.1, o Hibernate adicionou o método "
"<literal>SessionFactory.getCurrentSession()</literal>. Inicialmente, este "
"assume o uso de transações <literal>JTA</literal>, onde a transação "
"<literal>JTA</literal> define tanto o escopo quanto o contexto de uma sessão "
"atual. O time do Hibernate mantém este recurso, desenvolvendo as diversas "
"implementações do <literal>JTA TransactionManager</literal>, a maioria (se "
"não todos) aplicativos deveria utilizar o gerenciador de transações "
"<literal>JTA</literal> sendo ou não instalados dentro de um container "
"<literal>J2EE</literal>. Baseado neste recurso, você deveria sempre utilizar "
"sessões contextuais baseadas em <literal>JTA</literal>."
"A partir de la version 3.0.1, Hibernate a ajouté la méthode "
"<literal>SessionFactory.getCurrentSession()</literal>. Initialement, cela "
"demandait l'usage de transactions <literal>JTA</literal>, où la transaction "
"<literal>JTA</literal> définissait la portée et le contexte de la session "
"courante. L'équipe Hibernate pense que, étant donnée la maturité des "
"implémentations de <literal>JTA TransactionManager</literal> , la plupart "
"(sinon toutes) des applications devraient utiliser la gestion des "
"transactions par <literal>JTA</literal> qu'elles soient ou non déployées "
"dans un conteneur <literal>J2EE</literal>. Par conséquent, vous devriez "
"toujours contextualiser vos sessions, si vous en avez besoin, via la méthode "
"basée sur JTA."
#. Tag: para
#: architecture.xml:307
@ -522,13 +530,13 @@ msgid ""
"current_session_context_class</literal>) have been added to allow "
"pluggability of the scope and context of defining current sessions."
msgstr ""
"Entretanto, na versão 3.1, o processo por trás do método "
"<literal>SessionFactory.getCurrentSession()</literal> é agora plugavel. Com "
"isso, uma nova interface (<literal>org.hibernate.context."
"CurrentSessionContext</literal>) e um novo parâmetro de configuração "
"(<literal>hibernate.current_session_context_class</literal>) foram "
"adicionados para possibilitar a compatibilidade do contexto e do escopo na "
"definição de sessões correntes."
"Cependant, depuis la version 3.1, la logique derrière "
"<literal>SessionFactory.getCurrentSession()</literal> est désormais "
"branchable. A cette fin, une nouvelle interface d'extension (<literal>org."
"hibernate.context.CurrentSessionContext</literal>) et un nouveau paramètre "
"de configuration (<literal>hibernate.current_session_context_class</"
"literal>) ont été ajoutés pour permettre de configurer d'autres moyens de "
"définir la portée et le contexte des sessions courantes."
#. Tag: para
#: architecture.xml:314
@ -541,11 +549,11 @@ msgid ""
"contextual session. Out-of-the-box, Hibernate comes with three "
"implementations of this interface."
msgstr ""
"De uma olhada em Javadocs sobre a interface <literal>org.hibernate.context."
"CurrentSessionContext</literal> para uma discussão detalhada. Ela define um "
"método único, <literal>currentSession()</literal>, com o qual a "
"implementação é responsável por rastrear a sessão contextual corrente. Por "
"fora do \"encapsulamento\", o Hibernate possui duas implementações dessa "
"Allez voir les Javadocs de l'interface <literal>org.hibernate.context."
"CurrentSessionContext</literal> pour une description détaillée de son "
"contrat. Elle définit une seule méthode, <literal>currentSession()</"
"literal>, depuis laquelle l'implémentation est responsable de traquer la "
"session courante du contexte. Hibernate fournit deux implémentation de cette "
"interface."
#. Tag: para
@ -557,10 +565,10 @@ msgid ""
"processing here is exactly the same as in the older JTA-only approach. See "
"the Javadocs for details."
msgstr ""
"<literal>org.hibernate.context.JTASessionContext</literal> - As sessões "
"correntes são rastreadas e recebem um escopo por uma transação <literal>JTA</"
"literal>. O processamento aqui é exatamente igual ao antigo processo JTA. "
"Consulte em Javadocs para maiores detalhes."
"<literal>org.hibernate.context.JTASessionContext</literal> - les sessions "
"courantes sont associées à une transaction <literal>JTA</literal>. La "
"logique est la même que l'ancienne approche basée sur JTA. Voir les javadocs "
"pour les détails."
#. Tag: para
#: architecture.xml:332
@ -570,9 +578,9 @@ msgid ""
"sessions are tracked by thread of execution. Again, see the Javadocs for "
"details."
msgstr ""
"<literal>org.hibernate.context.ThreadLocalSessionContext</literal> - As "
"sessões correntes são rastreadas por uma thread de execução. Novamente, "
"consulte em Javadocs para maiores detalhes."
"<literal>org.hibernate.context.ThreadLocalSessionContext</literal> - les "
"sessions courantes sont associées au thread d'exécution. Voir les javadocs "
"pour les détails."
#. Tag: para
#: architecture.xml:338
@ -604,18 +612,18 @@ msgid ""
"transaction or session demarcation operations in your code. Refer to <xref "
"linkend=\"transactions\"/> for more information and code examples."
msgstr ""
"As duas primeiras implementações usam o modelo de programação \"uma sessão "
"uma transação do banco de dados\", também conhecida e usado como "
"<emphasis>sessão por requisição</emphasis>. O começo e o fim de uma sessão "
"Hibernate é definida pela duração da transação do banco de dados. Se você "
"usa demarcação programática de transação (por exemplo. em J2SE puro ou com "
"JTA /UserTransaction/BMT), você é recomendado a usar a API Hibernate "
"<literal>Transaction</literal> para esconder a base do sistema de transação "
"do seu código. Se você executa em um container EJB que suporta CMT, os "
"limites das transações são definidas declarativamente e você não necessita "
"de qualquer transação ou operação de demarcação de sessão no seu código. "
"Consulte o <xref linkend=\"transactions\"/> para mais informações exemplos "
"de código."
"Les deux implémentations fournissent un modèle de programmation de type "
"\"une session - une transaction à la base de données\", aussi connu sous le "
"nom de <emphasis>session-per-request</emphasis>. Le début et la fin d'une "
"session Hibernate sont définis par la durée d'une transaction de base de "
"données. Si vous utilisez une démarcation programmatique de la transaction "
"(par exemple sous J2SE ou JTA/UserTransaction/BMT), nous vous conseillons "
"d'utiliser l'API Hibernate <literal>Transaction</literal> pour masquer le "
"système de transaction utilisé. Si vous exécutez sous un conteneur EJB qui "
"supporte CMT, vous n'avez besoin d'aucune opérations de démarcations de "
"session ou transaction dans votre code puisque tout est géré de manière "
"déclarative. Référez vous à <xref linkend=\"transactions\"/> pour plus "
"d'informations et des exemples de code."
#. Tag: para
#: architecture.xml:359
@ -632,13 +640,13 @@ msgid ""
"however, there are three corresponding short names, \"jta\", \"thread\", and "
"\"managed\"."
msgstr ""
"O parâmetro de configuração <literal>hibernate."
"current_session_context_class</literal> define que a implementação "
"<literal>org.hibernate.context.CurrentSessionContext</literal> deve ser "
"usada. Note que para compatibilidade anterior, se este parâmetro de "
"configuração não é determinado mas um <literal>org.hibernate.transaction."
"TransactionManagerLookup</literal> é configurado, Hibernate usará o "
"<literal>org.hibernate.context.JTASessionContext</literal>. Tipicamente, o "
"valor deste parâmetro nomearia apenas a classe de implementação para usar; "
"para as duas implementações out-of-the-box, entretanto, há três pequenos "
"nomes correspondentes, \"jta\", \"thread\", and \"managed\"."
"Le paramètre de configuration <literal>hibernate."
"current_session_context_class</literal> définit quelle implémentation de "
"<literal>org.hibernate.context.CurrentSessionContext</literal> doit être "
"utilisée. Notez que pour assurer la compatibilité avec les versions "
"précédentes, si ce paramètre n'est pas défini mais qu'un <literal>org."
"hibernate.transaction.TransactionManagerLookup</literal> est configuré, "
"Hibernate utilisera le <literal>org.hibernate.context.JTASessionContext</"
"literal>. La valeur de ce paramètre devrait juste nommer la classe "
"d'implémentation à utiliser, pour les deux implémentations fournies, il y a "
"cependant deux alias correspondant: \"jta\" et \"thread\"."

View File

@ -14,13 +14,13 @@ msgstr ""
#: association_mapping.xml:6
#, no-c-format
msgid "Association Mappings"
msgstr "Mapeamento de Associações"
msgstr "Mapper les associations"
#. Tag: title
#: association_mapping.xml:9
#, no-c-format
msgid "Introduction"
msgstr "Introdução"
msgstr "Introduction"
#. Tag: para
#: association_mapping.xml:11
@ -32,11 +32,12 @@ msgid ""
"use <literal>Person</literal> and <literal>Address</literal> in all the "
"examples."
msgstr ""
"Mapeamentos de associações são freqüentemente a coisa mais difícil de se "
"acertar. Nesta seção nós passaremos pêlos casos canônicos um pôr um, "
"começando com mapeamentos unidirecionais e considerando os casos "
"bidirecionais. Nos vamos usar <literal>Person</literal> e <literal>Address</"
"literal> em todos os exemplos."
"Correctement mapper les associations est souvent la tâche la plus difficile. "
"Dans cette section nous traiterons les cas classiques les uns après les "
"autres. Nous commencerons d'abbord par les mappings unidirectionnels, puis "
"nous aborderons la question des mappings bidirectionnels. Nous illustrerons "
"tous nos exemples avec les classes <literal>Person</literal> et "
"<literal>Address</literal>."
#. Tag: para
#: association_mapping.xml:19
@ -45,8 +46,10 @@ msgid ""
"We'll classify associations by whether or not they map to an intervening "
"join table, and by multiplicity."
msgstr ""
"Nós classificaremos as associações pelo seu mapeamento ou a falta do mesmo, "
"sua intervenção na tabela associativa, e pela sua multiplicidade."
"Nous utiliserons deux critères pour classer les associations : le premier "
"sera de savoir si l'association est bâti sur une table supplémentaire "
"d'association et le deuxieme sera basé sur la multiplicité de cette "
"association."
#. Tag: para
#: association_mapping.xml:24
@ -57,23 +60,25 @@ msgid ""
"requirement of Hibernate, and the mappings will all work if you drop the "
"nullability constraints."
msgstr ""
"O uso de chaves estrangeiras não obrigatórias não é considerada uma boa "
"prática na modelagem de dados tradicional, assim todos nossos exemplos usam "
"chaves estrangeiras obrigatórias. Esta não é uma exigência do Hibernate, e "
"todas as mapeamentos funcionarão se você remover as constraints de "
"obrigatoriedade."
"Autoriser une clé étrangère nulle est considéré comme un mauvais choix dans "
"la construction d'un modèle de données. Nous supposerons donc que dans tous "
"les exemples qui vont suivre on aura interdit la valeur nulle pour les clés "
"étrangères. Attention, ceci ne veut pas dire que Hibernate ne supporte pas "
"les clés étrangères pouvant prendre des valeurs nulles, les exemples qui "
"suivent continueront de fonctionner si vous décidiez ne plus imposer la "
"contrainte de non-nullité sur les clés étrangères."
#. Tag: title
#: association_mapping.xml:34
#, no-c-format
msgid "Unidirectional associations"
msgstr "Associações Unidirecionais"
msgstr "Association unidirectionnelle"
#. Tag: title
#: association_mapping.xml:37 association_mapping.xml:108
#, no-c-format
msgid "many to one"
msgstr "muitos para um"
msgstr "plusieurs à un"
#. Tag: para
#: association_mapping.xml:39
@ -82,8 +87,9 @@ msgid ""
"A <emphasis>unidirectional many-to-one association</emphasis> is the most "
"common kind of unidirectional association."
msgstr ""
"Uma <emphasis>associação unidirecional muitos-para-um</emphasis> é o tipo "
"mais comum de associação unidirecional."
"Une <emphasis>association plusieurs-à-un (many-to-one) unidirectionnelle </"
"emphasis> est le type que l'on rencontre le plus souvent dans les "
"associations unidirectionnelles."
#. Tag: programlisting
#: association_mapping.xml:44
@ -123,13 +129,13 @@ msgstr ""
msgid "one to one"
msgstr ""
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"um para um\n"
"un à un\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"um para um\n"
"un à un\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"um para um\n"
"Un à un\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"one to one"
"Un à un"
#. Tag: para
#: association_mapping.xml:52
@ -139,9 +145,9 @@ msgid ""
"emphasis> is almost identical. The only difference is the column unique "
"constraint."
msgstr ""
"Uma <emphasis>associação unidirecional um-para-um em uma chave estrangeira </"
"emphasis> é quase idêntica. A única diferença é a constraint unique na "
"coluna."
"une <emphasis>association un-à-un (one-to-one) sur une clé étrangère</"
"emphasis> est presque identique. La seule différence est sur la contrainte "
"d'unicité que l'on impose à cette colonne."
#. Tag: programlisting
#: association_mapping.xml:57
@ -183,9 +189,10 @@ msgid ""
"emphasis> usually uses a special id generator. (Notice that we've reversed "
"the direction of the association in this example.)"
msgstr ""
"Uma <emphasis>associação unidirecional um-para-um na chave primaria</"
"emphasis> geralmente usa um gerador de id special. ( Note que nós invertemos "
"a direção da associação nesse exemplo)."
"Une <emphasis>association un-à-un (one-to-one) unidirectionnelle sur une clé "
"primaire</emphasis> utilise un générateur d'identifiant particulier. "
"(Remarquez que nous avons inversé le sens de cette association dans cet "
"exemple.)"
#. Tag: programlisting
#: association_mapping.xml:66
@ -221,7 +228,7 @@ msgstr ""
#: association_mapping.xml:72 association_mapping.xml:94
#, no-c-format
msgid "one to many"
msgstr "um para muitos"
msgstr "un à plusieurs"
#. Tag: para
#: association_mapping.xml:74
@ -230,9 +237,9 @@ msgid ""
"A <emphasis>unidirectional one-to-many association on a foreign key</"
"emphasis> is a very unusual case, and is not really recommended."
msgstr ""
"Uma <emphasis>associação unidirecional um-para-muitos em uma chave "
"estrangeira</emphasis> é um caso muito incomum, e realmente não é "
"recomendada."
"Une <emphasis>association un-à-plusieurs (one-to-many) unidirectionnelle sur "
"une clé étrangère</emphasis> est vraiment inhabituelle, et n'est pas "
"vraiment recommandée."
#. Tag: programlisting
#: association_mapping.xml:79
@ -272,14 +279,14 @@ msgstr ""
#, no-c-format
msgid "We think it's better to use a join table for this kind of association."
msgstr ""
"Nós achamos que é melhor usar uma tabela associativa para este tipo de "
"associação."
"Nous pensons qu'il est préférable d'utiliser une table de jointure pour ce "
"type d'association."
#. Tag: title
#: association_mapping.xml:91
#, no-c-format
msgid "Unidirectional associations with join tables"
msgstr "Associações Unidirecionais com tabelas associativas"
msgstr "Associations unidirectionnelles avec tables de jointure"
#. Tag: para
#: association_mapping.xml:96
@ -290,10 +297,11 @@ msgid ""
"\"</literal>, we have changed the multiplicity from many-to-many to one-to-"
"many."
msgstr ""
"Uma <emphasis>associação um-para-muitos unidirecional usando uma tabela "
"associativa</emphasis> e o mais comum. Note que se especificarmos "
"<literal>unique=\"true\"</literal>, estaremos modificando a cardinalidade de "
"muitos-para-muitos para um-para-muitos."
"Une <emphasis>association unidirectionnelle un-à-plusieurs (one-to-many) "
"avec une table de jointure</emphasis> est un bien meilleur choix. Remarquez "
"qu'en spécifiant <literal>unique=\"true\"</literal>, on a changé la "
"multiplicité plusieurs-à-plusieurs (many-to-many) pour un-à-plusieurs (one-"
"to-many)."
#. Tag: programlisting
#: association_mapping.xml:102
@ -337,8 +345,9 @@ msgid ""
"A <emphasis>unidirectional many-to-one association on a join table</"
"emphasis> is quite common when the association is optional."
msgstr ""
"Uma <emphasis>associação unidirecional muitos-para-um em uma tabela "
"associativa</emphasis> é bastante comum quando a associação for opcional."
"Une <emphasis>assiociation plusieurs-à-un (many-to-one) unidirectionnelle "
"sur une table de jointure</emphasis> est très fréquente quand l'association "
"est optionnelle."
#. Tag: programlisting
#: association_mapping.xml:115
@ -383,8 +392,8 @@ msgid ""
"A <emphasis>unidirectional one-to-one association on a join table</emphasis> "
"is extremely unusual, but possible."
msgstr ""
"Uma <emphasis>associação unidirecional um-para-um em uma tabela associativa</"
"emphasis> é extremamente incomum, mas possível."
"Une <emphasis>association unidirectionnelle un-à-un (one-to-one) sur une "
"table de jointure</emphasis> est extrèmement rare mais envisageable."
#. Tag: programlisting
#: association_mapping.xml:128
@ -428,7 +437,7 @@ msgstr ""
#: association_mapping.xml:134 association_mapping.xml:238
#, no-c-format
msgid "many to many"
msgstr "muitos para muitos"
msgstr "plusieurs à plusieurs"
#. Tag: para
#: association_mapping.xml:136
@ -437,8 +446,8 @@ msgid ""
"Finally, we have a <emphasis>unidirectional many-to-many association</"
"emphasis>."
msgstr ""
"Finalmente, nós temos a <emphasis>associação unidirecional muitos-para- "
"muitos</emphasis>."
"Finallement, nous avons <emphasis>l'association unidirectionnelle plusieurs-"
"à-plusieurs (many-to-many)</emphasis>."
#. Tag: programlisting
#: association_mapping.xml:140
@ -478,13 +487,13 @@ msgstr ""
#: association_mapping.xml:148
#, no-c-format
msgid "Bidirectional associations"
msgstr "Associações Bidirecionais"
msgstr "Associations bidirectionnelles"
#. Tag: title
#: association_mapping.xml:151 association_mapping.xml:211
#, no-c-format
msgid "one to many / many to one"
msgstr "um para muitos / muitos para um"
msgstr "un à plusieurs / plusieurs à un"
#. Tag: para
#: association_mapping.xml:153
@ -493,8 +502,9 @@ msgid ""
"A <emphasis>bidirectional many-to-one association</emphasis> is the most "
"common kind of association. (This is the standard parent/child relationship.)"
msgstr ""
"Uma <emphasis>associação bidirecional muitos-para-um</emphasis> é o tipo "
"mais comum de associação. (Esse é o relacionamento padrão pai / filho. )"
"Une <emphasis>association bidirectionnelle plusieurs à un (many-to-one)</"
"emphasis> est le type d'association que l'on rencontre le plus souvent. "
"(c'est la façon standard de créer des relations parents/enfants.)"
#. Tag: programlisting
#: association_mapping.xml:159
@ -531,12 +541,12 @@ msgid ""
"side virtually inverse by setting <literal>update=\"false\"</literal> and "
"<literal>insert=\"false\"</literal>):"
msgstr ""
"Se você usar uma <literal>List</literal> ( ou outra coleção indexada ), você "
"precisa especificar a coluna <literal>chave</literal> estrangeira como not "
"null, e deixar o Hibernate administrar a associação do lado da coleção para "
"que seja mantido o índice de cada elemento da coleção (fazendo com que o "
"outro lado seja virtualmente inverso setando <literal>update=\"false\"</"
"literal> e <literal>insert=\"false\"</literal>):"
"Si vous utilisez une <literal>List</literal> (ou toute autre collection "
"indexée) vous devez paramétrer la colonne <literal>key</literal> de la clé "
"étrangère à <literal>not null</literal>, et laisser Hibernate gérer "
"l'association depuis l'extrémité collection pour maintenir l'index de chaque "
"élément (rendant l'autre extrémité virtuellement inverse en paramétrant "
"<literal>update=\"false\"</literal> et <literal>insert=\"false\"</literal>):"
#. Tag: programlisting
#: association_mapping.xml:171
@ -574,12 +584,12 @@ msgid ""
"<literal>&lt;column&gt;</literal> element, but on the <literal>&lt;key&gt;</"
"literal> element."
msgstr ""
"É importante que você defina <literal>not-null=\"true\"</literal> no "
"elemento <literal>&lt;key&gt;</literal> no mapeamento na coleção se a coluna "
"de chave estrangeira for <literal>NOT NULL</literal>. Não declare como "
"<literal>not-null=\"true\"</literal> apenas um elemento aninhado "
"<literal>&lt;column&gt;</literal>, mas sim o elemento <literal>&lt;key&gt;</"
"literal>."
"It is important that you define <literal>not-null=\"true\"</literal> on the "
"<literal>&lt;key&gt;</literal> element of the collection mapping if the "
"underlying foreign key column is <literal>NOT NULL</literal>. Don't only "
"declare <literal>not-null=\"true\"</literal> on a possible nested "
"<literal>&lt;column&gt;</literal> element, but on the <literal>&lt;key&gt;</"
"literal> element."
#. Tag: para
#: association_mapping.xml:187
@ -588,8 +598,8 @@ msgid ""
"A <emphasis>bidirectional one-to-one association on a foreign key</emphasis> "
"is quite common."
msgstr ""
"Uma <emphasis>associação bidirecional um para um em uma chave estrangeira</"
"emphasis> é bastante comum."
"Une <emphasis>association bidirectionnelle un à un (one-to-one) sur une clé "
"étrangère</emphasis> est aussi très fréquente."
#. Tag: programlisting
#: association_mapping.xml:192
@ -621,8 +631,8 @@ msgid ""
"A <emphasis>bidirectional one-to-one association on a primary key</emphasis> "
"uses the special id generator."
msgstr ""
"Uma <emphasis>associação bidirecional um para um em uma chave primária</"
"emphasis> usa um gerador de id especial."
"Une <emphasis>association bidirectionnelle un-à-un (one-to-one) sur une clé "
"primaire</emphasis> utilise un générateur particulier d'id."
#. Tag: programlisting
#: association_mapping.xml:200
@ -650,7 +660,7 @@ msgstr ""
#: association_mapping.xml:208
#, no-c-format
msgid "Bidirectional associations with join tables"
msgstr "Associações Bidirecionais com tabelas associativas"
msgstr "Associations bidirectionnelles avec table de jointure"
#. Tag: para
#: association_mapping.xml:213
@ -660,9 +670,10 @@ msgid ""
"emphasis>. Note that the <literal>inverse=\"true\"</literal> can go on "
"either end of the association, on the collection, or on the join."
msgstr ""
"Uma <emphasis>associação bidirecional um para muitos em uma tabela "
"associativa</emphasis>. Veja que <literal>inverse=\"true\"</literal> pode "
"ser colocado em qualquer ponta associação, na coleção, ou no join."
"Une <emphasis>association bidirectionnelle un-à-plusieurs (one-to-many) sur "
"une table de jointure </emphasis>. Remarquez que <literal>inverse=\"true\"</"
"literal> peut s'appliquer sur les deux extrémités de l' association, sur la "
"collection, ou sur la jointure."
#. Tag: programlisting
#: association_mapping.xml:219
@ -715,8 +726,8 @@ msgid ""
"A <emphasis>bidirectional one-to-one association on a join table</emphasis> "
"is extremely unusual, but possible."
msgstr ""
"Uma <emphasis>associação bidirecional um-para-um em uma tabela de "
"associação</emphasis> é algo bastante incomum, mas possivel."
"Une <emphasis>association bidirectionnelle un-à-un (one-to-one) sur une "
"table de jointure</emphasis> est extrèmement rare mais envisageable."
#. Tag: programlisting
#: association_mapping.xml:232
@ -761,9 +772,8 @@ msgid ""
"Finally, we have a <emphasis>bidirectional many-to-many association</"
"emphasis>."
msgstr ""
"Finally, we have a <emphasis>bidirectional many-to-many association</"
"emphasis>. Finalmente, nós temos uma associação bidirecional de muitos para "
"muitos."
"Finallement nous avons <emphasis>l'association bidirectionnelle plusieurs à "
"plusieurs</emphasis>."
#. Tag: programlisting
#: association_mapping.xml:244
@ -796,7 +806,7 @@ msgstr ""
#: association_mapping.xml:253
#, no-c-format
msgid "More complex association mappings"
msgstr "Mapeamento de associações mais complexas"
msgstr "Des mappings plus complexes"
#. Tag: para
#: association_mapping.xml:255
@ -809,17 +819,12 @@ msgid ""
"literal>, <literal>effectiveEndDate</literal> and "
"<literal>effectiveStartDate</literal>columns, mapped as follows:"
msgstr ""
"More complex association joins are <emphasis>extremely</emphasis> rare. "
"Hibernate makes it possible to handle more complex situations using SQL "
"fragments embedded in the mapping document. For example, if a table with "
"historical account information data defines <literal>accountNumber</"
"literal>, <literal>effectiveEndDate</literal> and "
"<literal>effectiveStartDate</literal>columns, mapped as follows: Joins de "
"associações mais complexas são extremamente raros. O Hibernate torna "
"possível tratar mapeamentos mais complexos usando fragmentos de SQL "
"embutidos no documento de mapeamento. Por exemplo, se uma tabela com "
"informações de dados históricos de uma conta define a coluna accountNumber, "
"effectiveEndDate e effectiveStartDate, mapeadas assim como segue:"
"Des associations encore plus complexes sont <emphasis>extrêmement</emphasis> "
"rares. Hibernate permet de gérer des situations plus complexes en utilisant "
"des parties SQL dans les fichiers de mapping. Par exemple, si une table avec "
"l'historiques des informations d'un compte définit les colonnes "
"<literal>accountNumber</literal>, <literal>effectiveEndDate</literal> et "
"<literal>effectiveStartDate</literal>, mappées de telle sorte:"
#. Tag: programlisting
#: association_mapping.xml:264
@ -843,10 +848,9 @@ msgid ""
"Then we can map an association to the <emphasis>current</emphasis> instance "
"(the one with null <literal>effectiveEndDate</literal>) using:"
msgstr ""
"Then we can map an association to the <emphasis>current</emphasis> instance "
"(the one with null <literal>effectiveEndDate</literal>) using: Então nós "
"podemos mapear uma associação para a instância corrente (aquela com a "
"effectiveEndDate igual a null) usando:"
"alors nous pouvons mapper une association à l'instance <emphasis>courante</"
"emphasis> (celle avec une <literal>effectiveEndDate</literal>) nulle en "
"utilisant:"
#. Tag: programlisting
#: association_mapping.xml:271
@ -871,16 +875,12 @@ msgid ""
"recent</emphasis> employer (the one with the most recent <literal>startDate</"
"literal>) might be mapped this way:"
msgstr ""
"In a more complex example, imagine that the association between "
"<literal>Employee</literal> and <literal>Organization</literal> is "
"maintained in an <literal>Employment</literal> table full of historical "
"employment data. Then an association to the employee's <emphasis>most "
"recent</emphasis> employer (the one with the most recent <literal>startDate</"
"literal>) might be mapped this way: Em um exemplo mais complexo, imagine que "
"a associação entre Employee e Organization é mantida em uma tabela "
"Employment cheia de dados históricos do trabalho. Então a associação do "
"funcionário mais recentemente empregado (aquele com a mais recente "
"startDate) deve ser mapeado desta maneira:"
"Dans un exemple plus complexe, imaginez qu'une association entre "
"<literal>Employee</literal> et <literal>Organization</literal> est gérée "
"dans une table <literal>Employment</literal> pleines de données historiques. "
"Dans ce cas, une association vers l'employeur <emphasis>le plus récent</"
"emphasis> (celui avec la <literal>startDate</literal> la plus récente) "
"pourrait être mappée comme cela:"
#. Tag: programlisting
#: association_mapping.xml:281
@ -907,8 +907,6 @@ msgid ""
"You can get quite creative with this functionality, but it is usually more "
"practical to handle these kinds of cases using HQL or a criteria query."
msgstr ""
"You can get quite creative with this functionality, but it is usually more "
"practical to handle these kinds of cases using HQL or a criteria query. Você "
"pode ser criativo com esta funcionalidade, mas geralmente é mais prático "
"tratar estes tipos de casos, usando uma pesquisa HQL ou uma pesquisa por "
"criteria."
"Vous pouvez être créatif grace à ces possibilités, mais il est généralement "
"plus pratique d'utiliser des requêtes HQL ou criteria dans ce genre de "
"situation."

View File

@ -14,7 +14,7 @@ msgstr ""
#: batch.xml:5
#, no-c-format
msgid "Batch processing"
msgstr "Processamento de lotes"
msgstr "Traitement par paquet"
#. Tag: para
#: batch.xml:7
@ -23,8 +23,8 @@ msgid ""
"A naive approach to inserting 100 000 rows in the database using Hibernate "
"might look like this:"
msgstr ""
"Uma alternativa para inserir 100.000 linhas no banco de dados usando o "
"Hibernate pode ser a seguinte:"
"Une approche naïve pour insérer 100 000 lignes dans la base de données en "
"utilisant Hibernate pourrait ressembler à ça :"
#. Tag: programlisting
#: batch.xml:12
@ -49,10 +49,10 @@ msgid ""
"newly inserted <literal>Customer</literal> instances in the session-level "
"cache."
msgstr ""
"Isto irá falhar em algum lugar próximo a linha 50.000, lançando uma "
"<literal>OutOfMemoryException</literal>. Isso ocorre devido ao fato do "
"Hibernate fazer cache de todas as instâncias de <literal>Customer</literal> "
"inseridas num cachê em nível de sessão."
"Ceci devrait s'écrouler avec une <literal>OutOfMemoryException</literal> "
"quelque part aux alentours de la 50 000ème ligne. C'est parce qu'Hibernate "
"cache toutes les instances de <literal>Customer</literal> nouvellement "
"insérées dans le cache de second niveau."
#. Tag: para
#: batch.xml:20
@ -63,10 +63,12 @@ msgid ""
"the use of JDBC batching, if you intend to achieve reasonable performance. "
"Set the JDBC batch size to a reasonable number (say, 10-50):"
msgstr ""
"Neste capítulo veremos como contornar esse problema. Entretanto, se você vai "
"realizar processamento de lotes, é muito importante que você habilite o uso "
"de lotes JDBC, se você pretende obter um desempenho razoável. Defina o "
"tamanho do lote JDBC em um valor razoável (algo entre 10-50):"
"Dans ce chapitre nous montrerons comment éviter ce problème. D'abord, "
"cependant, si vous faites des traitements par batch, il est absolument "
"critique que vous activiez l'utilisation ds paquet JDBC (NdT : JDBC "
"batching), si vous avez l'intention d'obtenir des performances raisonnables. "
"Configurez la taille du paquet JDBC avec un nombre raisonnable (disons, 10-"
"50) :"
#. Tag: programlisting
#: batch.xml:27
@ -81,8 +83,8 @@ msgid ""
"Note that Hibernate disables insert batching at the JDBC level transparently "
"if you use an <literal>identiy</literal> identifier generator."
msgstr ""
"Você também pode querer rodar esse tipo de processamento de lotes com o "
"cache secundário completamente desabilitado:"
"Vous pourriez aussi vouloir faire cette sorte de travail dans un traitement "
"où l'interaction avec le cache de second niveau est complètement désactivé :"
#. Tag: para
#: batch.xml:34
@ -90,9 +92,7 @@ msgstr ""
msgid ""
"You also might like to do this kind of work in a process where interaction "
"with the second-level cache is completely disabled:"
msgstr ""
"Note that Hibernate disables insert batching at the JDBC level transparently "
"if you use an <literal>identiy</literal> identifier generator."
msgstr "Insertions en paquet"
#. Tag: programlisting
#: batch.xml:39
@ -108,15 +108,15 @@ msgid ""
"<literal>CacheMode</literal> to disable interaction with the second-level "
"cache."
msgstr ""
"Mas isto não é absolutamente necessário, desde que nós possamos ajustar o "
"<literal>CacheMode</literal> para desabilitar a interação com o cache "
"secundário."
"Lorsque vous rendez des nouveaux objets persistants, vous devez "
"régulièrement appeler <literal>flush()</literal> et puis <literal>clear()</"
"literal> sur la session, pour contrôler la taille du cache de premier niveau."
#. Tag: title
#: batch.xml:47
#, no-c-format
msgid "Batch inserts"
msgstr "Inserção de lotes"
msgstr "Paquet de mises à jour"
#. Tag: para
#: batch.xml:49
@ -126,9 +126,10 @@ msgid ""
"then <literal>clear()</literal> the session regularly, to control the size "
"of the first-level cache."
msgstr ""
"Quando você estiver inserindo novos objetos persistentes, vocês deve "
"executar os métodos <literal>flush()</literal> e <literal>clear()</literal> "
"regularmente na sessão, para controlar o tamanho do cache primário."
"Pour récupérer et mettre à jour des données les mêmes idées s'appliquent. En "
"plus, vous avez besoin d'utiliser <literal>scroll()</literal> pour tirer "
"partie des curseurs côté serveur pour les requêtes qui retournent beaucoup "
"de lignes de données."
#. Tag: programlisting
#: batch.xml:55
@ -155,7 +156,7 @@ msgstr ""
#: batch.xml:60
#, no-c-format
msgid "Batch updates"
msgstr "Batch updates"
msgstr "L'interface StatelessSession"
#. Tag: para
#: batch.xml:62
@ -165,9 +166,22 @@ msgid ""
"to use <literal>scroll()</literal> to take advantage of server-side cursors "
"for queries that return many rows of data."
msgstr ""
"Para recuperar e atualizar informações a mesma idéia é válida. "
"Adicionalmente, pode precisar usar o <literal>scroll()</literal> para usar "
"recursos no lado do servidor em queries que retornam muita informação."
"Alternativement, Hibernate fournit une API orientée commande qui peut être "
"utilisée avec des flux de données pour et en provenance de la base de "
"données sous la forme d'objets détachés. Une <literal>StatelessSession</"
"literal> n'a pas de contexte de persistance associé et ne fournit pas "
"beaucoup de sémantique de durée de vie de haut niveau. En particulier, une "
"session sans état n'implémente pas de cache de premier niveau et n'interagit "
"pas non plus avec un cache de seconde niveau ou un cache de requêtes. Elle "
"n'implémente pas les transactions ou la vérification sale automatique (NdT : "
"automatic dirty checking). Les opérations réalisées avec une session sans "
"état ne sont jamais répercutées en cascade sur les instances associées. Les "
"collections sont ignorées par une session sans état. Les opérations "
"exécutées via une session sans état outrepasse le modèle d'événements "
"d'Hibernate et les intercepteurs. Les sessions sans état sont vulnérables "
"aux effets de modification des données, ceci est dû au manque de cache de "
"premier niveau. Une session sans état est une abstraction bas niveau, plus "
"proche de la couche JDBC sous-jacente."
#. Tag: programlisting
#: batch.xml:68
@ -198,7 +212,10 @@ msgstr ""
#: batch.xml:73
#, no-c-format
msgid "The StatelessSession interface"
msgstr "A interface StatelessSession"
msgstr ""
"Notez que dans le code de l'exemple, les intances de <literal>Customer</"
"literal> retournées par la requête sont immédiatement détachées. Elles ne "
"sont jamais associées à un contexte de persistance."
#. Tag: para
#: batch.xml:74
@ -218,20 +235,15 @@ msgid ""
"level cache. A stateless session is a lower-level abstraction, much closer "
"to the underlying JDBC."
msgstr ""
"Alternativamente, o Hibernate provê uma API orientada à comandos, usada para "
"transmitir um fluxo de dados de e para o banco de dados na forma de objetos "
"soltos. Uma <literal>StatelessSession</literal> não tem um contexto "
"persistente associado e não fornece muito das semânticas de alto nível para "
"controle do ciclo de vida. Em especial, uma StatelessSession não implemente "
"o cache primário e nem interage com o cache secundário ou query cache. Ele "
"não implementa salvamento transacional automatico ou checagem automática de "
"mudanças. Operação realizadas usando uma StatelessSession não fazem nenhum "
"tipo de cascade com as instancias associadas. As coleções são ignoradas por "
"uma StatelessSession. Operações realizadas com um StatelessSession ignoram a "
"arquitetura de eventos e os interceptadores. StatelessSession são "
"vulneráveis aos efeitos do aliasing dos dados, devido a falta do cache "
"primário. Uma StatelessSession é uma abstração de baixo nível, muito mais "
"próxima do JDBC."
"Les opérations <literal>insert()</literal>, <literal>update()</literal> et "
"<literal>delete()</literal> définies par l'interface "
"<literal>StatelessSession</literal> sont considérées comme des opérations "
"d'accès direct aux lignes de la base de données, ce qui résulte en une "
"exécution immédiate du SQL <literal>INSERT</literal>, <literal>UPDATE</"
"literal> ou <literal>DELETE</literal> respectif. De là, elles ont des "
"sémantiques tres différentes des opérations <literal>save()</literal>, "
"<literal>saveOrUpdate()</literal> et <literal>delete()</literal> définies "
"par l'interface <literal>Session</literal>."
#. Tag: programlisting
#: batch.xml:89
@ -259,10 +271,7 @@ msgid ""
"Note that in this code example, the <literal>Customer</literal> instances "
"returned by the query are immediately detached. They are never associated "
"with any persistence context."
msgstr ""
"Veja neste exempo, as instancias de <literal>Customer</literal> retornadas "
"pela query são imediatamente desvinculadas. Elas nunca serão assossiadas à "
"um contexto persistente."
msgstr "Opérations de style DML"
#. Tag: para
#: batch.xml:97
@ -277,20 +286,25 @@ msgid ""
"<literal>delete()</literal> operations defined by the <literal>Session</"
"literal> interface."
msgstr ""
"As operações <literal>insert(), update()</literal> e <literal>delete()</"
"literal> definidos pela interface <literal>StatelessSession</literal> são "
"considerados operações diretas no banco de dados (row-level operations), "
"isso resulta em uma execução imediata de comandos SQL <literal>INSERT, "
"UPDATE</literal> ou <literal>DELETE</literal> respectivamente. Devido a "
"isso, eles possuem uma semântica bem diferente das operações <literal>save"
"(), saveOrUpdate()</literal> ou <literal>delete()</literal> definidas na "
"interface <literal>Session</literal>."
"Comme déjà discuté avant, le mapping objet/relationnel automatique et "
"transparent est intéressé par la gestion de l'état de l'objet. Ceci implique "
"que l'état de l'objet est disponible en mémoire, d'où manipuler (en "
"utilisant des expressions du langage de manipulation de données - "
"<literal>Data Manipulation Language</literal> (DML) - SQL) les données "
"directement dans la base n'affectera pas l'état en mémoire. Pourtant, "
"Hibernate fournit des méthodes pour l'exécution d'expression DML de style "
"SQL lesquelles sont réalisées à travers le langage de requête d'Hibernate "
"(<xref linkend=\"queryhql\">HQL</xref>)."
#. Tag: title
#: batch.xml:110
#, no-c-format
msgid "DML-style operations"
msgstr "Operações no estilo DML"
msgstr ""
"La pseudo-syntaxe pour les expressions <literal>UPDATE</literal> et "
"<literal>DELETE</literal> est : <literal>( UPDATE | DELETE ) FROM? "
"EntityName (WHERE where_conditions)?</literal>. Certains points sont à "
"noter :"
#. Tag: para
#: batch.xml:112
@ -305,16 +319,7 @@ msgid ""
"However, Hibernate provides methods for bulk SQL-style DML statement "
"execution which are performed through the Hibernate Query Language (<link "
"linkend=\"queryhql\">HQL</link>)."
msgstr ""
"Como já discutido, mapeamento objeto/relacional automático e transparente é "
"conseguido com a gerência do estado do objeto. Com isto o estado daquele "
"objeto fica disponível na memória, manipulando(usando as expressões SQL "
"<literal>Data Manipulation Language</literal> (SQL-style DML): "
"<literal>INSERT</literal>, <literal>UPDATE</literal>, <literal>DELETE</"
"literal>) os dados diretamente no banco de dados não irá afetar o estado "
"registrado em memória. Entretanto, o Hibernate provê métodos para executar "
"queries SQL-style DML, que são totalmente executas com HQL (Hibernate Query "
"Language) (<xref linkend=\"queryhql\">HQL</xref>)."
msgstr "Dans la clause from, le mot-clef FROM est optionnel"
#. Tag: para
#: batch.xml:122
@ -324,15 +329,20 @@ msgid ""
"literal> statements is: <literal>( UPDATE | DELETE ) FROM? EntityName (WHERE "
"where_conditions)?</literal>. Some points to note:"
msgstr ""
"A pseudo-sintaxe para expressões <literal>UPDATE</literal> e "
"<literal>DELETE</literal> é: <literal>( UPDATE | DELETE ) FROM? NomeEntidade "
"(WHERE condições_where)?</literal>. Algumas observações:"
"Il ne peut y avoir qu'une seule entité nommée dans la clause from ; elle "
"peut optionnellement avoir un alias. Si le nom de l'entité a un alias, alors "
"n'importe quelle référence de propriété doit être qualifiée en ayant un "
"alias ; si le nom de l'entité n'a pas d'alias, alors il est illégal pour "
"n'importe quelle référence de propriété d'être qualifiée."
#. Tag: para
#: batch.xml:130
#, no-c-format
msgid "In the from-clause, the FROM keyword is optional"
msgstr "Na clausula from, a palavra chave FROM é opcional;"
msgstr ""
"Aucune jointure (implicite ou explicite) ne peut être spécifiée dans une "
"requête HQL. Les sous-requêtes peuvent être utilisées dans la clause where ; "
"les sous-requêtes, elles-mêmes, peuvent contenir des jointures."
#. Tag: para
#: batch.xml:135
@ -342,12 +352,7 @@ msgid ""
"optionally be aliased. If the entity name is aliased, then any property "
"references must be qualified using that alias; if the entity name is not "
"aliased, then it is illegal for any property references to be qualified."
msgstr ""
"Somente uma entidade pode ser chamada na clausula from; opcionalmente pode "
"ter um alias. Se o nome da entidade for possuir um alias, então qualquer "
"propriedade referenciada deve usar esse alias qualificado; se o nome da "
"entidade não possuir um alias, então nenhuma das propriedade precisa usar o "
"acesso qualificado."
msgstr "La clause where est aussi optionnelle."
#. Tag: para
#: batch.xml:143
@ -357,15 +362,18 @@ msgid ""
"explicit) can be specified in a bulk HQL query. Sub-queries may be used in "
"the where-clause; the subqueries, themselves, may contain joins."
msgstr ""
"Na <xref linkend=\"queryhql-joins-forms\">joins</xref> (ambas implícita ou "
"explicita) pode ser especificada em um bulk HQL query. Sub-queries podem ser "
"usadas na clausula where; as subqueries podem conter joins."
"Par exemple, pour exécuter un <literal>UPDATE</literal> HQL, utilisez la "
"méthode <literal>Query.executeUpdate()</literal> (la méthode est données "
"pour ceux qui sont familiers avec <literal>PreparedStatement.executeUpdate()"
"</literal> de JDBC) :"
#. Tag: para
#: batch.xml:150
#, no-c-format
msgid "The where-clause is also optional."
msgstr "A clausula where também é opcional."
msgstr ""
"Pour exécuter un <literal>DELETE</literal> HQL, utilisez la même méthode "
"<literal>Query.executeUpdate()</literal> :"
#. Tag: para
#: batch.xml:156
@ -376,10 +384,18 @@ msgid ""
"those familiar with JDBC's <literal>PreparedStatement.executeUpdate()</"
"literal>):"
msgstr ""
"Como exemplo para executar um HQL <literal>UPDATE</literal>, use o método "
"<literal>Query.executeUpdate()</literal>(o método ganhou o nome devido a sua "
"familiaridade com o do JDBC <literal>PreparedStatement.executeUpdate()</"
"literal>):"
"La valeur du <literal>int</literal> retourné par la méthode <literal>Query."
"executeUpdate()</literal> indique le nombre d'entités affectées par "
"l'opération. Considérez que cela peut ou pas corréler le nombre de lignes "
"affectés dans la base de données. Une opération HQL pourrait entraîner "
"l'exécution de multiples expressions SQL réelles, pour des classes filles "
"mappées par jointure (NdT: join-subclass), par exemple. Le nombre retourné "
"indique le nombre d'entités réelles affectées par l'expression. Retour à "
"l'exemple de la classe fille mappée par jointure, un effacement d'une des "
"classes filles peut réellement entraîner des suppressions pas seulement dans "
"la table qui mappe la classe fille, mais aussi dans la table \"racine\" et "
"potentillement dans les tables des classes filles plus bas dans la "
"hiérarchie d'héritage."
#. Tag: programlisting
#: batch.xml:162
@ -414,15 +430,9 @@ msgid ""
"<literal>VERSIONED</literal> keyword after the <literal>UPDATE</literal> "
"keyword."
msgstr ""
"HQL <literal>UPDATE</literal> statements, by default do not effect the <xref "
"linkend=\"mapping-declaration-version\">version</xref> or the <xref linkend="
"\"mapping-declaration-timestamp\">timestamp</xref> property values for the "
"affected entities; this is in keeping with the EJB3 specification. However, "
"you can force Hibernate to properly reset the <literal>version</literal> or "
"<literal>timestamp</literal> property values through the use of a "
"<literal>versioned update</literal>. This is achieved by adding the "
"<literal>VERSIONED</literal> keyword after the <literal>UPDATE</literal> "
"keyword."
"La pseudo-syntaxe pour l'expression <literal>INSERT</literal> est : "
"<literal>INSERT INTO EntityName properties_list select_statement</literal>. "
"Quelques points sont à noter :"
#. Tag: programlisting
#: batch.xml:174
@ -448,9 +458,8 @@ msgid ""
"UserVersionType</literal>) are not allowed in conjunction with a "
"<literal>update versioned</literal> statement."
msgstr ""
"Note that custom version types (<literal>org.hibernate.usertype."
"UserVersionType</literal>) are not allowed in conjunction with a "
"<literal>update versioned</literal> statement."
"Seule la forme INSERT INTO ... SELECT ... est supportée ; pas la forme "
"INSERT INTO ... VALUES ... ."
#. Tag: para
#: batch.xml:181
@ -459,8 +468,14 @@ msgid ""
"To execute an HQL <literal>DELETE</literal>, use the same <literal>Query."
"executeUpdate()</literal> method:"
msgstr ""
"Para executar um HQL <literal>DELETE</literal>, use o mesmo método "
"<literal>Query.executeUpdate()</literal>:"
"La properties_list est analogue à la <literal>spécification de la colonne</"
"literal> The properties_list is analogous to the <literal>column "
"speficiation</literal> dans l'expression SQL <literal>INSERT</literal>. Pour "
"les entités impliquées dans un héritage mappé, seules les propriétés "
"directement définies à ce niveau de classe donné peuvent être utilisées dans "
"properties_list. Les propriétés de la classe mère ne sont pas permises ; et "
"les propriétés des classes filles n'ont pas de sens. En d'autres mots, les "
"expressions <literal>INSERT</literal> par nature non polymorphiques."
#. Tag: programlisting
#: batch.xml:186
@ -493,17 +508,18 @@ msgid ""
"table to which that subclass is mapped, but also the \"root\" table and "
"potentially joined-subclass tables further down the inheritence hierarchy."
msgstr ""
"O valor <literal>int</literal> retornado pelo método <literal>Query."
"executeUpdate()</literal> indica o numero de entidade afetadas pela "
"operação. Lembre-se que isso pode estar ou não relacionado ao número de "
"linhas alteradas no banco de dados. Uma operação bulk HQL pode resultar em "
"várias expressões SQL reais a serem executadas, por exemplo, no caso de "
"joined-subclass. O número retornado indica a quantidade real de entidades "
"afetadas pela expressão. Voltando ao exemplo da joined-subclass, a exclusão "
"de uma das subclasses pode resultar numa exclusão em outra tabelas, não "
"apenas na tabela para qual a subclasses está mapeada, mas também tabela "
"\"root\" e possivelmente nas tabelas joined-subclass num nível hierárquico "
"imediatamente abaixo."
"select_statement peut être n'importe quelle requête de sélection HQl valide, "
"avec l'avertissement que les types de retour doivent correspondre aux types "
"attendus par l'insertion. Actuellement, c'est vérifié durant la compilation "
"de la requête plutôt que la vérification soit reléguée à la base de données. "
"Notez cependant que cela pourrait poser des problèmes entre les "
"<literal>Type</literal>s d'Hibernate qui sont <emphasis>équivalents</"
"emphasis> opposé à <emphasis>égaux</emphasis>. Cela pourrait poser des "
"problèmes avec des disparités entre une propriété définie comme un "
"<literal>org.hibernate.type.DateType</literal> et une propriété définie "
"comme un <literal>org.hibernate.type.TimestampType</literal>, même si la "
"base de données ne ferait pas de distinction ou ne serait pas capable de "
"gérer la conversion."
#. Tag: para
#: batch.xml:199
@ -513,9 +529,21 @@ msgid ""
"<literal>INSERT INTO EntityName properties_list select_statement</literal>. "
"Some points to note:"
msgstr ""
"A pseudo-sintaxe para o comando <literal>INSERT</literal> é: <literal>INSERT "
"INTO EntityName properties_list select_statement</literal>. Alguns pontos a "
"observar:"
"Pour la propriéte id, l'expression d'insertion vous donne deux options. Vous "
"pouvez soit spécifier explicitement la propriété id dans properties_list "
"(auquel cas sa valeur est extraite de l'expression de sélection "
"correspondante), soit l'omettre de properties_list (auquel cas une valeur "
"générée est utilisée). Cette dernière option est seulement disponible en "
"utilisant le générateur d'identifiant qui opère dans la base de données ; "
"tenter d'utiliser cette option avec n'importe quel type de générateur \"en "
"mémoire\" causera une exception durant l'analyse. Notez que pour les buts de "
"cette discussion, les générateurs \"en base\" sont considérés être "
"<literal>org.hibernate.id.SequenceGenerator</literal> (et ses classes "
"filles) et n'importe quelles implémentations de <literal>org.hibernate.id."
"PostInsertIdentifierGenerator</literal>. L'exception la plus notable ici est "
"<literal>org.hibernate.id.TableHiLoGenerator</literal>, qu ne peut pas être "
"utilisée parce qu'il ne propose pas un moyen de d'exposer ses valeurs par un "
"select."
#. Tag: para
#: batch.xml:207
@ -524,8 +552,13 @@ msgid ""
"Only the INSERT INTO ... SELECT ... form is supported; not the INSERT "
"INTO ... VALUES ... form."
msgstr ""
"Apenas a forma INSERT INTO ... SELECT ... é suportada; INSERT INTO ... "
"VALUES ... não é suportada."
"Pour des propriétés mappées comme <literal>version</literal> ou "
"<literal>timestamp</literal>, l'expression d'insertion vous donne deux "
"options. Vous pouvez soit spécifier la propriété dans properties_list "
"(auquel cas sa valeur est extraite des expressions select correspondantes), "
"soit l'omettre de properties_list (auquel cas la <literal>valeur de graine</"
"literal> (NdT : seed value) définie par le <literal>org.hibernate.type."
"VersionType</literal> est utilisée)."
#. Tag: para
#: batch.xml:210
@ -538,12 +571,7 @@ msgid ""
"are not allowed; and subclass properties do not make sense. In other words, "
"<literal>INSERT</literal> statements are inherently non-polymorphic."
msgstr ""
"A lista de propriedade é análoga à <literal>especificação da coluna</"
"literal> do comando SQL <literal>INSERT</literal>. Para entidades envolvidas "
"em mapeamentos, apenas a propriedades definidas diretamente a nível da "
"classe podem ser usandas na properties_list. Propriedades da superclass não "
"são permitidas; e as propriedades da subclasse não faz sentido. Em outras "
"palavras, os comandos <literal>INSERT</literal> não são polimorficos."
"Un exemple d'exécution d'une expression <literal>INSERT</literal> HQL :"
#. Tag: para
#: batch.xml:220
@ -559,17 +587,7 @@ msgid ""
"DateType</literal> and a property defined as a <literal>org.hibernate.type."
"TimestampType</literal>, even though the database might not make a "
"distinction or might be able to handle the conversion."
msgstr ""
"O camando select pode ser qualquer query HQL válida, que tenha um retorno "
"compatível com o tipo com o esperado pela inclusão. Atualmente, isto é "
"verificado durante a compilação da query, isto é melhor do que permitir que "
"a verificação chegue ao banco de dados. Entretanto perceba que isso pode "
"causar problemas entre os <literal>Tipo</literal> do Hibernate que são "
"<emphasis>equivalentes</emphasis> em oposição a <emphasis>equal</emphasis>. "
"Isso pode causar problemas nas combinações entre a propriedade definida como "
"<literal>org.hibernate.type.DateType</literal>e um propriedade definida como "
"<literal>org.hibernate.type.TimestampType</literal>, embora o banco de dados "
"não possa fazer uma distinção ou possa ser capaz de manusear a conversão."
msgstr "translator-credits"
#. Tag: para
#: batch.xml:232
@ -589,19 +607,6 @@ msgid ""
"<literal>org.hibernate.id.TableHiLoGenerator</literal>, which cannot be used "
"because it does not expose a selectable way to get its values."
msgstr ""
"Para a propriedade id, a expressão insert oferece duas opções. Você pode "
"especificar qualquer propriedade id explicitamente no properties_list (em "
"alguns casos esse valor é obtido diretamente da expressão select) ou pode "
"omitir do properties_list (nesse caso, um valor gerado é usado). Essa ultima "
"opção só é válida quando são usados geradores de ids que operam no banco de "
"dados; a tentativa de usar essa opção com geradores do tipo \"em memória\" "
"vai causar um exceção durante a etapa de parser. Veja a finalidades desta "
"discussão, os seguintes geradores operam com o banco de dados <literal>org."
"hibernate.id.SequenceGenerator</literal> (e suas subclasses) e qualquer "
"implementação de <literal>org.hibernate.id.PostInsertIdentifierGenerator</"
"literal>. Aqui, a exceção mais notável é o <literal>org.hibernate.id."
"TableHiLoGenerator</literal>, que não pode ser usado porque ele não dispõe "
"de mecanismos para recuperar o seu valor."
#. Tag: para
#: batch.xml:247
@ -614,25 +619,12 @@ msgid ""
"from the properties_list (in which case the <literal>seed value</literal> "
"defined by the <literal>org.hibernate.type.VersionType</literal> is used)."
msgstr ""
"For properties mapped as either <literal>version</literal> or "
"<literal>timestamp</literal>, the insert statement gives you two options. "
"You can either specify the property in the properties_list (in which case "
"its value is taken from the corresponding select expressions) or omit it "
"from the properties_list (in which case the <literal>seed value</literal> "
"defined by the <literal>org.hibernate.type.VersionType</literal> is used). "
"Para propriedades mapeadas como <literal>version</literal> ou "
"<literal>timestamp</literal>, a expressão insert oferece a você duas opções. "
"Você pode especificar a propriedade na properties_list (nesse caso o seu "
"valor é obtido a partir da expressão select correspondente) ou ele pode ser "
"omitido da properties_list (neste caso o usa o <literal>valor semente</"
"literal> definido pela classe <literal>org.hibernate.type.VersionType</"
"literal>)."
#. Tag: para
#: batch.xml:257
#, no-c-format
msgid "An example HQL <literal>INSERT</literal> statement execution:"
msgstr "Exemplo da execução de um HQL <literal>INSERT</literal>:"
msgstr ""
#. Tag: programlisting
#: batch.xml:261

View File

@ -14,7 +14,7 @@ msgstr ""
#: best_practices.xml:5
#, no-c-format
msgid "Best Practices"
msgstr "Boas práticas"
msgstr "Meilleures pratiques"
#. Tag: term
#: best_practices.xml:9
@ -23,8 +23,8 @@ msgid ""
"Write fine-grained classes and map them using <literal>&lt;component&gt;</"
"literal>."
msgstr ""
"Escreva classes compactas e mapeie-as usando <literal>&lt;component&gt;</"
"literal>."
"Découpez finement vos classes et mappez les en utilisant <literal>&lt;"
"component&gt;</literal>."
#. Tag: para
#: best_practices.xml:11
@ -35,16 +35,15 @@ msgid ""
"<literal>postcode</literal>. This encourages code reuse and simplifies "
"refactoring."
msgstr ""
"Use uma classe <literal>Endereco</literal> para encapsular <literal>rua</"
"literal>, <literal>bairro</literal>, <literal>estado</literal>, "
"<literal>CEP</literal>. Isto promove a reutilização de código e simplifica o "
"refactoring."
"Utilisez une classe <literal>Adresse</literal> pour encapsuler <literal>Rue</"
"literal>, <literal>Region</literal>, <literal>CodePostal</literal>. Ceci "
"permet la réutilisation du code et simplifie la maintenance."
#. Tag: term
#: best_practices.xml:19
#, no-c-format
msgid "Declare identifier properties on persistent classes."
msgstr "Declare propriedades identificadoras em classes persistentes."
msgstr "Déclarez des propriétés d'identifiants dans les classes persistantes."
#. Tag: para
#: best_practices.xml:21
@ -54,16 +53,16 @@ msgid ""
"reasons why you should use them. We recommend that identifiers be "
"'synthetic' (generated, with no business meaning)."
msgstr ""
"O Hibernate constrói propriedades identificadoras opcionais. Existem todos "
"os tipos de razões que explicam porquê você deveria utilizá-las. Nós "
"recomendamos que os identificadores sejam 'sintéticos' (gerados, sem "
"significado para o negocio)."
"Hibernate rend les propriétés d'identifiants optionnelles. Il existe "
"beaucoup de raisons pour lesquelles vous devriez les utiliser. Nous "
"recommandons que vous utilisiez des identifiants techniques (générés, et "
"sans connotation métier)."
#. Tag: term
#: best_practices.xml:29
#, no-c-format
msgid "Identify natural keys."
msgstr "Identifique chaves naturais."
msgstr "Identifiez les clefs naturelles."
#. Tag: para
#: best_practices.xml:31
@ -74,16 +73,16 @@ msgid ""
"<literal>hashCode()</literal> to compare the properties that make up the "
"natural key."
msgstr ""
"Identifique chaves naturais para todas as entidades, e mapeie-as usando "
"<literal>&lt;natural-id&gt;</literal>. Implemente <literal>equals()</"
"literal> e <literal>hashCode()</literal> para comparar as propriedades que "
"compõem a chave natural."
"Identifiez les clefs naturelles pour toutes les entités, et mappez les avec "
"<literal>&lt;natural-id&gt;</literal>. Implémentez <literal>equals()</"
"literal> et <literal>hashCode()</literal> pour comparer les propriétés qui "
"composent la clef naturelle."
#. Tag: term
#: best_practices.xml:39
#, no-c-format
msgid "Place each class mapping in its own file."
msgstr "Coloque cada classe de mapeamento em seu próprio arquivo."
msgstr "Placez chaque mapping de classe dans son propre fichier."
#. Tag: para
#: best_practices.xml:41
@ -93,27 +92,27 @@ msgid ""
"literal> in the file <literal>com/eg/Foo.hbm.xml</literal>. This makes "
"particularly good sense in a team environment."
msgstr ""
"Não use um único código de mapeamento monolítico. Mapeie <literal>com.eg."
"Foo</literal> no arquivo <literal>com/eg/Foo.hbm.xml</literal>. Isto promove "
"particularmente o bom senso no time de desenvolvimento."
"N'utilisez pas un unique document de mapping. Mappez <literal>com.eg.Foo</"
"literal> dans le fichier <literal>com/eg/Foo.hbm.xml</literal>. Cela prend "
"tout son sens lors d'un travail en équipe."
#. Tag: term
#: best_practices.xml:49
#, no-c-format
msgid "Load mappings as resources."
msgstr "Carregue os mapeamentos como recursos."
msgstr "Chargez les mappings comme des ressources."
#. Tag: para
#: best_practices.xml:51
#, no-c-format
msgid "Deploy the mappings along with the classes they map."
msgstr "Faça o deploy dos mapeamentos junto com as classes que eles mapeiam."
msgstr "Déployez les mappings en même temps que les classes qu'ils mappent."
#. Tag: term
#: best_practices.xml:57
#, no-c-format
msgid "Consider externalising query strings."
msgstr "Considere externalizar as strings de consultas."
msgstr "Pensez à externaliser les chaînes de caractères."
#. Tag: para
#: best_practices.xml:59
@ -123,15 +122,15 @@ msgid ""
"functions. Externalising the query strings to mapping files will make the "
"application more portable."
msgstr ""
"Esta é uma boa prática se suas consultas chamam funções SQL que não sejam "
"ANSI. Externalizar as strings de consultas para mapear arquivos irão tornar "
"a aplicação mais portável."
"Ceci est une bonne habitude si vos requêtes appellent des fonctions SQL qui "
"ne sont pas au standard ANSI. Cette externalisation dans les fichiers de "
"mapping rendra votre application plus portable."
#. Tag: term
#: best_practices.xml:67
#, no-c-format
msgid "Use bind variables."
msgstr "Use bind variables."
msgstr "Utilisez les variables \"bindées\"."
#. Tag: para
#: best_practices.xml:69
@ -141,15 +140,16 @@ msgid ""
"manipulation to bind a non-constant value in a query! Even better, consider "
"using named parameters in queries."
msgstr ""
"Assim como em JDBC, sempre substitua valores não constantes por \"?\". Nunca "
"use a manipulação de strings para concatenar valores não constantes em uma "
"consulta! Até melhor, considere usar parâmetros nomeados nas consultas."
"Comme en JDBC, remplacez toujours les valeurs non constantes par \"?\". "
"N'utilisez jamais la manipulation des chaînes de caractères pour remplacer "
"des valeurs non constantes dans une requête ! Encore mieux, utilisez les "
"paramètres nommés dans les requêtes."
#. Tag: term
#: best_practices.xml:77
#, no-c-format
msgid "Don't manage your own JDBC connections."
msgstr "Não gerencie suas conexões JDBC."
msgstr "Ne gérez pas vous même les connexions JDBC."
#. Tag: para
#: best_practices.xml:79
@ -160,16 +160,17 @@ msgid ""
"providers, consider providing your own implementation of <literal>org."
"hibernate.connection.ConnectionProvider</literal>."
msgstr ""
"O Hibernate permite que a aplicação gerencie conexões JDBC. Esta abordagem "
"deve ser considerada um último recurso. Se você não pode usar os provedores "
"de conexão embutidos, considere fazer sua implementação a partir de "
"<literal>org.hibernate.connection.ConnectionProvider</literal>."
"Hibernate laisse l'application gérer les connexions JDBC. Vous ne devriez "
"gérer vos connexions qu'en dernier recours. Si vous ne pouvez pas utiliser "
"les systèmes de connexions livrés, réfléchissez à l'idée de fournir votre "
"propre implémentation de <literal>org.hibernate.connection."
"ConnectionProvider</literal>."
#. Tag: term
#: best_practices.xml:87
#, no-c-format
msgid "Consider using a custom type."
msgstr "Considere usar tipos customizados."
msgstr "Pensez à utiliser les types utilisateurs."
#. Tag: para
#: best_practices.xml:89
@ -181,17 +182,17 @@ msgid ""
"This approach frees the application code from implementing transformations "
"to / from a Hibernate type."
msgstr ""
"Suponha que você tenha um tipo Java, de alguma biblioteca, que precisa ser "
"persistido mas não provê os acessórios necessários para mapeá-lo como um "
"componente. Você deve implementar <literal>org.hibernate.UserType</literal>. "
"Esta abordagem livra o código da aplicação de implementar transformações de/"
"para o tipo Hibernate."
"Supposez que vous ayez une type Java, de telle bibliothèque, qui a besoin "
"d'être persisté mais qui ne fournit pas les accesseurs nécessaires pour le "
"mapper comme composant. Vous devriez implémenter <literal>org.hibernate."
"UserType</literal>.Cette approche libère le code de l'application de "
"l'implémentation des transformations vers / depuis les types Hibernate."
#. Tag: term
#: best_practices.xml:98
#, no-c-format
msgid "Use hand-coded JDBC in bottlenecks."
msgstr "Use código manual JDBC nos gargalos."
msgstr "Utilisez du JDBC pur dans les goulets d'étranglement."
#. Tag: para
#: best_practices.xml:100
@ -205,19 +206,20 @@ msgid ""
"connection. That way you can still use the same transaction strategy and "
"underlying connection provider."
msgstr ""
"Nas áreas de desempenho crítico do sistema, alguns tipos de operações podem "
"se beneficiar do uso direto do JDBC. Mas por favor, espere até você "
"<emphasis>saber </emphasis> se é um gargalo. E não suponha que o uso direto "
"do JDBC é necessariamente mais rápido. Se você precisar usar diretamente o "
"JDBC, vale a pena abrir uma <literal>Session</literal> do Hibernate e usar "
"uma conexão JDBC. De modo que você possa ainda usar a mesma estratégia de "
"transação e ocultar o provedor a conexão"
"Dans certaines parties critiques de votre système d'un point de vue "
"performance, quelques opérations peuvent tirer partie d'un appel JDBC natif. "
"Mais attendez de <emphasis>savoir</emphasis> que c'est un goulet "
"d'étranglement. Ne supposez jamais qu'un appel JDBC sera forcément plus "
"rapide. Si vous avez besoin d'utiliser JDBC directement, ouvrez une "
"<literal>Session</literal> Hibernate et utilisez la connexion SQL sous-"
"jacente. Ainsi vous pourrez utiliser la même stratégie de transation et la "
"même gestion des connexions."
#. Tag: term
#: best_practices.xml:110
#, no-c-format
msgid "Understand <literal>Session</literal> flushing."
msgstr "Entenda o <literal>Session</literal> flushing."
msgstr "Comprendre le flush de <literal>Session</literal>."
#. Tag: para
#: best_practices.xml:112
@ -229,18 +231,19 @@ msgid ""
"or even by changing the order of queries and other operations within a "
"particular transaction."
msgstr ""
"De tempos em tempos a sessão sincroniza seu estado persistente com o banco "
"de dados. O desempenho será afetado se este processo ocorrer frequentemente. "
"Você pode algumas vezes minimizar o fluxo desnecessário desabilitando o "
"fluxo automático ou até mesmo mudando a ordem das consultas e outras "
"operações em uma transação particular."
"De temps en temps la Session synchronise ses états persistants avec la base "
"de données. Les performances seront affectées si ce processus arrive trop "
"souvent. Vous pouvez parfois minimiser les flush non nécessaires en "
"désactivant le flush automatique ou même en changeant l'ordre des opérations "
"menées dans une transaction particulière."
#. Tag: term
#: best_practices.xml:121
#, no-c-format
msgid "In a three tiered architecture, consider using detached objects."
msgstr ""
"Em uma arquitetura de três camadas, considere o uso de objetos separados."
"Dans une architecture à trois couches, pensez à utiliser "
"<literal>saveOrUpdate()</literal>."
#. Tag: para
#: best_practices.xml:123
@ -252,18 +255,20 @@ msgid ""
"literal> or <literal>Session.saveOrUpdate()</literal> to synchronize objects "
"with the database."
msgstr ""
"When using a servlet / session bean architecture, you could pass persistent "
"objects loaded in the session bean to and from the servlet / JSP layer. Use "
"a new session to service each request. Use <literal>Session.merge()</"
"literal> or <literal>Session.saveOrUpdate()</literal> to synchronize objects "
"with the database."
"Quand vous utilisez une architecture à base de servlet / session bean, vous "
"pourriez passer des objets chargés dans le bean session vers et depuis la "
"couche servlet / JSP. Utilisez une nouvelle session pour traiter chaque "
"requête. Utilisez <literal>Session.merge()</literal> ou <literal>Session."
"saveOrUpdate()</literal> pour synchroniser les objets avec la base de "
"données."
#. Tag: term
#: best_practices.xml:132
#, no-c-format
msgid "In a two tiered architecture, consider using long persistence contexts."
msgstr ""
"In a two tiered architecture, consider using long persistence contexts."
"Dans une architecture à deux couches, pensez à utiliser la déconnexion de "
"session."
#. Tag: para
#: best_practices.xml:134
@ -282,24 +287,25 @@ msgid ""
"across more than one application transaction, or you will be working with "
"stale data."
msgstr ""
"Database Transactions have to be as short as possible for best scalability. "
"However, it is often necessary to implement long running "
"<emphasis>application transactions</emphasis>, a single unit-of-work from "
"the point of view of a user. An application transaction might span several "
"client request/response cycles. It is common to use detached objects to "
"implement application transactions. An alternative, extremely appropriate in "
"two tiered architecture, is to maintain a single open persistence contact "
"(session) for the whole life cycle of the application transaction and simply "
"disconnect from the JDBC connection at the end of each request and reconnect "
"at the beginning of the subsequent request. Never share a single session "
"across more than one application transaction, or you will be working with "
"stale data."
"Les transactions de bases de données doivent être aussi courtes que possible "
"pour une meilleure montée en charge.Cependant, il est souvent nécessaire "
"d'implémenter de longues <emphasis>transactions applicatives</emphasis>, une "
"simple unité de travail du point de vue de l'utilisateur. Une transaction "
"applicative peut s'étaler sur plusieurs cycles de requêtes/réponses du "
"client. Il est commun d'utiliser des objets détachés pour implémenter des "
"transactions applicatives. Une alternative, extrêmement appropriée dans une "
"architecture à 2 couches, est de maintenir un seul contact de persistance "
"ouvert (session) pour toute la durée de vie de la transaction applicative et "
"simplement se déconnecter de la connexion JDBC à la fin de chaque requête, "
"et se reconnecter au début de la requête suivante. Ne partagez jamais une "
"seule session avec plus d'une transaction applicative, ou vous travaillerez "
"avec des données périmées."
#. Tag: term
#: best_practices.xml:148
#, no-c-format
msgid "Don't treat exceptions as recoverable."
msgstr "Don't treat exceptions as recoverable."
msgstr "Considérez que les exceptions ne sont pas rattrapables."
#. Tag: para
#: best_practices.xml:150
@ -313,19 +319,19 @@ msgid ""
"instance with the given identifier exists on the database; use "
"<literal>Session.get()</literal> or a query instead."
msgstr ""
"This is more of a necessary practice than a \"best\" practice. When an "
"exception occurs, roll back the <literal>Transaction</literal> and close the "
"<literal>Session</literal>. If you don't, Hibernate can't guarantee that in-"
"memory state accurately represents persistent state. As a special case of "
"this, do not use <literal>Session.load()</literal> to determine if an "
"instance with the given identifier exists on the database; use "
"<literal>Session.get()</literal> or a query instead."
"Il s'agit plus d'une pratique obligatoire que d'une \"meilleure pratique\". "
"Quand une exception intervient, il faut faire un rollback de la "
"<literal>Transaction</literal> et fermer la <literal>Session</literal>. "
"Sinon, Hibernate ne peut garantir l'intégrité des états persistants en "
"mémoire. En particulier, n'utilisez pas <literal>Session.load()</literal> "
"pour déterminer si une instance avec un identifiant donné existe en base de "
"données, utilisez <literal>Session.get()</literal> ou un requête."
#. Tag: term
#: best_practices.xml:160
#, no-c-format
msgid "Prefer lazy fetching for associations."
msgstr "Prefer lazy fetching for associations."
msgstr "Préférez le chargement tardif des associations."
#. Tag: para
#: best_practices.xml:162
@ -339,13 +345,15 @@ msgid ""
"appropriate to a particular use case, use a query with a <literal>left join "
"fetch</literal>."
msgstr ""
"Use eager fetching sparingly. Use proxies and lazy collections for most "
"associations to classes that are not likely to be completely held in the "
"second-level cache. For associations to cached classes, where there is an a "
"extremely high probability of a cache hit, explicitly disable eager fetching "
"using <literal>lazy=\"false\"</literal>. When an join fetching is "
"appropriate to a particular use case, use a query with a <literal>left join "
"fetch</literal>."
"Utilisez le chargement complet avec modération. Utilisez les proxies et les "
"collections chargées tardivement pour la plupart des associations vers des "
"classes qui ne sont pas susceptibles d'être complètement retenues dans le "
"cache de second niveau. Pour les assocations de classes en cache, où il y a "
"une extrêmement forte probabilité que l'élément soit en cache, désactivez "
"explicitement le chargement par jointures ouvertes en utilisant "
"<literal>outer-join=\"false\"</literal>. Lorsqu'un chargement par jointure "
"ouverte est approprié pour un cas d'utilisation particulier, utilisez une "
"requête avec un <literal>left join fetch</literal>."
#. Tag: term
#: best_practices.xml:172
@ -354,8 +362,9 @@ msgid ""
"Use the <emphasis>open session in view</emphasis> pattern, or a disciplined "
"<emphasis>assembly phase</emphasis> to avoid problems with unfetched data."
msgstr ""
"Use the <emphasis>open session in view</emphasis> pattern, or a disciplined "
"<emphasis>assembly phase</emphasis> to avoid problems with unfetched data."
"Utilisez le pattern <emphasis>d'une ouverture de session dans une vue</"
"emphasis>, ou une <emphasis>phase d'assemblage</emphasis> disciplinée pour "
"éviter des problèmes avec des données non rapatriées."
#. Tag: para
#: best_practices.xml:177
@ -374,24 +383,25 @@ msgid ""
"rendering process. This is not a limitation of Hibernate! It is a "
"fundamental requirement of safe transactional data access."
msgstr ""
"Hibernate frees the developer from writing tedious <emphasis>Data Transfer "
"Objects</emphasis> (DTO). In a traditional EJB architecture, DTOs serve dual "
"purposes: first, they work around the problem that entity beans are not "
"serializable; second, they implicitly define an assembly phase where all "
"data to be used by the view is fetched and marshalled into the DTOs before "
"returning control to the presentation tier. Hibernate eliminates the first "
"purpose. However, you will still need an assembly phase (think of your "
"business methods as having a strict contract with the presentation tier "
"about what data is available in the detached objects) unless you are "
"prepared to hold the persistence context (the session) open across the view "
"rendering process. This is not a limitation of Hibernate! It is a "
"fundamental requirement of safe transactional data access."
"Hibernate libère les développeurs de l'écriture fastidieuse des "
"<emphasis>objets de transfert de données (NdT : Data Transfer Objects)</"
"emphasis> (DTO). Dans une architecture EJB traditionnelle, les DTOs ont deux "
"buts : premièrement, ils contournent le problème des \"entity bean\" qui ne "
"sont pas sérialisables ; deuxièmement, ils définissent implicitement une "
"phase d'assemblage où toutes les données utilisées par la vue sont "
"rapatriées et organisées dans les DTOs avant de retourner sous le contrôle "
"de la couche de présentation. Hibernate élimine le premier but. Pourtant, "
"vous aurez encore besoin d'une phase d'assemblage (pensez vos méthodes "
"métier comme ayant un contrat strict avec la couche de présentation à propos "
"de quelles données sont disponibles dans les objets détachés) à moins que "
"vous soyez préparés à garder le contexte de persistance (la session) ouvert "
"à travers tout le processus de rendu de la vue."
#. Tag: term
#: best_practices.xml:191
#, no-c-format
msgid "Consider abstracting your business logic from Hibernate."
msgstr "Consider abstracting your business logic from Hibernate."
msgstr "Pensez à abstraite votre logique métier d'Hibernate."
#. Tag: para
#: best_practices.xml:193
@ -404,18 +414,18 @@ msgid ""
"intended for \"sufficiently large\" applications; it is not appropriate for "
"an application with five tables!)"
msgstr ""
"Hide (Hibernate) data-access code behind an interface. Combine the "
"<emphasis>DAO</emphasis> and <emphasis>Thread Local Session</emphasis> "
"patterns. You can even have some classes persisted by handcoded JDBC, "
"associated to Hibernate via a <literal>UserType</literal>. (This advice is "
"intended for \"sufficiently large\" applications; it is not appropriate for "
"an application with five tables!)"
"Cachez le mécanisme d'accès aux données (Hibernate) derrière une interface. "
"Combinez les patterns <emphasis>DAO</emphasis> et <emphasis>Thread Local "
"Session</emphasis>. Vous pouvez même avoir quelques classes persistées par "
"du JDBC pur, associées à Hibernate via un <literal>UserType</literal> (ce "
"conseil est valable pour des applications de taille respectables ; il n'est "
"pas valable pour une application avec cinq tables)."
#. Tag: term
#: best_practices.xml:203
#, no-c-format
msgid "Don't use exotic association mappings."
msgstr "Don't use exotic association mappings."
msgstr "N'utilisez pas d'associations de mapping exotiques."
#. Tag: para
#: best_practices.xml:205
@ -428,18 +438,20 @@ msgid ""
"many and many-to-one, you should be careful when using any other association "
"style and ask yourself if it is really neccessary."
msgstr ""
"Good usecases for a real many-to-many associations are rare. Most of the "
"time you need additional information stored in the \"link table\". In this "
"case, it is much better to use two one-to-many associations to an "
"intermediate link class. In fact, we think that most associations are one-to-"
"many and many-to-one, you should be careful when using any other association "
"style and ask yourself if it is really neccessary."
"De bons cas d'utilisation pour de vraies associations plusieurs-vers-"
"plusieurs sont rares. La plupart du temps vous avez besoin d'informations "
"additionnelles stockées dans la table d'association. Dans ce cas, il est "
"préférable d'utiliser deux associations un-vers-plusieurs vers une classe de "
"liaisons intermédiaire. En fait, nous pensons que la plupart des "
"associations sont de type un-vers-plusieurs ou plusieurs-vers-un, vous devez "
"être très attentifs lorsque vous utilisez autre chose et vous demander si "
"c'est vraiment nécessaire."
#. Tag: term
#: best_practices.xml:215
#, no-c-format
msgid "Prefer bidirectional associations."
msgstr "Prefer bidirectional associations."
msgstr "Préférez les associations bidirectionnelles."
#. Tag: para
#: best_practices.xml:217
@ -449,6 +461,6 @@ msgid ""
"application, almost all associations must be navigable in both directions in "
"queries."
msgstr ""
"Unidirectional associations are more difficult to query. In a large "
"application, almost all associations must be navigable in both directions in "
"queries."
"Les associations unidirectionnelles sont plus difficiles à questionner. Dans "
"une grande application, la plupart des associations devraient être "
"navigables dans les deux directions dans les requêtes."

View File

@ -14,7 +14,7 @@ msgstr ""
#: component_mapping.xml:5
#, no-c-format
msgid "Component Mapping"
msgstr "Mapeamento de Componentes"
msgstr "Mapping de composants"
#. Tag: para
#: component_mapping.xml:7
@ -23,14 +23,14 @@ msgid ""
"The notion of a <emphasis>component</emphasis> is re-used in several "
"different contexts, for different purposes, throughout Hibernate."
msgstr ""
"A noção de <emphasis>componente</emphasis> é reusada em vários contextos "
"diferentes, para propósitos diferentes, pelo Hibernate."
"La notion de <emphasis>composants</emphasis> est réutilisé dans différents "
"contextes, avec différents objectifs, à travers Hibernate."
#. Tag: title
#: component_mapping.xml:13
#, no-c-format
msgid "Dependent objects"
msgstr "Objetos dependentes"
msgstr "Objects dépendants"
#. Tag: para
#: component_mapping.xml:15
@ -41,10 +41,11 @@ msgid ""
"notion of composition (not to architecture-level components). For example, "
"you might model a person like this:"
msgstr ""
"Um componente é um objeto contido que é persistido como um tipo de valor, "
"não uma referência de entidade. O termo \"componente\" refere-se à noção de "
"composição da orientação a objetos (não a componentes no nível de "
"arquitetura). Por exemplo, você pode modelar uma pessoa desta maneira:"
"Le composant est un objet inclu dans un autre qui est sauvegardé comme une "
"valeur, et non pas comme une entité. Le composant fait référence à la notion "
"(au sens objet) de composition (et non pas de composant au sens "
"d'architecture de composants). Par exemple on pourrait modélisé l'objet "
"personne de cette façon:"
#. Tag: programlisting
#: component_mapping.xml:21
@ -115,16 +116,17 @@ msgid ""
"getter and setter methods for its persistent properties, but doesn't need to "
"declare any interfaces or identifier properties."
msgstr ""
"Agora <literal>Name</literal> pode ser persistido como um componente de "
"<literal>Person</literal>. Note que <literal>Name</literal> define métodos "
"getter e setter para suas propriedades persistentes, mas não necessita "
"declarar nenhuma interface ou propriedades identificadoras."
"Maintenant <literal>Name</literal> peut-être sauvegardé comme un composant "
"de <literal>Person</literal>. Remarquer que <literal>Name</literal> définit "
"des methodes d'accès et de modification pour ses propriétés persistantes, "
"mais il n'a pas besoin des interfaces ou des propriétés d'identification "
"( par exemple getId() ) qui sont propres aux entités."
#. Tag: para
#: component_mapping.xml:32
#, no-c-format
msgid "Our Hibernate mapping would look like:"
msgstr "Nosso mapeamento do Hibernate seria semelhante a isso"
msgstr "Nous serions alors amené à mapper ce composant de cette façon:"
#. Tag: programlisting
#: component_mapping.xml:36
@ -152,7 +154,7 @@ msgid ""
"<literal>birthday</literal>, <literal>initial</literal>, <literal>first</"
"literal> and <literal>last</literal>."
msgstr ""
"A tabela pessoa teria as seguintes colunas <literal>pid</literal>, "
"La table person aurai les colonnes <literal>pid</literal>, "
"<literal>birthday</literal>, <literal>initial</literal>, <literal>first</"
"literal> and <literal>last</literal>."
@ -168,14 +170,15 @@ msgid ""
"columns are null, then the entire component is null. This should be okay for "
"most purposes."
msgstr ""
"Assim como todos tipos por valor, componentes não suportam referencias "
"cruzadas. Em outras palavras, duas pessoas poderiam possuir o mesmo nome, "
"mas os dois objetos pessoa poderiam conter dois objetos nome independentes, "
"apenas com \"o mesmo\" por valor. A semântica dos valores null de um "
"componente são <emphasis>ad hoc</emphasis>. No recarregameno do conteúdo do "
"objeto, O Hibernate assumira que se todas as colunas do componente são null, "
"então todo o componente é null. Isto seria o certo para a maioria dos "
"propósitos."
"Comme tous les types valeurs, les composants ne supportent pas les "
"références partagés. En d'autres mots, deux instances de person peuvent "
"avoir un même nom, mais ces noms sont indépendants, ils peuvent être "
"identiques si on les compare par valeur mais ils représentent deux objets "
"distincts en mémoire. La notion de nullité pour un composant est "
"<emphasis>ad hoc</emphasis>. Quand il recharge l'objet qui contient le "
"composant, Hibernate supposera que si tous les champs du composants sont "
"nuls alors le composant sera positionné à la valeur null. Ce choix "
"programmatif devrait être satisfaisant dans la plupart des cas."
#. Tag: para
#: component_mapping.xml:55
@ -186,11 +189,11 @@ msgid ""
"<emphasis>not</emphasis> be considered an exotic usage. Hibernate is "
"intended to support a very fine-grained object model."
msgstr ""
"As propriedades de um componente podem ser de qualquer tipo do Hibernate"
"(collections, associações muitos-para-um, outros componentes, etc). "
"Componentes agrupados <emphasis>não </emphasis> devem ser consideros um uso "
"exótico. O Hibernate tem a intenção de suportar um modelo de objetos muito "
"bem granulado."
"Les propriétés d'un composant peuvent être de tous les types qu'Hibernate "
"supporte habituellement (collections, many-to-one associations, autres "
"composants, etc). Les composants inclus ne doivent <emphasis>pas</emphasis> "
"être vus comme quelque chose d'exotique. Hibernate a été conçu pour "
"supporter un modèle objet très granulaire."
#. Tag: para
#: component_mapping.xml:62
@ -200,9 +203,8 @@ msgid ""
"parent&gt;</literal> subelement that maps a property of the component class "
"as a reference back to the containing entity."
msgstr ""
"O elemento <literal>&lt;component&gt;</literal> permite um subelemento "
"<literal>&lt;parent&gt;</literal> que mapeia uma propriedade da classe "
"componente como uma referência de volta para a entidade que a contém."
"Le <literal>&lt;component&gt;</literal> peut inclure dans la liste de ses "
"propriétés une référence au <literal>&lt;parent&gt;</literal> conteneur."
#. Tag: programlisting
#: component_mapping.xml:68
@ -227,7 +229,7 @@ msgstr ""
#: component_mapping.xml:73
#, no-c-format
msgid "Collections of dependent objects"
msgstr "Collections de objetos dependentes"
msgstr "Collection d'objets dépendants"
#. Tag: para
#: component_mapping.xml:75
@ -238,9 +240,9 @@ msgid ""
"element&gt;</literal> tag with a <literal>&lt;composite-element&gt;</"
"literal> tag."
msgstr ""
"Collections de componentes são suportadadas(ex. uma array de tipo "
"<literal>Name</literal>). Declare a sua collection de componentes "
"substituindo a tag<literal>&lt;element&gt;</literal> pela tag <literal>&lt;"
"Les collections d'objets dépendants sont supportés (exemple: un tableau de "
"type <literal>Name</literal>). Déclarer la collection de composants en "
"remplaçant le tag <literal>&lt;element&gt;</literal> par le tag <literal>&lt;"
"composite-element&gt;</literal>."
#. Tag: programlisting
@ -265,9 +267,9 @@ msgid ""
"very important to implement <literal>equals()</literal> and <literal>hashCode"
"()</literal> correctly."
msgstr ""
"Nota: se você definir um <literal>Set</literal> de elementos compostos, é "
"muito importante implementar <literal>equals()</literal> e <literal>hashCode"
"()</literal> corretamente."
"Remarque: Si vous définissez un <literal>Set</literal> d'élément composite, "
"il est très important d'implémenter la méthode <literal>equals()</literal> "
"et <literal>hashCode()</literal> correctement."
#. Tag: para
#: component_mapping.xml:90
@ -282,14 +284,15 @@ msgid ""
"though the Java model is the same, the relational model and persistence "
"semantics are still slightly different."
msgstr ""
"Elementos compostos podem conter componentes mas não collections. Se o seu "
"elemento composto contiver componentes , use a tag <literal>&lt;nested-"
"composite-element&gt;</literal> . Este é um caso bastante exótico uma "
"collections de componentes que por si própria possui componentes. Neste "
"momento você deve estar se perguntando se uma associação de um-para-muitos "
"seria mais apropriada. Tente remodelar o elemento composto como uma entidade "
" mas note que mesmo pensando que o modelo Java é o mesmo, o modelo "
"relacional e a semântica de persistência ainda são diferentes."
"Les élements composite peuvent aussi contenir des composants mais pas des "
"collections. Si votre élément composite contient aussi des composants, "
"utilisez l'élément <literal>&lt;nested-composite-element&gt;</literal> . Une "
"collections de composants qui ccontiennent eux-mêmes des composants est un "
"cas très exotique. A ce stade demandez-vous si une association un-à-"
"plusieurs ne serait pas plus approprié. Essayez de re remodeler votre "
"élément composite comme une entité ( Dans ce cas même si le modèle Java est "
"le même la logique de persitence et de relation sont tout de même "
"différentes)"
#. Tag: para
#: component_mapping.xml:102
@ -304,15 +307,15 @@ msgid ""
"literal>, <literal>&lt;map&gt;</literal>, <literal>&lt;bag&gt;</literal> or "
"<literal>&lt;idbag&gt;</literal>."
msgstr ""
"Por favor, note que um mapeamento de elemento composto não suporta "
"propriedades capazes de serem null se você estiver usando um <literal>&lt;"
"set&gt;</literal>. O Hibernate tem que usar cada valor das colunas para "
"identificar um registro quando estiver deletando objetos (não existe coluna "
"chave primária separada na tabela de elemento composto), que não é possível "
"com valores null. Você tem que usar um dos dois, ou apenas propriedades não "
"null em um elemento composto ou escolher uma <literal>&lt;list&gt;</"
"literal>, <literal>&lt;map&gt;</literal>, <literal>&lt;bag&gt;</literal> ou "
"<literal>&lt;idbag&gt;</literal>."
"Remarque, le mapping d'éléments composites ne supporte pas la nullité des "
"propriétés lorsqu'on utilise un <literal>&lt;set&gt;</literal>. Hibernate "
"lorsqu'il supprime un objet utilise chaque colonne pour identifier un objet "
"(on ne peut pas utiliser des clés primaires distinctes dans une table "
"d'éléments composites), ce qui n'est pas possible avec des valeurs nulles. "
"Vous devez donc choisir d'interdire la nullité des propriétés d'un élément "
"composite ou choisir un autre type de collection comme : <literal>&lt;"
"list&gt;</literal>, <literal>&lt;map&gt;</literal>, <literal>&lt;bag&gt;</"
"literal> ou <literal>&lt;idbag&gt;</literal>."
#. Tag: para
#: component_mapping.xml:113
@ -326,13 +329,14 @@ msgid ""
"<literal>purchaseDate</literal>, <literal>price</literal> and "
"<literal>quantity</literal> are properties of the association:"
msgstr ""
"Um caso especial de elemento composto é um elemento composto com um elemento "
"<literal>&lt;many-to-one&gt;</literal> aninhado. Um mapeamento como este "
"permite você a mapear colunas extras de uma tabela de associação de muitos-"
"para-muitos para a classe de elemento composto. A seguinte associação de "
"muitos-para-muitos de <literal>Order</literal> para um <literal>Item</"
"literal> onde <literal>purchaseDate</literal>, <literal>price</literal> e "
"<literal>quantity</literal> são propriedades da associação:"
"Un cas particulier d'élément composite est un élément composite qui inclut "
"un élément <literal>&lt;many-to-one&gt;</literal>. Un mapping comme celui-ci "
"vous permet d'associer les colonnes d'une table d'association plusieurs à "
"plusieurs (many-to-many) à la classse de l'élément composite. L'exemple "
"suivant est une association plusieurs à plusieurs de <literal>Order</"
"literal> à <literal>Item</literal> à <literal>purchaseDate</literal>, "
"<literal>price</literal> et <literal>quantity</literal> sont des propriétés "
"de l'association."
#. Tag: programlisting
#: component_mapping.xml:123
@ -363,18 +367,16 @@ msgid ""
"literal> can be in the set of an <literal>Order</literal>, but it can't be "
"referenced by the <literal>Item</literal> at the same time."
msgstr ""
"Claro, que não pode ter uma referência para purchase no outro lado, para a "
"navegação da associação bidirecional. Lembre-se que componentes são tipos "
"por valor e não permitem referências compartilhadas. Uma classe "
"<literal>Purchase</literal> simples pode estar no set de uma classe "
"<literal>Order</literal>, mas ela não pode ser referenciada por "
"<literal>Item</literal> no mesmo momento."
"Bien sûr, il ne peut pas y avoir de référence à l'achat (purchase) depuis "
"l'article (item), pour pouvoir naviguer de façon bidirectionnelle dans "
"l'association. N'oubliez pas que les composants sont de type valeurs et "
"n'autorise pas les références partagées."
#. Tag: para
#: component_mapping.xml:133
#, no-c-format
msgid "Even ternary (or quaternary, etc) associations are possible:"
msgstr "Até mesmo associações ternárias (ou quaternária, etc) são possíveis:"
msgstr "Même les associations ternaires ou quaternaires sont possibles:"
#. Tag: programlisting
#: component_mapping.xml:135
@ -399,14 +401,14 @@ msgid ""
"Composite elements may appear in queries using the same syntax as "
"associations to other entities."
msgstr ""
"Elementos compostos podem aparecer em pesquisas usando a mesma sintaxe assim "
"como associações para outras entidades."
"Les éléments composites peuvent apparaître dans les requêtes en utilisant la "
"même syntaxe que associations"
#. Tag: title
#: component_mapping.xml:145
#, no-c-format
msgid "Components as Map indices"
msgstr "Componentes como índices de Map"
msgstr "Utiliser les composants comme index de map"
#. Tag: para
#: component_mapping.xml:147
@ -417,16 +419,16 @@ msgid ""
"override <literal>hashCode()</literal> and <literal>equals()</literal> "
"correctly on the component class."
msgstr ""
"O elemento <literal>&lt;composite-map-key&gt;</literal> permite você mapear "
"uma classe componente como uma chave de um <literal>Map</literal>. Tenha "
"certeza que você sobrescreveu <literal>hashCode()</literal> e <literal>equals"
"()</literal> corretamente na classe componente."
"l'élément <literal>&lt;composite-map-key&gt;</literal> vous permet "
"d'utiliser une classe de composant comme indice de <literal>Map</literal>. "
"Assurez-vous d'avoir surdéfini <literal>hashCode()</literal> et "
"<literal>equals()</literal> dans la classe du composant."
#. Tag: title
#: component_mapping.xml:156
#, no-c-format
msgid "Components as composite identifiers"
msgstr ". Componentes como identificadores compostos"
msgstr "Utiliser un composant comme identifiant"
#. Tag: para
#: component_mapping.xml:158
@ -435,14 +437,14 @@ msgid ""
"You may use a component as an identifier of an entity class. Your component "
"class must satisfy certain requirements:"
msgstr ""
"Você pode usar um componente como um identificador de uma classe entidade. "
"Sua classe componente deve satisfazer certos requisitos:"
"Vous pouvez utiliser un composant comme identifiant d'une entité. Mais pour "
"cela la classe du composant doit respecter certaines règles."
#. Tag: para
#: component_mapping.xml:165
#, no-c-format
msgid "It must implement <literal>java.io.Serializable</literal>."
msgstr "Ele deve implementar <literal>java.io.Serializable</literal>."
msgstr "Elle doit implémenter <literal>java.io.Serializable</literal>."
#. Tag: para
#: component_mapping.xml:170
@ -451,9 +453,9 @@ msgid ""
"It must re-implement <literal>equals()</literal> and <literal>hashCode()</"
"literal>, consistently with the database's notion of composite key equality."
msgstr ""
"Ele deve re-implementar <literal>equals()</literal> e <literal>hashCode()</"
"literal>, consistentemente com a noção de igualdade de chave composta do "
"banco de dados."
"Elle doit redéfinir <literal>equals()</literal> et <literal>hashCode()</"
"literal>, de façon cohérente avec le fait qu'elle définit une clé composite "
"dans la base de données."
#. Tag: emphasis
#: component_mapping.xml:179
@ -462,8 +464,8 @@ msgid ""
"Note: in Hibernate3, the second requirement is not an absolutely hard "
"requirement of Hibernate. But do it anyway."
msgstr ""
"Nota: no Hibernate 3, o segundo requisito não é um requisito absolutamente "
"necessário. Mas atenda ele de qualquer forma."
"Remarque: avec hibernate3, la seconde règle n'est plus absolument necessaire "
"mais faîtes le quand même."
#. Tag: para
#: component_mapping.xml:183
@ -472,9 +474,9 @@ msgid ""
"You can't use an <literal>IdentifierGenerator</literal> to generate "
"composite keys. Instead the application must assign its own identifiers."
msgstr ""
"Você não pode usar um <literal>IdentifierGenerator</literal> para gerar "
"chaves compostas. Ao invés disso o aplicativo deve gerenciar seus próprios "
"identificadores."
"Vous ne pouvez pas utiliser de <literal>IdentifierGenerator</literal> pour "
"générer une clé composite, l'application devra définir elle même ses propres "
"identifiants."
#. Tag: para
#: component_mapping.xml:188
@ -486,11 +488,11 @@ msgid ""
"<literal>OrderLine</literal> class has a primary key that depends upon the "
"(composite) primary key of <literal>Order</literal>."
msgstr ""
"Use a tag <literal>&lt;composite-id&gt;</literal> (com elementos "
"<literal>&lt;key-property&gt;</literal> aninhados) no lugar da declaração "
"<literal>&lt;id&gt;</literal> de costume. Por exemplo, a classe "
"<literal>OrderLine</literal> possui uma chave primária que depende da chave "
"primária (composta) de <literal>Order</literal>."
"Utiliser l'élément <literal>&lt;composite-id&gt;</literal> (en incluant "
"l'élément <literal>&lt;key-property&gt;</literal>) à la place de l'habituel "
"déclaration <literal>&lt;id&gt;</literal>. Par exemple la classe "
"<literal>OrderLine</literal> qui dépend de la clé primaire (composite) de "
"<literal>Order</literal>."
#. Tag: programlisting
#: component_mapping.xml:196
@ -524,10 +526,10 @@ msgid ""
"also composite. You must declare this in your mappings for other classes. An "
"association to <literal>OrderLine</literal> would be mapped like this:"
msgstr ""
"Agora, qualquer chave estrangeira referenciando a tabela <literal>OrderLine</"
"literal> também serão compostas. Você deve declarar isto em seus mapeamentos "
"para outras classes. Uma associação para <literal>OrderLine</literal> seria "
"mapeada dessa forma:"
"Maintenant toutes clés étrangères référençant la table <literal>OrderLine</"
"literal> devra aussi être composite. Vous devez en tenir compte lorsque vous "
"écrivez vos mapping d'association pour les autres classes. Une association à "
"<literal>OrderLine</literal> devrait être mappé de la façon suivante :"
#. Tag: programlisting
#: component_mapping.xml:204
@ -548,8 +550,8 @@ msgid ""
"(Note that the <literal>&lt;column&gt;</literal> tag is an alternative to "
"the <literal>column</literal> attribute everywhere.)"
msgstr ""
"(Note que a tag <literal>&lt;column&gt;</literal> é uma alternativa para o "
"atributo <literal>column</literal> por toda a parte.)"
"(Remarque: l'élément <literal>&lt;column&gt;</literal> est une alternative à "
"l'attribut <literal>column</literal> que l'on utilise partout.)"
#. Tag: para
#: component_mapping.xml:211
@ -558,8 +560,8 @@ msgid ""
"A <literal>many-to-many</literal> association to <literal>OrderLine</"
"literal> also uses the composite foreign key:"
msgstr ""
"Uma associação <literal>many-to-many</literal> para <literal>many-to-many</"
"literal> também usa a chave estrangeira composta:"
"Une association <literal>plusieurs-à-plusieurs</literal> (many-to-many) à "
"<literal>OrderLine</literal> utilisera aussi une clé étrangère composite:"
#. Tag: programlisting
#: component_mapping.xml:216
@ -582,8 +584,8 @@ msgid ""
"The collection of <literal>OrderLine</literal>s in <literal>Order</literal> "
"would use:"
msgstr ""
"A collection de <literal>OrderLine</literal>s em <literal>Order</literal> "
"usaria:"
"La collection des <literal>OrderLine</literal>s dans <literal>Order</"
"literal> utilisera:"
#. Tag: programlisting
#: component_mapping.xml:223
@ -605,8 +607,8 @@ msgid ""
"(The <literal>&lt;one-to-many&gt;</literal> element, as usual, declares no "
"columns.)"
msgstr ""
"(O elemento <literal>&lt;one-to-many&gt;</literal>, como de costume, não "
"declara colunas.)"
"(L'élément <literal>&lt;one-to-many&gt;</literal>, comme d'habitude, ne "
"déclare pas de colonne.)"
#. Tag: para
#: component_mapping.xml:229
@ -615,8 +617,8 @@ msgid ""
"If <literal>OrderLine</literal> itself owns a collection, it also has a "
"composite foreign key."
msgstr ""
"Se <literal>OrderLine</literal> possui uma collection, ela também tem uma "
"chave estrangeira composta."
"Si <literal>OrderLine</literal> lui-même possède une collection, celle-ci "
"aura aussi une clé composite étrangère."
#. Tag: programlisting
#: component_mapping.xml:234
@ -643,14 +645,13 @@ msgstr ""
#: component_mapping.xml:239
#, no-c-format
msgid "Dynamic components"
msgstr "Componentes Dinâmicos"
msgstr "Composant Dynamique"
#. Tag: para
#: component_mapping.xml:241
#, no-c-format
msgid "You may even map a property of type <literal>Map</literal>:"
msgstr ""
"Você pode até mesmo mapear uma propriedade do tipo <literal>Map</literal>:"
msgstr "Vous pouvez même mapper une propriété de type <literal>Map</literal>:"
#. Tag: programlisting
#: component_mapping.xml:245
@ -675,11 +676,12 @@ msgid ""
"Even better, you can access (and change) Hibernate's configuration-time "
"metamodel via the <literal>Configuration</literal> object."
msgstr ""
"A semântica de um mapeamento <literal>&lt;dynamic-component&gt;</literal> é "
"idêntica à <literal>&lt;component&gt;</literal>. A vantagem deste tipo de "
"mapeamento é a habilidade de determinar as propriedades atuais do bean no "
"momento de deploy, apenas editando o documento de mapeamento. A Manipulação "
"em tempo de execução do documento de mapeamento também é possível, usando o "
"parser DOM. Até melhor, você pode acessar (e mudar) o metamodelo "
"configuration-time do Hibernate através do objeto <literal>Configuration</"
"literal>."
"La sémantique de l'association à un <literal>&lt;dynamic-component&gt;</"
"literal> est identique à celle que l'on utilise pour les composants. "
"L'avantage de ce type de mapping est qu'il pemet de déterminer les "
"véritables propriétés du bean au moment su déploiement en éditant simplement "
"le document de mapping. La manipulation du document de mapping pendant "
"l'execution de l'application est aussi possible en utilisant un parser DOM. "
"Il ya même mieux, vous pouvez accéder (et changer) le metamodel de "
"configuration d'hibernate en utilisant l'objet <literal>Configuration</"
"literal>"

View File

@ -14,7 +14,7 @@ msgstr ""
#: events.xml:5
#, no-c-format
msgid "Interceptors and events"
msgstr "Interceptadores e Eventos"
msgstr "Les intercepteurs et les événements"
#. Tag: para
#: events.xml:7
@ -24,16 +24,16 @@ msgid ""
"inside Hibernate. This allows implementation of certain kinds of generic "
"functionality, and extension of Hibernate functionality."
msgstr ""
"É muito útil quando a aplicação precisa executar alguma \"coisa\" no momento "
"em que o Hibernate executa uma de suas ações. Isso permite a implementação "
"de certas funções genéricas, assim como permite estender as funcionalidades "
"do Hibernate"
"Il est souvent utile pour l'application de réagir à certains événements qui "
"surviennent dans Hibernate. Cela autorise l'implémentation de certaines "
"sortes de fonctionnalités génériques, et d'extensions de fonctionnalités "
"d'Hibernate."
#. Tag: title
#: events.xml:14
#, no-c-format
msgid "Interceptors"
msgstr "Interceptadores"
msgstr "Intercepteurs"
#. Tag: para
#: events.xml:16
@ -49,15 +49,15 @@ msgid ""
"<literal>lastUpdateTimestamp</literal> property when an <literal>Auditable</"
"literal> is updated."
msgstr ""
"A interface <literal>Interceptor</literal> permite fornecer informações da "
"session para o aplicativo, permitindo ao aplicativo inspecionar e/ou "
"manipular as propriedades de um objeto persistente antes de ser salvo, "
"atualizado, excluído ou salvo. Um dos possíveis usos é gerar informações de "
"auditoria. Por exemplo, o seguinte <literal>Interceptor</literal> seta "
"automaticamente o atributo <literal>createTimestamp</literal> quando um "
"<literal>Auditable</literal> é criada e atualiza o atributo "
"<literal>lastUpdateTimestamp</literal> quando um <literal>Auditable</"
"literal> é atualizado."
"L'interface <literal>Interceptor</literal> fournit des \"callbacks\" de la "
"session vers l'application et permettent à l'application de consulter et/ou "
"de manipuler des propriétés d'un objet persistant avant qu'il soit "
"sauvegardé, mis à jour, supprimé ou chargé. Une utilisation possible de "
"cette fonctionnalité est de tracer l'accès à l'information. Par exemple, "
"l'<literal>Interceptor</literal> suivant positionne "
"<literal>createTimestamp</literal> quand un <literal>Auditable</literal> est "
"créé et met à jour la propriété <literal>lastUpdateTimestamp</literal> quand "
"un <literal>Auditable</literal> est mis à jour."
#. Tag: para
#: events.xml:27
@ -66,9 +66,8 @@ msgid ""
"You may either implement <literal>Interceptor</literal> directly or (better) "
"extend <literal>EmptyInterceptor</literal>."
msgstr ""
"Você pode implementar <literal>Auditable</literal> diretamente ou pode "
"estender <literal>EmptyInterceptor</literal>, sendo que a segunda é "
"considerada a melhor opção."
"Vous pouvez soit implémenter <literal>Interceptor</literal> directement ou "
"(mieux) étendre <literal>EmptyInterceptor</literal>."
#. Tag: programlisting
#: events.xml:32
@ -166,8 +165,8 @@ msgid ""
"Interceptors come in two flavors: <literal>Session</literal>-scoped and "
"<literal>SessionFactory</literal>-scoped."
msgstr ""
"Os interceptadores podem ser aplicados em dois diferentes escopos: No escopo "
"da <literal>Session</literal> e no escopo <literal>SessionFactory</literal>."
"Interceptors come in two flavors: <literal>Session</literal>-scoped and "
"<literal>SessionFactory</literal>-scoped."
#. Tag: para
#: events.xml:39
@ -177,9 +176,9 @@ msgid ""
"is opened using one of the overloaded SessionFactory.openSession() methods "
"accepting an <literal>Interceptor</literal>."
msgstr ""
"Um interceptador no escopo da <literal>Session</literal> é definido quando "
"uma sessão é aberta usando o método sobrecarregado da SessionFactory."
"openSession() que aceita um <literal>Interceptor</literal> como parâmetro."
"A <literal>Session</literal>-scoped interceptor is specified when a session "
"is opened using one of the overloaded SessionFactory.openSession() methods "
"accepting an <literal>Interceptor</literal>."
#. Tag: programlisting
#: events.xml:45
@ -200,16 +199,14 @@ msgid ""
"must be thread safe, taking care to not store session-specific state since "
"multiple sessions will use this interceptor (potentially) concurrently."
msgstr ""
"Um interceptador no escopo da <literal>SessionFactory</literal> é definido "
"no objeto <literal>Configuration</literal> antes da <literal>SessionFactory</"
"literal> ser instanciada. Nesse caso, o interceptador fornecido será "
"aplicado para todas as sessões abertas por aquela <literal>SessionFactory</"
"literal>; Isso apenas não ocorrerá caso seja especificado um interceptador "
"no momento em que a sessão for aberta. Um interceptador no escopo de "
"<literal>SessionFactory</literal> deve ser thread safe, tomando-se o cuidado "
"de não armazenar atributos de estado específicos da sessão, pois, "
"provavelmente, múltiplas sessões irão utilizar esse interceptador "
"simultaneamente."
"A <literal>SessionFactory</literal>-scoped interceptor is registered with "
"the <literal>Configuration</literal> object prior to building the "
"<literal>SessionFactory</literal>. In this case, the supplied interceptor "
"will be applied to all sessions opened from that <literal>SessionFactory</"
"literal>; this is true unless a session is opened explicitly specifying the "
"interceptor to use. <literal>SessionFactory</literal>-scoped interceptors "
"must be thread safe, taking care to not store session-specific state since "
"multiple sessions will use this interceptor (potentially) concurrently."
#. Tag: programlisting
#: events.xml:56
@ -222,7 +219,7 @@ msgstr ""
#: events.xml:61
#, no-c-format
msgid "Event system"
msgstr "Sistema de Eventos"
msgstr "Système d'événements"
#. Tag: para
#: events.xml:63
@ -232,10 +229,10 @@ msgid ""
"also use the Hibernate3 <emphasis>event</emphasis> architecture. The event "
"system can be used in addition or as a replacement for interceptors."
msgstr ""
"Se você precisa executar uma ação em determinados eventos da camada de "
"persistência, você também pode usar a arquitetura de <emphasis>event</"
"emphasis> do Hibernate3. Um evento do sistema pode ser utilizado como "
"complemento ou em substituição a um interceptador."
"Si vous devez réagir à des événements particuliers dans votre couche de "
"persistance, vous pouvez aussi utiliser l'architecture "
"d'<emphasis>événements</emphasis> d'Hibernate3. Le système d'événements peut "
"être utilisé en supplément ou en remplacement des interceptors."
#. Tag: para
#: events.xml:69
@ -256,20 +253,21 @@ msgid ""
"processing any <literal>load()</literal> requests made of the "
"<literal>Session</literal>."
msgstr ""
"Essencialmente todos os métodos da interface <literal>Session</literal> "
"possuem um evento correlacionado. Se você tiver um <literal>LoadEvent</"
"literal>, um <literal>LoadEvent</literal>, etc (consulte o DTD do XML de "
"configuração ou o pacote <literal>org.hibernate.event</literal> para a lista "
"completa dos tipos de eventos). Quando uma requisição é feita em um desses "
"métodos, a <literal>Session</literal> do hibernate gera um evento apropriado "
"e o envia para o listener de evento correspondente àquele tipo de evento. "
"Esses listeners implementam a mesma lógica que aqueles métodos, trazendo os "
"mesmos resultados. Entretanto, você é livre para implementar uma "
"customização de um desses listeners (isto é, o <literal>LoadEvent</literal> "
"é processado pela implementação registrada da interface "
"<literal>LoadEventListener</literal>), então sua implementação vai ficar "
"responsável por processar qualquer requisição <literal>load()</literal> "
"feita pela <literal>Session</literal>."
"Essentiellement toutes les méthodes de l'interface <literal>Session</"
"literal> sont corrélées à un événement. Vous avez un <literal>LoadEvent</"
"literal>, un <literal>FlushEvent</literal>, etc (consultez la DTD du fichier "
"de configuration XML ou le paquet <literal>org.hibernate.event</literal> "
"pour avoir la liste complète des types d'événement définis). Quand une "
"requête est faite à partir d'une de ces méthodes, la <literal>Session</"
"literal> Hibernate génère un événement approprié et le passe au listener "
"configuré pour ce type. Par défaut, ces listeners implémentent le même "
"traitement dans lequel ces méthodes aboutissent toujours. Cependant, vous "
"êtes libre d'implémenter une version personnalisée d'une de ces interfaces "
"de listener (c'est-à-dire, le <literal>LoadEvent</literal> est traité par "
"l'implémentation de l'interface <literal>LoadEventListener</literal> "
"déclarée), dans quel cas leur implémentation devrait être responsable du "
"traitement des requêtes <literal>load()</literal> faites par la "
"<literal>Session</literal>."
#. Tag: para
#: events.xml:84
@ -279,9 +277,9 @@ msgid ""
"shared between requests, and thus should not save any state as instance "
"variables."
msgstr ""
"Para todos os efeitos esses listeners deve ser considerados singletons; ou "
"seja, eles são compartilhados entre as requisições, e assim sendo, não devem "
"salvar nenhum estado das variáveis instanciadas."
"Les listeners devraient effectivement être considérés comme des singletons ; "
"dans le sens où ils sont partagés entre des requêtes, et donc ne devraient "
"pas sauvegarder des états de variables d'instance."
#. Tag: para
#: events.xml:89
@ -296,14 +294,14 @@ msgid ""
"configuration through the properties file is not supported). Here's an "
"example of a custom load event listener:"
msgstr ""
"Um listener personalizado deve implementar a interface referente ao evento a "
"ser processado e/ou deve estender a classes base equivalente (ou mesmo os "
"listeners padrões usados pelo Hibernate, eles não são declarados como finais "
"com esse objetivo). O listener personalizado pode ser registrado "
"programaticamente no objeto <literal>Configuration</literal>, ou "
"declarativamente no XML de configuração do Hibernate (o registro do listener "
"no propertie de configuração não é suportado). Aqui temos um exemplo de como "
"carregar um listener personalizado:"
"Un listener personnalisé devrait implémenter l'interface appropriée pour "
"l'événement qu'il veut traiter et/ou étendre une des classes de base (ou "
"même l'événement prêt à l'emploi utilisé par Hibernate comme ceux déclarés "
"non-finaux à cette intention). Les listeners personnalisés peuvent être soit "
"inscrits par programmation à travers l'objet <literal>Configuration</"
"literal>, ou spécifiés la configuration XML d'Hibernate (la configuration "
"déclarative à travers le fichier de propriétés n'est pas supportée). Voici "
"un exemple de listener personnalisé pour l'événement de chargement :"
#. Tag: programlisting
#: events.xml:99
@ -329,9 +327,8 @@ msgid ""
"You also need a configuration entry telling Hibernate to use the listener in "
"addition to the default listener:"
msgstr ""
"Você também precisa adicionar uma entrada no XML de configuração do "
"Hibernate para registrar declarativamente qual listener deve se utilizado em "
"conjunto com o listener padrão:"
"Vous avez aussi besoin d'une entrée de configuration disant à Hibernate "
"d'utiliser ce listener en plus du listener par défaut :"
#. Tag: programlisting
#: events.xml:106
@ -353,7 +350,7 @@ msgstr ""
#: events.xml:108
#, no-c-format
msgid "Instead, you may register it programmatically:"
msgstr "Ou, você pode registrar o listener programaticamente:"
msgstr "Vous pouvez aussi l'inscrire par programmation :"
#. Tag: programlisting
#: events.xml:112
@ -375,12 +372,12 @@ msgid ""
"capability to share listener instances between listener types you must use "
"the programmatic registration approach."
msgstr ""
"Listeners registrados declarativamente não compartilham da mesma instancia. "
"Se o mesmo nome da classe é utilizado em vários elementos e <literal>&lt;"
"listener/&gt;</literal>, cada um vai resultar em uma instancia separada "
"dessa classe. Se você tem a necessidade de compartilhar uma instancia de um "
"listener entre diversos tipos de listeners você deve registrar o listener "
"programaticamente."
"Les listeners inscrits déclarativement ne peuvent pas partager d'instances. "
"Si le même nom de classe est utilisée dans plusieurs éléments <literal>&lt;"
"listener/&gt;</literal>, chaque référence sera une instance distincte de "
"cette classe. Si vous avez besoin de la faculté de partager des instances de "
"listener entre plusieurs types de listener, vous devez utiliser l'approche "
"d'inscription par programmation."
#. Tag: para
#: events.xml:122
@ -392,16 +389,17 @@ msgid ""
"registration makes it easier to turn custom listeners on or off during "
"configuration."
msgstr ""
"Mas porque implementar uma interface e definir o tipo específico durante a "
"configuração? Bem, um listener pode implementar vários listeners de evento. "
"Com o tipo sendo definido durante o registro, fica fácil ligar ou desligar "
"listeners personalizados durante a configuração."
"Pourquoi implémenter une interface et définir le type spécifique durant la "
"configuration ? Une implémentation de listener pourrait implémenter "
"plusieurs interfaces de listener d'événements. Avoir en plus le type défini "
"durant l'inscription rend plus facile l'activation ou la désactivation "
"pendant la configuration."
#. Tag: title
#: events.xml:132
#, no-c-format
msgid "Hibernate declarative security"
msgstr "Hibernate declarative security"
msgstr "Sécurité déclarative d'Hibernate"
#. Tag: para
#: events.xml:133
@ -412,10 +410,11 @@ msgid ""
"permissioned via JACC, and authorized via JAAS. This is optional "
"functionality built on top of the event architecture."
msgstr ""
"Usually, declarative security in Hibernate applications is managed in a "
"session facade layer. Now, Hibernate3 allows certain actions to be "
"permissioned via JACC, and authorized via JAAS. This is optional "
"functionality built on top of the event architecture."
"Généralement, la sécurité déclarative dans les applications Hibernate est "
"gérée dans la couche de session. Maintenant, Hibernate3 permet à certaines "
"actions d'être approuvées via JACC, et autorisées via JAAS. Cette "
"fonctionnalité optionnelle est construite au dessus de l'architecture "
"d'événements."
#. Tag: para
#: events.xml:139
@ -424,8 +423,8 @@ msgid ""
"First, you must configure the appropriate event listeners, to enable the use "
"of JAAS authorization."
msgstr ""
"First, you must configure the appropriate event listeners, to enable the use "
"of JAAS authorization."
"D'abord, vous devez configurer les listeners d'événements appropriés pour "
"permettre l'utilisation d'autorisations JAAS."
#. Tag: programlisting
#: events.xml:144
@ -450,10 +449,10 @@ msgid ""
"\"...\"/&gt;&lt;/event&gt;</literal> when there is exactly one listener for "
"a particular event type."
msgstr ""
"Note that <literal>&lt;listener type=\"...\" class=\"...\"/&gt;</literal> is "
"just a shorthand for <literal>&lt;event type=\"...\"&gt;&lt;listener class="
"\"...\"/&gt;&lt;/event&gt;</literal> when there is exactly one listener for "
"a particular event type."
"Notez que <literal>&lt;listener type=\"...\" class=\"...\"/&gt;</literal> "
"est juste un raccourci pour <literal>&lt;event type=\"...\"&gt;&lt;listener "
"class=\"...\"/&gt;&lt;/event&gt;</literal> quand il y a exactement un "
"listener pour un type d'événement particulier."
#. Tag: para
#: events.xml:152
@ -462,8 +461,8 @@ msgid ""
"Next, still in <literal>hibernate.cfg.xml</literal>, bind the permissions to "
"roles:"
msgstr ""
"Next, still in <literal>hibernate.cfg.xml</literal>, bind the permissions to "
"roles:"
"Ensuite, toujours dans <literal>hibernate.cfg.xml</literal>, lier les "
"permissions aux rôles :"
#. Tag: programlisting
#: events.xml:156
@ -478,4 +477,4 @@ msgstr ""
#: events.xml:158
#, no-c-format
msgid "The role names are the roles understood by your JACC provider."
msgstr "The role names are the roles understood by your JACC provider."
msgstr "Les noms de rôle sont les rôles compris par votre fournisseur JAAC."

View File

@ -14,19 +14,19 @@ msgstr ""
#: example_mappings.xml:20
#, no-c-format
msgid "Example: Various Mappings"
msgstr "Exemplo: Vários Mapeamentos"
msgstr "Exemple : quelques mappings"
#. Tag: para
#: example_mappings.xml:22
#, no-c-format
msgid "This chapters shows off some more complex association mappings."
msgstr "Este capitulo mostra algums mapeamentos de associações mais complexos."
msgstr "Ce chapitre montre quelques mappings plus complexes."
#. Tag: title
#: example_mappings.xml:27
#, no-c-format
msgid "Employer/Employee"
msgstr "Employer/Employee"
msgstr "Employeur/Employé (Employer/Employee)"
#. Tag: para
#: example_mappings.xml:29
@ -38,18 +38,18 @@ msgid ""
"because there might be more than one period of employment for the same two "
"parties. Components are used to model monetary values and employee names."
msgstr ""
"O modelo de seguinte relacionamento entre <literal>Employer</literal> e "
"<literal>Employee</literal> utiliza uma entidade de classe atual "
"(<literal>Employment</literal>) para representar a associação. Isto é feito "
"porque pode-ser ter mais do que um período de trabalho para as duas partes "
"envolvidas. Outros Componentes são usados para modelar valores monetários e "
"os nomes do empregado."
"Le modèle suivant de relation entre <literal>Employer</literal> et "
"<literal>Employee</literal> utilise une vraie classe entité "
"(<literal>Employment</literal>) pour représenter l'association. On a fait "
"cela parce qu'il peut y avoir plus d'une période d'emploi pour les deux "
"mêmes parties. Des composants sont utilisés pour modéliser les valeurs "
"monétaires et les noms des employés."
#. Tag: para
#: example_mappings.xml:46
#, no-c-format
msgid "Heres a possible mapping document:"
msgstr "Abaixo o código de um possível mapeamento:"
msgstr "Voici un document de mapping possible :"
#. Tag: programlisting
#: example_mappings.xml:50
@ -113,7 +113,7 @@ msgstr ""
msgid ""
"And heres the table schema generated by <literal>SchemaExport</literal>."
msgstr ""
"E abaixo o esquema da tabela gerado pelo <literal>SchemaExport</literal>."
"Et voici le schéma des tables générées par <literal>SchemaExport</literal>."
#. Tag: programlisting
#: example_mappings.xml:56
@ -160,7 +160,7 @@ msgstr ""
#: example_mappings.xml:61
#, no-c-format
msgid "Author/Work"
msgstr "Author/Work"
msgstr "Auteur/Travail (Author/Work)"
#. Tag: para
#: example_mappings.xml:63
@ -174,22 +174,20 @@ msgid ""
"<literal>Person</literal> as one-to-one association. Another possibility "
"would be to have <literal>Author</literal> extend <literal>Person</literal>."
msgstr ""
"Considere o seguinte modelo de relacionamento entre <literal>Work</literal>, "
"<literal>Author</literal> e <literal>Person</literal>. Nós representamos o "
"relacionamento entre <literal>Work</literal> e <literal>Author</literal> "
"como uma associação muitos-para-muitos. Nós escolhemos representar o "
"relacionamento entre <literal>Author</literal> e <literal>Person</literal> "
"como uma associação um-para-um. Outra possibilidade seria ter "
"<literal>Author</literal> extendendo <literal>Person</literal>."
"Soit le modèle de la relation entre <literal>Work</literal>, "
"<literal>Author</literal> et <literal>Person</literal>. Nous représentons la "
"relation entre <literal>Work</literal> et <literal>Author</literal> comme "
"une association plusieurs-vers-plusieurs. Nous avons choisi de représenter "
"la relation entre <literal>Author</literal> et <literal>Person</literal> "
"comme une association un-vers-un. Une autre possibilité aurait été que "
"<literal>Author</literal> hérite de <literal>Person</literal>."
#. Tag: para
#: example_mappings.xml:81
#, no-c-format
msgid ""
"The following mapping document correctly represents these relationships:"
msgstr ""
"O mapeamento do código seguinte representa corretamente estes "
"relacionamentos:"
msgstr "Le mapping suivant représente exactement ces relations :"
#. Tag: programlisting
#: example_mappings.xml:85
@ -258,16 +256,11 @@ msgid ""
"association table linking authors to works. Heres the table schema, as "
"generated by <literal>SchemaExport</literal>."
msgstr ""
"There are four tables in this mapping. <literal>works</literal>, "
"<literal>authors</literal> and <literal>persons</literal> hold work, author "
"and person data respectively. <literal>author_work</literal> is an "
"association table linking authors to works. Heres the table schema, as "
"generated by <literal>SchemaExport</literal>. Existem quatro tabelas neste "
"mapeamento. <literal>works</literal>, <literal>authors</literal> e "
"<literal>persons</literal> recebem os dados de work, author e person, "
"respectivamente. <literal>author_work</literal> é uma tabela de associação "
"que liga authors à works. Abaixo o esquema das tabelas, gerados pelo "
"<literal>SchemaExport</literal>."
"Il y a quatre tables dans ce mapping. <literal>works</literal>, "
"<literal>authors</literal> et <literal>persons</literal> qui contiennent "
"respectivement les données de work, author et person. <literal>author_work</"
"literal> est une table d'association qui lie authors à works. Voici le "
"schéma de tables, généré par <literal>SchemaExport</literal>."
#. Tag: programlisting
#: example_mappings.xml:95
@ -314,7 +307,7 @@ msgstr ""
#: example_mappings.xml:100
#, no-c-format
msgid "Customer/Order/Product"
msgstr "Customer/Order/Product"
msgstr "Client/Commande/Produit (Customer/Order/Product)"
#. Tag: para
#: example_mappings.xml:102
@ -330,21 +323,22 @@ msgid ""
"<literal>Order</literal> and <literal>Product</literal>. In Hibernate, this "
"is called a composite element."
msgstr ""
"Agora considere um modelo de relacionamento entre <literal>Customer</"
"literal>, <literal>Order</literal> e <literal>LineItem</literal> e "
"<literal>Product</literal>. Existe uma associação um-para-muitos entre "
"<literal>Customer</literal> e <literal>Order</literal>, mas como devemos "
"representar <literal>Order</literal> / <literal>LineItem</literal> / "
"<literal>Product</literal>? Eu escolhi mapear LineItem como uma classe de "
"associação representando a associação muitos-para-muitos entre "
"<literal>Order</literal> and <literal>Product</literal>. No Hibernate, isto "
"é conhecido como um elemento composto."
"Imaginons maintenant le modèle de relation entre <literal>Customer</"
"literal>, <literal>Order</literal>, <literal>LineItem</literal> et "
"<literal>Product</literal>. Il y a une association un-vers-plusieurs entre "
"<literal>Customer</literal> et <literal>Order</literal>, mais comment "
"devrions nous représenter <literal>Order</literal> / <literal>LineItem</"
"literal> / <literal>Product</literal>? J'ai choisi de mapper "
"<literal>LineItem</literal> comme une classe d'association représentant "
"l'association plusieurs-vers-plusieurs entre <literal>Order</literal> et "
"<literal>Product</literal>. Dans Hibernate, on appelle cela un élément "
"composite."
#. Tag: para
#: example_mappings.xml:122
#, no-c-format
msgid "The mapping document:"
msgstr "O código do mapeamento:"
msgstr "Le document de mapping :"
#. Tag: programlisting
#: example_mappings.xml:126
@ -399,10 +393,9 @@ msgid ""
"literal> also acts as an association table linking orders with products."
msgstr ""
"<literal>customers</literal>, <literal>orders</literal>, "
"<literal>line_items</literal> e <literal>products</literal> recebem os dados "
"de customer, order, line_item e product, respectivamente. "
"<literal>line_items</literal> também atua como uma tabela de associação "
"ligando orders com products."
"<literal>line_items</literal> et <literal>products</literal> contiennent les "
"données de customer, order, order line item et product. <literal>line_items</"
"literal> est aussi la table d'association liant orders à products."
#. Tag: programlisting
#: example_mappings.xml:135
@ -448,7 +441,7 @@ msgstr ""
#: example_mappings.xml:140
#, no-c-format
msgid "Miscellaneous example mappings"
msgstr "Exemplos variados de mapeamento"
msgstr "Divers mappings d'exemple"
#. Tag: para
#: example_mappings.xml:142
@ -458,9 +451,9 @@ msgid ""
"many other useful example mappings there. Look in the <literal>test</"
"literal> folder of the Hibernate distribution."
msgstr ""
"Todos estes exemplos são retirados do conjunto de testes do Hibernate. Lá, "
"você encontrará vários outros exemplos úteis de mapeamentos. Verifique o "
"diretorio <literal>test</literal> da distribuição do Hibernate."
"Ces exemples sont tous pris de la suite de tests d'Hibernate. Vous en "
"trouverez beaucoup d'autres. Regardez dans le dossier <literal>test</"
"literal> de la distribution d'Hibernate."
#. Tag: para
#: example_mappings.xml:148
@ -472,7 +465,7 @@ msgstr "TODO: put words around this stuff"
#: example_mappings.xml:151
#, no-c-format
msgid "\"Typed\" one-to-one association"
msgstr "Associação um-para-um \"Tipadas\""
msgstr "\"Typed\" one-to-one association"
#. Tag: programlisting
#: example_mappings.xml:152
@ -510,7 +503,7 @@ msgstr ""
#: example_mappings.xml:156
#, no-c-format
msgid "Composite key example"
msgstr "Exemplo de chave composta"
msgstr "Exemple de clef composée"
#. Tag: programlisting
#: example_mappings.xml:157
@ -635,7 +628,7 @@ msgstr ""
#: example_mappings.xml:161
#, no-c-format
msgid "Many-to-many with shared composite key attribute"
msgstr "Mmuitos-para-muitos com atributo de chave composta compartilhada"
msgstr "Many-to-many avec une clef composée partagée"
#. Tag: programlisting
#: example_mappings.xml:162
@ -682,7 +675,7 @@ msgstr ""
#: example_mappings.xml:166
#, no-c-format
msgid "Content based discrimination"
msgstr "Conteúdo baseado em descriminação"
msgstr "Contenu basé sur une discrimination"
#. Tag: programlisting
#: example_mappings.xml:167
@ -744,7 +737,7 @@ msgstr ""
#: example_mappings.xml:171
#, no-c-format
msgid "Associations on alternate keys"
msgstr "Associações em chaves alternativas"
msgstr "Associations sur des clefs alternées"
#. Tag: programlisting
#: example_mappings.xml:172

View File

@ -14,7 +14,7 @@ msgstr ""
#: example_parentchild.xml:5
#, no-c-format
msgid "Example: Parent/Child"
msgstr "Example: Parent/Child"
msgstr "Exemple : Père/Fils"
#. Tag: para
#: example_parentchild.xml:7
@ -35,26 +35,27 @@ msgid ""
"model a parent / child relationship efficiently and elegantly. It's not at "
"all difficult!"
msgstr ""
"One of the very first things that new users try to do with Hibernate is to "
"model a parent / child type relationship. There are two different approaches "
"to this. For various reasons the most convenient approach, especially for "
"new users, is to model both <literal>Parent</literal> and <literal>Child</"
"literal> as entity classes with a <literal>&lt;one-to-many&gt;</literal> "
"association from <literal>Parent</literal> to <literal>Child</literal>. (The "
"alternative approach is to declare the <literal>Child</literal> as a "
"<literal>&lt;composite-element&gt;</literal>.) Now, it turns out that "
"default semantics of a one to many association (in Hibernate) are much less "
"close to the usual semantics of a parent / child relationship than those of "
"a composite element mapping. We will explain how to use a "
"<emphasis>bidirectional one to many association with cascades</emphasis> to "
"model a parent / child relationship efficiently and elegantly. It's not at "
"all difficult!"
"L'une des premières choses que les nouveaux utilisateurs essaient de faire "
"avec Hibernate est de modéliser une relation père/fils. Il y a deux "
"approches différentes pour cela. Pour un certain nombre de raisons, la "
"méthode la plus courante, en particulier pour les nouveaux utilisateurs, est "
"de modéliser les deux relations <literal>Père</literal> et <literal>Fils</"
"literal> comme des classes entités liées par une association <literal>&lt;"
"one-to-many&gt;</literal> du <literal>Père</literal> vers le <literal>Fils</"
"literal> (l'autre approche est de déclarer le <literal>Fils</literal> comme "
"un <literal>&lt;composite-element&gt;</literal>). Il est évident que le sens "
"de l'association un vers plusieurs (dans Hibernate) est bien moins proche du "
"sens habituel d'une relation père/fils que ne l'est celui d'un élément "
"cmposite. Nous allons vous expliquer comment utiliser une association "
"<emphasis>un vers plusieurs bidirectionnelle avec cascade</emphasis> afin de "
"modéliser efficacement et élégamment une relation père/fils, ce n'est "
"vraiment pas difficile !"
#. Tag: title
#: example_parentchild.xml:21
#, no-c-format
msgid "A note about collections"
msgstr "A note about collections"
msgstr "Une note à propos des collections"
#. Tag: para
#: example_parentchild.xml:23
@ -64,9 +65,10 @@ msgid ""
"entity; never of the contained entities. This is a crucial distinction! It "
"has the following consequences:"
msgstr ""
"Hibernate collections are considered to be a logical part of their owning "
"entity; never of the contained entities. This is a crucial distinction! It "
"has the following consequences:"
"Les collections Hibernate sont considérées comme étant une partie logique de "
"l'entité dans laquelle elles sont contenues ; jamais des entités qu'elle "
"contient. C'est une distinction crutiale ! Les conséquences sont les "
"suivantes :"
#. Tag: para
#: example_parentchild.xml:30
@ -75,8 +77,8 @@ msgid ""
"When we remove / add an object from / to a collection, the version number of "
"the collection owner is incremented."
msgstr ""
"When we remove / add an object from / to a collection, the version number of "
"the collection owner is incremented."
"Quand nous ajoutons / retirons un objet d'une collection, le numéro de "
"version du propriétaire de la collection est incrémenté."
#. Tag: para
#: example_parentchild.xml:36
@ -88,11 +90,11 @@ msgid ""
"value type instance to the collection will cause its state to be immediately "
"persistent."
msgstr ""
"If an object that was removed from a collection is an instance of a value "
"type (eg, a composite element), that object will cease to be persistent and "
"its state will be completely removed from the database. Likewise, adding a "
"value type instance to the collection will cause its state to be immediately "
"persistent."
"Si un objet qui a été enlevé d'une collection est une instance de type "
"valeur (ex : élément composite), cet objet cessera d'être persistant et son "
"état sera complètement effacé de la base de données. Par ailleurs, ajouter "
"une instance de type valeur dans une collection aura pour conséquence que "
"son état sera immédiatement persistant."
#. Tag: para
#: example_parentchild.xml:44
@ -105,12 +107,12 @@ msgid ""
"adding an entity to a collection does not cause that entity to become "
"persistent, by default."
msgstr ""
"On the other hand, if an entity is removed from a collection (a one-to-many "
"or many-to-many association), it will not be deleted, by default. This "
"behaviour is completely consistent - a change to the internal state of "
"another entity should not cause the associated entity to vanish! Likewise, "
"adding an entity to a collection does not cause that entity to become "
"persistent, by default."
"Si une entité est enlevée d'une collection (association un-vers-plusieurs ou "
"plusieurs-vers-plusieurs), par défaut, elle ne sera pas effacée. Ce "
"comportement est complètement logique - une modification de l'un des états "
"internes d'une entité ne doit pas causer la disparition de l'entité "
"associée ! De même, l'ajout d'une entité dans une collection n'engendre pas, "
"par défaut, la persistance de cette entité."
#. Tag: para
#: example_parentchild.xml:54
@ -122,17 +124,17 @@ msgid ""
"appropriate at all is the case of a parent / child relationship, where the "
"life of the child is bound to the life cycle of the parent."
msgstr ""
"Instead, the default behaviour is that adding an entity to a collection "
"merely creates a link between the two entities, while removing it removes "
"the link. This is very appropriate for all sorts of cases. Where it is not "
"appropriate at all is the case of a parent / child relationship, where the "
"life of the child is bound to the life cycle of the parent."
"Le comportement par défaut est donc que l'ajout d'une entité dans une "
"collection créé simplement le lien entre les deux entités, et qu'effacer une "
"entité supprime ce lien. C'est le comportement le plus approprié dans la "
"plupart des cas. Ce comportement n'est cependant pas approprié lorsque la "
"vie du fils est liée au cycle de vie du père."
#. Tag: title
#: example_parentchild.xml:64
#, no-c-format
msgid "Bidirectional one-to-many"
msgstr "Bidirectional one-to-many"
msgstr "un-vers-plusieurs bidirectionnel"
#. Tag: para
#: example_parentchild.xml:66
@ -141,8 +143,8 @@ msgid ""
"Suppose we start with a simple <literal>&lt;one-to-many&gt;</literal> "
"association from <literal>Parent</literal> to <literal>Child</literal>."
msgstr ""
"Suppose we start with a simple <literal>&lt;one-to-many&gt;</literal> "
"association from <literal>Parent</literal> to <literal>Child</literal>."
"Supposons que nous ayons une simple association <literal>&lt;one-to-many&gt;"
"</literal> de <literal>Parent</literal> vers <literal>Child</literal>."
#. Tag: programlisting
#: example_parentchild.xml:71
@ -158,7 +160,7 @@ msgstr ""
#: example_parentchild.xml:73
#, no-c-format
msgid "If we were to execute the following code"
msgstr "If we were to execute the following code"
msgstr "Si nous executions le code suivant"
#. Tag: programlisting
#: example_parentchild.xml:77
@ -175,7 +177,7 @@ msgstr ""
#: example_parentchild.xml:79
#, no-c-format
msgid "Hibernate would issue two SQL statements:"
msgstr "Hibernate would issue two SQL statements:"
msgstr "Hibernate exécuterait deux ordres SQL:"
#. Tag: para
#: example_parentchild.xml:85
@ -183,7 +185,8 @@ msgstr "Hibernate would issue two SQL statements:"
msgid ""
"an <literal>INSERT</literal> to create the record for <literal>c</literal>"
msgstr ""
"an <literal>INSERT</literal> to create the record for <literal>c</literal>"
"un <literal>INSERT</literal> pour créer l'enregistrement pour <literal>c</"
"literal>"
#. Tag: para
#: example_parentchild.xml:88
@ -192,7 +195,7 @@ msgid ""
"an <literal>UPDATE</literal> to create the link from <literal>p</literal> to "
"<literal>c</literal>"
msgstr ""
"an <literal>UPDATE</literal> to create the link from <literal>p</literal> to "
"un <literal>UPDATE</literal> pour créer le lien de <literal>p</literal> vers "
"<literal>c</literal>"
#. Tag: para
@ -204,10 +207,10 @@ msgid ""
"the nullability constraint violation by specifying <literal>not-null=\"true"
"\"</literal> in the collection mapping:"
msgstr ""
"This is not only inefficient, but also violates any <literal>NOT NULL</"
"literal> constraint on the <literal>parent_id</literal> column. We can fix "
"the nullability constraint violation by specifying <literal>not-null=\"true"
"\"</literal> in the collection mapping:"
"Ceci est non seuleument inefficace, mais viole aussi toute contrainte "
"<literal>NOT NULL</literal> sur la colonne <literal>parent_id</literal>. "
"Nous pouvons réparer la contrainte de nullité en spécifiant <literal>not-"
"null=\"true\"</literal> dans le mapping de la collection :"
#. Tag: programlisting
#: example_parentchild.xml:101
@ -223,7 +226,7 @@ msgstr ""
#: example_parentchild.xml:103
#, no-c-format
msgid "However, this is not the recommended solution."
msgstr "However, this is not the recommended solution."
msgstr "Cependant ce n'est pas la solution recommandée."
#. Tag: para
#: example_parentchild.xml:106
@ -235,11 +238,12 @@ msgid ""
"object and is therefore not created in the <literal>INSERT</literal>. So the "
"solution is to make the link part of the <literal>Child</literal> mapping."
msgstr ""
"The underlying cause of this behaviour is that the link (the foreign key "
"<literal>parent_id</literal>) from <literal>p</literal> to <literal>c</"
"literal> is not considered part of the state of the <literal>Child</literal> "
"object and is therefore not created in the <literal>INSERT</literal>. So the "
"solution is to make the link part of the <literal>Child</literal> mapping."
"La cause sous jacente à ce comportement est que le lien (la clé étrangère "
"<literal>parent_id</literal>) de <literal>p</literal> vers <literal>c</"
"literal> n'est pas considérée comme faisant partie de l'état de l'objet "
"<literal>Child</literal> et n'est donc pas créé par l'<literal>INSERT</"
"literal>. La solution est donc que ce lien fasse partie du mapping de "
"<literal>Child</literal>."
#. Tag: programlisting
#: example_parentchild.xml:113
@ -256,8 +260,8 @@ msgid ""
"(We also need to add the <literal>parent</literal> property to the "
"<literal>Child</literal> class.)"
msgstr ""
"(We also need to add the <literal>parent</literal> property to the "
"<literal>Child</literal> class.)"
"(Nous avons aussi besoin d'ajouter la propriété <literal>parent</literal> "
"dans la classe <literal>Child</literal>)."
#. Tag: para
#: example_parentchild.xml:119
@ -267,9 +271,9 @@ msgid ""
"link, we tell the collection not to update the link. We use the "
"<literal>inverse</literal> attribute."
msgstr ""
"Now that the <literal>Child</literal> entity is managing the state of the "
"link, we tell the collection not to update the link. We use the "
"<literal>inverse</literal> attribute."
"Maintenant que l'état du lien est géré par l'entité <literal>Child</"
"literal>, nous spécifions à la collection de ne pas mettre à jour le lien. "
"Nous utilisons l'attribut <literal>inverse</literal>."
#. Tag: programlisting
#: example_parentchild.xml:124
@ -285,7 +289,9 @@ msgstr ""
#: example_parentchild.xml:126
#, no-c-format
msgid "The following code would be used to add a new <literal>Child</literal>"
msgstr "The following code would be used to add a new <literal>Child</literal>"
msgstr ""
"Le code suivant serait utilisé pour ajouter un nouveau <literal>Child</"
"literal>"
#. Tag: programlisting
#: example_parentchild.xml:130
@ -303,7 +309,7 @@ msgstr ""
#: example_parentchild.xml:132
#, no-c-format
msgid "And now, only one SQL <literal>INSERT</literal> would be issued!"
msgstr "And now, only one SQL <literal>INSERT</literal> would be issued!"
msgstr "Maintenant, seul un <literal>INSERT</literal> SQL est nécessaire !"
#. Tag: para
#: example_parentchild.xml:136
@ -312,8 +318,8 @@ msgid ""
"To tighten things up a bit, we could create an <literal>addChild()</literal> "
"method of <literal>Parent</literal>."
msgstr ""
"To tighten things up a bit, we could create an <literal>addChild()</literal> "
"method of <literal>Parent</literal>."
"Pour alléger encore un peu les choses, nous devrions créer une méthode "
"<literal>addChild()</literal> dans <literal>Parent</literal>."
#. Tag: programlisting
#: example_parentchild.xml:141
@ -329,7 +335,7 @@ msgstr ""
#: example_parentchild.xml:143
#, no-c-format
msgid "Now, the code to add a <literal>Child</literal> looks like"
msgstr "Now, the code to add a <literal>Child</literal> looks like"
msgstr "Le code d'ajout d'un <literal>Child</literal> serait alors"
#. Tag: programlisting
#: example_parentchild.xml:147
@ -346,7 +352,7 @@ msgstr ""
#: example_parentchild.xml:152
#, no-c-format
msgid "Cascading life cycle"
msgstr "Cascading life cycle"
msgstr "Cycle de vie en cascade"
#. Tag: para
#: example_parentchild.xml:154
@ -355,8 +361,8 @@ msgid ""
"The explicit call to <literal>save()</literal> is still annoying. We will "
"address this by using cascades."
msgstr ""
"The explicit call to <literal>save()</literal> is still annoying. We will "
"address this by using cascades."
"L'appel explicite de <literal>save()</literal> est un peu fastidieux. Nous "
"pouvons simplifier cela en utilisant les cascades."
#. Tag: programlisting
#: example_parentchild.xml:159
@ -372,7 +378,7 @@ msgstr ""
#: example_parentchild.xml:161
#, no-c-format
msgid "This simplifies the code above to"
msgstr "This simplifies the code above to"
msgstr "Simplifie le code précédent en"
#. Tag: programlisting
#: example_parentchild.xml:165
@ -392,9 +398,9 @@ msgid ""
"deleting a <literal>Parent</literal>. The following removes <literal>p</"
"literal> and all its children from the database."
msgstr ""
"Similarly, we don't need to iterate over the children when saving or "
"deleting a <literal>Parent</literal>. The following removes <literal>p</"
"literal> and all its children from the database."
"De la même manière, nous n'avons pas à itérer sur les fils lorsque nous "
"sauvons ou effacons un <literal>Parent</literal>. Le code suivant efface "
"<literal>p</literal> et tous ses fils de la base de données."
#. Tag: programlisting
#: example_parentchild.xml:172
@ -409,7 +415,7 @@ msgstr ""
#: example_parentchild.xml:174
#, no-c-format
msgid "However, this code"
msgstr "However, this code"
msgstr "Par contre, ce code"
#. Tag: programlisting
#: example_parentchild.xml:178
@ -431,10 +437,11 @@ msgid ""
"constraint violation, in this case). You need to explicitly <literal>delete()"
"</literal> the <literal>Child</literal>."
msgstr ""
"will not remove <literal>c</literal> from the database; it will ony remove "
"the link to <literal>p</literal> (and cause a <literal>NOT NULL</literal> "
"constraint violation, in this case). You need to explicitly <literal>delete()"
"</literal> the <literal>Child</literal>."
"n'effacera pas <literal>c</literal> de la base de données, il enlèvera "
"seulement le lien vers <literal>p</literal> (et causera une violation de "
"contrainte <literal>NOT NULL</literal>, dans ce cas). Vous devez "
"explicitement utiliser <literal>delete()</literal> sur <literal>Child</"
"literal>."
#. Tag: programlisting
#: example_parentchild.xml:186
@ -456,10 +463,10 @@ msgid ""
"really do want it to be deleted. For this, we must use <literal>cascade="
"\"all-delete-orphan\"</literal>."
msgstr ""
"Now, in our case, a <literal>Child</literal> can't really exist without its "
"parent. So if we remove a <literal>Child</literal> from the collection, we "
"really do want it to be deleted. For this, we must use <literal>cascade="
"\"all-delete-orphan\"</literal>."
"Dans notre cas, un <literal>Child</literal> ne peut pas vraiment exister "
"sans son père. Si nous effacons un <literal>Child</literal> de la "
"collection, nous voulons vraiment qu'il soit effacé. Pour cela, nous devons "
"utiliser <literal>cascade=\"all-delete-orphan\"</literal>."
#. Tag: programlisting
#: example_parentchild.xml:194
@ -482,17 +489,18 @@ msgid ""
"cascade, you must add it to the collection. It is not enough to simply call "
"<literal>setParent()</literal>."
msgstr ""
"Note: even though the collection mapping specifies <literal>inverse=\"true"
"\"</literal>, cascades are still processed by iterating the collection "
"elements. So if you require that an object be saved, deleted or updated by "
"cascade, you must add it to the collection. It is not enough to simply call "
"<literal>setParent()</literal>."
"A noter : même si le mapping de la collection spécifie <literal>inverse="
"\"true\"</literal>, les cascades sont toujours assurées par l'itération sur "
"les éléments de la collection. Donc, si vous avez besoin qu'un objet soit "
"enregistré, effacé ou mis à jour par cascade, vous devez l'ajouter dans la "
"colleciton. Il ne suffit pas d'appeler explicitement <literal>setParent()</"
"literal>."
#. Tag: title
#: example_parentchild.xml:206
#, no-c-format
msgid "Cascades and <literal>unsaved-value</literal>"
msgstr "Cascades and <literal>unsaved-value</literal>"
msgstr "Cascades et <literal>unsaved-value</literal>"
#. Tag: para
#: example_parentchild.xml:208
@ -511,18 +519,20 @@ msgid ""
"\"/>.) <emphasis>In Hibernate3, it is no longer necessary to specify an "
"<literal>unsaved-value</literal> explicitly.</emphasis>"
msgstr ""
"Suppose we loaded up a <literal>Parent</literal> in one <literal>Session</"
"literal>, made some changes in a UI action and wish to persist these changes "
"in a new session by calling <literal>update()</literal>. The "
"<literal>Parent</literal> will contain a collection of childen and, since "
"cascading update is enabled, Hibernate needs to know which children are "
"newly instantiated and which represent existing rows in the database. Lets "
"assume that both <literal>Parent</literal> and <literal>Child</literal> have "
"genenerated identifier properties of type <literal>Long</literal>. Hibernate "
"will use the identifier and version/timestamp property value to determine "
"which of the children are new. (See <xref linkend=\"objectstate-saveorupdate"
"\"/>.) <emphasis>In Hibernate3, it is no longer necessary to specify an "
"<literal>unsaved-value</literal> explicitly.</emphasis>"
"Supposons que nous ayons chargé un <literal>Parent</literal> dans une "
"<literal>Session</literal>, que nous l'ayons ensuite modifié et que voulions "
"persiter ces modifications dans une nouvelle session en appelant "
"<literal>update()</literal>. Le <literal>Parent</literal> contiendra une "
"collection de fils et, puisque la cascade est activée, Hibernate a besoin de "
"savoir quels fils viennent d'être instanciés et quels fils proviennent de la "
"base de données. Supposons aussi que <literal>Parent</literal> et "
"<literal>Child</literal> ont tous deux des identifiants du type "
"<literal>Long</literal>. Hibernate utilisera la propriété de l'identifiant "
"et la propriété de la version/horodatage pour déterminer quels fils sont "
"nouveaux (vous pouvez aussi utiliser la propriété version ou timestamp, voir "
"<xref linkend=\"manipulatingdata-updating-detached\"/>). <emphasis>Dans "
"Hibernate3, il n'est plus nécessaire de spécifier une <literal>unsaved-"
"value</literal> explicitement.</emphasis>"
#. Tag: para
#: example_parentchild.xml:220
@ -531,8 +541,8 @@ msgid ""
"The following code will update <literal>parent</literal> and <literal>child</"
"literal> and insert <literal>newChild</literal>."
msgstr ""
"The following code will update <literal>parent</literal> and <literal>child</"
"literal> and insert <literal>newChild</literal>."
"Le code suivant mettra à jour <literal>parent</literal> et <literal>child</"
"literal> et insérera <literal>newChild</literal>."
#. Tag: programlisting
#: example_parentchild.xml:225
@ -559,14 +569,14 @@ msgid ""
"the second-level cache or, worst case, the database, to see if the row "
"exists."
msgstr ""
"Well, that's all very well for the case of a generated identifier, but what "
"about assigned identifiers and composite identifiers? This is more "
"difficult, since Hibernate can't use the identifier property to distinguish "
"between a newly instantiated object (with an identifier assigned by the "
"user) and an object loaded in a previous session. In this case, Hibernate "
"will either use the timestamp or version property, or will actually query "
"the second-level cache or, worst case, the database, to see if the row "
"exists."
"Ceci est très bien pour des identifiants générés, mais qu'en est-il des "
"identifiants assignés et des identifiants composés ? C'est plus difficile, "
"puisqu'Hibernate ne peut pas utiliser la propriété de l'identifiant pour "
"distinguer un objet nouvellement instancié (avec un identifiant assigné par "
"l'utilisateur) d'un objet chargé dans une session précédente. Dans ce cas, "
"Hibernate utilisera soit la propriété de version ou d'horodatage, soit "
"effectuera vraiment une requête au cache de second niveau, soit, dans le "
"pire des cas, à la base de données, pour voir si la ligne existe."
#. Tag: title
#: example_parentchild.xml:260
@ -582,9 +592,10 @@ msgid ""
"around. However, in practice, it all works out very nicely. Most Hibernate "
"applications use the parent / child pattern in many places."
msgstr ""
"There is quite a bit to digest here and it might look confusing first time "
"around. However, in practice, it all works out very nicely. Most Hibernate "
"applications use the parent / child pattern in many places."
"Il y a quelques principes à maîtriser dans ce chapitre et tout cela peut "
"paraître déroutant la première fois. Cependant, dans la pratique, tout "
"fonctionne parfaitement. La plupart des applications Hibernate utilisent le "
"pattern père / fils."
#. Tag: para
#: example_parentchild.xml:267
@ -597,9 +608,10 @@ msgid ""
"composite elements may not own collections, and they should not be the child "
"of any entity other than the unique parent."
msgstr ""
"We mentioned an alternative in the first paragraph. None of the above issues "
"exist in the case of <literal>&lt;composite-element&gt;</literal> mappings, "
"which have exactly the semantics of a parent / child relationship. "
"Unfortunately, there are two big limitations to composite element classes: "
"composite elements may not own collections, and they should not be the child "
"of any entity other than the unique parent."
"Nous avons évoqué une alternative dans le premier paragraphe. Aucun des "
"points traités précédemment n'existe dans le cas d'un mapping <literal>&lt;"
"composite-element&gt;</literal> qui possède exactement la sémantique d'une "
"relation père / fils. Malheureusement, il y a deux grandes limitations pour "
"les classes éléments composites : les éléments composites ne peuvent "
"contenir de collections, et ils ne peuvent être les fils d'entités autres "
"que l'unique parent."

View File

@ -14,13 +14,13 @@ msgstr ""
#: example_weblog.xml:5
#, no-c-format
msgid "Example: Weblog Application"
msgstr "Example: Weblog Application"
msgstr "Exemple : application Weblog"
#. Tag: title
#: example_weblog.xml:8
#, no-c-format
msgid "Persistent Classes"
msgstr "Persistent Classes"
msgstr "Classes persistantes"
#. Tag: para
#: example_weblog.xml:10
@ -30,9 +30,9 @@ msgid ""
"They are to be modelled as a standard parent/child relationship, but we will "
"use an ordered bag, instead of a set."
msgstr ""
"The persistent classes represent a weblog, and an item posted in a weblog. "
"They are to be modelled as a standard parent/child relationship, but we will "
"use an ordered bag, instead of a set."
"Les classes persistantes representent un weblog, et un article posté dans un "
"weblog. Il seront modélisés comme une relation père/fils standard, mais nous "
"allons utiliser un \"bag\" trié au lieu d'un set."
#. Tag: programlisting
#: example_weblog.xml:16
@ -121,13 +121,13 @@ msgstr ""
#: example_weblog.xml:23
#, no-c-format
msgid "Hibernate Mappings"
msgstr "Hibernate Mappings"
msgstr "Mappings Hibernate"
#. Tag: para
#: example_weblog.xml:25
#, no-c-format
msgid "The XML mappings should now be quite straightforward."
msgstr "The XML mappings should now be quite straightforward."
msgstr "Le mapping XML doit maintenant être relativement simple à vos yeux."
#. Tag: programlisting
#: example_weblog.xml:29
@ -227,7 +227,7 @@ msgstr ""
#: example_weblog.xml:36
#, no-c-format
msgid "Hibernate Code"
msgstr "Hibernate Code"
msgstr "Code Hibernate"
#. Tag: para
#: example_weblog.xml:38
@ -236,8 +236,8 @@ msgid ""
"The following class demonstrates some of the kinds of things we can do with "
"these classes, using Hibernate."
msgstr ""
"The following class demonstrates some of the kinds of things we can do with "
"these classes, using Hibernate."
"La classe suivante montre quelques utilisations que nous pouvons faire de "
"ces classes."
#. Tag: programlisting
#: example_weblog.xml:43

View File

@ -14,7 +14,7 @@ msgstr ""
#: filters.xml:5
#, no-c-format
msgid "Filtering data"
msgstr "Filtrando dados"
msgstr "Filtrer les données"
#. Tag: para
#: filters.xml:7
@ -25,16 +25,16 @@ msgid ""
"named, parameterized filter that may be enabled or disabled for a particular "
"Hibernate session."
msgstr ""
"O Hibernate3 provê um novo método inovador para manusear dados com regras de "
"\"visibilidade\". Um <emphasis>Filtro do Hibernate</emphasis> é um filtro "
"global, nomeado e parametrizado que pode se habilitado ou não dentro de um "
"Session do Hibernate."
"Hibernate3 fournit une nouvelle approche innovatrice pour gérer des données "
"avec des règles de \"visibilité\". Un <emphasis>filtre Hibernate</emphasis> "
"est un filtre global, nommé, paramétré qui peut être activé ou désactivé "
"pour une session Hibernate particulière."
#. Tag: title
#: filters.xml:14
#, no-c-format
msgid "Hibernate filters"
msgstr "Filtros do Hibernate"
msgstr "Filtres Hibernate"
#. Tag: para
#: filters.xml:16
@ -49,15 +49,15 @@ msgid ""
"their parameter values should be. Filters can be used like database views, "
"but parameterized inside the application."
msgstr ""
"O Hibernate tem a habilidade de pré definir os critérios do filtro e anexar "
"esses filtros no nível da classe e no nível da coleção. Um critério do "
"filtro é a habilidade de definir uma cláusula restritiva muito semelhante ao "
"atributo \"where\" disponível para a classe e várias coleções. A não ser que "
"essas condições de filtros podem ser parametrizadas. A aplicação pode, "
"então, fazer uma decisão em tempo de execução se os filtros definidos devem "
"estar habilitados e quais valores seus parâmetros devem ter. Os filtros "
"podem ser usados como Views de bancos de dados, mas com parametros internos "
"à aplicação."
"Hibernate3 ajoute la capacité de prédéfinir des critères de filtre et "
"d'attacher ces filtres à une classe ou à une collection. Un critère de "
"filtre est la faculté de définir une clause de restriction très similaire à "
"l'attribut \"where\" existant disponible sur une classe et divers éléments "
"d'une collection. Mis à part que ces conditions de filtre peuvent être "
"paramétrées. L'application peut alors prendre la décision à l'exécution si "
"des filtres donnés devraient être activés et quels devraient être leurs "
"paramètres. Des filtres peuvent être utilisés comme des vues de base de "
"données, mais paramétrées dans l'application."
#. Tag: para
#: filters.xml:26
@ -68,9 +68,9 @@ msgid ""
"filter-def/&gt;</literal> element within a <literal>&lt;hibernate-mapping/"
"&gt;</literal> element:"
msgstr ""
"Para usar esses filtros, eles primeiramente devem ser definidos e anexados "
"aos elementos do mapeamento apropriados. Para definir um filtro, use o "
"elemento <literal>&lt;filter-def/&gt;</literal> dentro do elemento "
"Afin d'utiliser des filtres, ils doivent d'abord être définis, puis attachés "
"aux éléments de mapping appropriés. Pour définir un filtre, utilisez "
"l'élément <literal>&lt;filter-def/&gt;</literal> dans un élément "
"<literal>&lt;hibernate-mapping/&gt;</literal> :"
#. Tag: programlisting
@ -86,7 +86,7 @@ msgstr ""
#: filters.xml:34
#, no-c-format
msgid "Then, this filter can be attached to a class:"
msgstr "Então esse filtro pode ser anexo à uma classe:"
msgstr "Puis, ce filtre peut être attaché à une classe :"
#. Tag: programlisting
#: filters.xml:38
@ -103,7 +103,7 @@ msgstr ""
#: filters.xml:40
#, no-c-format
msgid "or, to a collection:"
msgstr "ou em uma coleção:"
msgstr "ou à une collection :"
#. Tag: programlisting
#: filters.xml:44
@ -119,7 +119,7 @@ msgstr ""
#: filters.xml:46
#, no-c-format
msgid "or, even to both (or multiples of each) at the same time."
msgstr "ou mesmo para ambos (ou muitos de cada) ao mesmo tempo."
msgstr "ou même aux deux (ou à plusieurs de chaque) en même temps."
#. Tag: para
#: filters.xml:50
@ -134,13 +134,14 @@ msgid ""
"<literal>Filter</literal> interface. Using the simple filter defined above, "
"this would look like:"
msgstr ""
"Os métodos na <literal>Session</literal> são: <literal>enableFilter(String "
"filterName)</literal>, <literal>getEnabledFilter(String filterName)</"
"literal>, e <literal>disableFilter(String filterName)</literal>. Por padrão, "
"os filtros não são habilitados dentro de qualquer session; Eles devem ser "
"explicitamente habilitados usando o método <literal>Session.enabledFilter()</"
"literal>, que retorna uma instância da interface <literal>Filter</literal>. "
"Usando o filtro simples definido acima, o código se pareceria com o seguinte:"
"Les méthodes sur <literal>Session</literal> sont : <literal>enableFilter"
"(String filterName)</literal>, <literal>getEnabledFilter(String filterName)</"
"literal>, et <literal>disableFilter(String filterName)</literal>. Par "
"défaut, les filtres <emphasis>ne sont pas</emphasis> activés pour une "
"session donnée ; ils doivent être explicitement activés en appelant la "
"méthode <literal>Session.enabledFilter()</literal>, laquelle retourne une "
"instance de l'interface <literal>Filter</literal>. Utiliser le simple filtre "
"défini au-dessus ressemblerait à :"
#. Tag: programlisting
#: filters.xml:59
@ -157,8 +158,8 @@ msgid ""
"Note that methods on the org.hibernate.Filter interface do allow the method-"
"chaining common to much of Hibernate."
msgstr ""
"Veja que os métodos da interface org.hibernate.Filter permite o encadeamento "
"de funções, comum à maioria das funções do Hibernate."
"Notez que des méthodes sur l'interface org.hibernate.Filter autorisent le "
"chaînage de beaucoup de méthodes communes d'Hibernate."
#. Tag: para
#: filters.xml:65
@ -166,8 +167,8 @@ msgstr ""
msgid ""
"A full example, using temporal data with an effective record date pattern:"
msgstr ""
"Um exemplo completo, usando dados temporais com um padrão efetivo de "
"registro de datas:"
"Un exemple complet, utilisant des données temporelles avec une structure de "
"date d'enregistrement effectif :"
#. Tag: programlisting
#: filters.xml:69
@ -215,8 +216,9 @@ msgid ""
"records, simply enable the filter on the session prior to retrieving "
"employee data:"
msgstr ""
"Para garantir que você sempre tenha registro efetivos, simplesmente habilite "
"o filtro na session antes de recuperar os dados dos empregados:"
"Puis, afin de s'assurer que vous pouvez toujours récupérer les "
"enregistrements actuellement effectifs, activez simplement le filtre sur la "
"session avant de récupérer des données des employés :"
#. Tag: programlisting
#: filters.xml:76
@ -241,9 +243,10 @@ msgid ""
"return only currently active employees who have a salary greater than a "
"million dollars."
msgstr ""
"No HQL acima, mesmo que mencionamos apenas uma restrição de salário nos "
"resultados, por causa do filtro habilitado, a consulta retornará apenas os "
"funcionários ativos cujo salário é maior que um milhão de dólares."
"Dans le HQL ci-dessus, bien que nous ayons seulement mentionné une "
"contrainte de salaire sur les resultats, à cause du filtre activé, la "
"requête retournera seulement les employés actuellement actifs qui ont un "
"salaire supérieur à un million de dollars."
#. Tag: para
#: filters.xml:84
@ -254,10 +257,11 @@ msgid ""
"safest to set this up for left outer joining; in general, place the "
"parameter first followed by the column name(s) after the operator."
msgstr ""
"Nota: se você planeja usar filtros com outer join (por HQL ou por load "
"fetching) seja cuidadoso na direção da expressão de condição. É mais seguro "
"configura-lo com para um left outer join; geralmente, coloque o parâmetro "
"primeiro seguido pelo nome da coluna após o operador."
"A noter : si vous prévoyez d'utiliser des filtres avec des jointures "
"externes (soit à travers HQL, soit par le chargement) faites attention à la "
"direction de l'expression de condition. Il est plus sûr de la positionner "
"pour les jointures externes à gauche ; en général, placez le paramètre "
"d'abord, suivi du(des) nom(s) de colonne après l'opérateur."
#. Tag: para
#: filters.xml:91

View File

@ -14,26 +14,25 @@ msgstr ""
#: inheritance_mapping.xml:5
#, no-c-format
msgid "Inheritance Mapping"
msgstr "Mapeamento de Herança"
msgstr "Mapping d'héritage de classe"
#. Tag: title
#: inheritance_mapping.xml:8
#, no-c-format
msgid "The Three Strategies"
msgstr "As três estratégias"
msgstr "Les trois stratégies"
#. Tag: para
#: inheritance_mapping.xml:10
#, no-c-format
msgid "Hibernate supports the three basic inheritance mapping strategies:"
msgstr ""
"O Hibernate suporta as três estratégias básicas de mapeamento de herança:"
msgstr "Hibernate supporte les trois stratégies d'héritage de base :"
#. Tag: para
#: inheritance_mapping.xml:16
#, no-c-format
msgid "table per class hierarchy"
msgstr "tabela por hierarquia de classes"
msgstr "une table par hiérarchie de classe (table per class hierarchy)"
#. Tag: para
#: inheritance_mapping.xml:21
@ -41,15 +40,15 @@ msgstr "tabela por hierarquia de classes"
msgid "<para>table per subclass</para>"
msgstr ""
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"tabela por subclasse\n"
"une table par classe fille (table per subclass)\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"table per subclass"
"une table par classe fille"
#. Tag: para
#: inheritance_mapping.xml:26
#, no-c-format
msgid "table per concrete class"
msgstr "tabela por classe concreta"
msgstr "une table par classe concrète (table per concrete class)"
#. Tag: para
#: inheritance_mapping.xml:32
@ -58,14 +57,14 @@ msgid ""
"In addition, Hibernate supports a fourth, slightly different kind of "
"polymorphism:"
msgstr ""
"Adicionalmente, o Hibernate suporta uma quarta, um tipo levemente diferente "
"de polimorfismo:"
"Hibernate supporte en plus une quatrièmestratégie, légèrement différente, "
"qui supporte le polymorphisme :"
#. Tag: para
#: inheritance_mapping.xml:39
#, no-c-format
msgid "implicit polymorphism"
msgstr "polimorfismo implícito"
msgstr "le polymorphisme implicite"
#. Tag: para
#: inheritance_mapping.xml:45
@ -82,17 +81,17 @@ msgid ""
"combining the <literal>&lt;subclass&gt;</literal> and <literal>&lt;join&gt;</"
"literal> elements (see below)."
msgstr ""
"É possível usar diferentes estratégias de mapeamento para diferentes "
"ramificações da mesma hierarquia de herança, e então fazer uso do "
"polimorfismo implícito para alcançar polimorfismo através da hierarquia "
"completa. De qualquer forma, O Hibernate não suporta a mistura de "
"mapeamentos <literal>&lt;subclass&gt;</literal>, and <literal>&lt;joined-"
"subclass&gt;</literal> e <literal>&lt;union-subclass&gt;</literal> dentro do "
"mesmo elemento raiz <literal>&lt;class&gt;</literal>. É possível usar junto "
"às estratégias tabela por hierarquia e a tabela por subclasse, abaixo do "
"mesmo elemento <literal>&lt;class&gt;</literal>, combinando os elementos "
"<literal>&lt;subclass&gt;</literal> e <literal>&lt;join&gt;</literal> (veja "
"abaixo)."
"Il est possible d'utiliser différentes stratégies de mapping pour "
"différentes branches d'une même hiérarchie d'héritage, et alors d'employer "
"le polymorphisme implicite pour réaliser le polymorphisme à travers toute la "
"hiérarchie. Pourtant, Hibernate ne supporte pas de mélanger des mappings "
"<literal>&lt;subclass&gt;</literal> et <literal>&lt;joined-subclass&gt;</"
"literal> et <literal>&lt;union-subclass&gt;</literal> pour le même élément "
"<literal>&lt;class&gt;</literal> racine. Il est possible de mélanger "
"ensemble les stratégies d'une table par hiérarchie et d'une table par sous-"
"classe, pour le même élément <literal>&lt;class&gt;</literal>, en combinant "
"les éléments <literal>&lt;subclass&gt;</literal> et <literal>&lt;join&gt;</"
"literal> (voir dessous)."
#. Tag: para
#: inheritance_mapping.xml:59
@ -109,18 +108,17 @@ msgid ""
"when using the extends keyword. The ordering inside a single mapping file "
"still needs to be defined as superclasses before subclasses."
msgstr ""
"É possível definir mapeamentos <literal>subclass</literal>, <literal>union-"
"subclass</literal>, e <literal>joined-subclass</literal> em documentos de "
"mapeamento separados, diretamente abaixo de <literal>hibernate-mapping</"
"literal>. Isso permite a você estender uma hierarquia de classes apenas "
"adicionando um novo arquivo de mapeamento. Você deve especificar um atributo "
"<literal>extends</literal> no mapeamento da subclasse, nomeando uma "
"superclasse previamente mapeada. Nota: Anteriormente esta característica "
"fazia o ordenamento dos documentos de mapeamento importantes. Desde o "
"Hibernate3, o ordenamento dos arquivos de mapeamento não importa quando "
"usamos a palavra chave extends. O ordenamento dentro de um arquivo de "
"mapeamento simples ainda necessita ser definido como superclasse antes de "
"subclasse."
"Il est possible de définir des mappings de <literal>subclass</literal>, "
"<literal>union-subclass</literal>, et <literal>joined-subclass</literal> "
"dans des documents de mapping séparés, directement sous <literal>hibernate-"
"mapping</literal>. Ceci vous permet d'étendre une hiérarchie de classe juste "
"en ajoutant un nouveau fichier de mapping. Vous devez spécifier un attribut "
"<literal>extends</literal> dans le mapping de la sous-classe, en nommant une "
"super-classe précédemment mappée. Note : précédemment cette foncionnalité "
"rendait l'ordre des documents de mapping important. Depuis Hibernate3, "
"l'ordre des fichier de mapping n'importe plus lors de l'utilisation du mot-"
"clef \"extends\". L'ordre à l'intérieur d'un simple fichier de mapping "
"impose encore de définir les classes mères avant les classes filles."
#. Tag: programlisting
#: inheritance_mapping.xml:70
@ -139,7 +137,7 @@ msgstr ""
#: inheritance_mapping.xml:74
#, no-c-format
msgid "Table per class hierarchy"
msgstr "Tabela por hierarquia de classes"
msgstr "Une table par hiérarchie de classe"
#. Tag: para
#: inheritance_mapping.xml:76
@ -150,10 +148,10 @@ msgid ""
"<literal>ChequePayment</literal>. The table per hierarchy mapping would look "
"like:"
msgstr ""
"Suponha que tenhamos uma interface <literal>Payment</literal>, com sua "
"implementação <literal>CreditCardPayment</literal>, <literal>CashPayment</"
"literal>, <literal>ChequePayment</literal>. O mapeamento da tabela por "
"hierarquia seria parecido com:"
"Supposons que nous ayons une interface <literal>Payment</literal>, "
"implémentée par <literal>CreditCardPayment</literal>, <literal>CashPayment</"
"literal>, <literal>ChequePayment</literal>. La stratégie une table par "
"hiérarchie serait :"
#. Tag: programlisting
#: inheritance_mapping.xml:83
@ -187,21 +185,22 @@ msgid ""
"strategy: columns declared by the subclasses, such as <literal>CCTYPE</"
"literal>, may not have <literal>NOT NULL</literal> constraints."
msgstr ""
"Exactly one table is required. There is one big limitation of this mapping "
"strategy: columns declared by the subclasses, such as <literal>CCTYPE</"
"literal>, may not have <literal>NOT NULL</literal> constraints."
"Une seule table est requise. Une grande limitation de cette stratégie est "
"que les colonnes déclarées par les classes filles, telles que "
"<literal>CCTYPE</literal>, ne peuvent avoir de contrainte <literal>NOT NULL</"
"literal>."
#. Tag: title
#: inheritance_mapping.xml:94
#, no-c-format
msgid "Table per subclass"
msgstr "Tabela por subclasse"
msgstr "Une table par classe fille"
#. Tag: para
#: inheritance_mapping.xml:96
#, no-c-format
msgid "A table per subclass mapping would look like:"
msgstr "Um mapeamento de tabela por subclasse seria parecido com:"
msgstr "La stratégie une table par classe fille serait :"
#. Tag: programlisting
#: inheritance_mapping.xml:100
@ -237,15 +236,15 @@ msgid ""
"associations to the superclass table (so the relational model is actually a "
"one-to-one association)."
msgstr ""
"Quatro tabelas são necessárias. As três tabelas subclasses possuem "
"associação de chave primária para a tabela de superclasse (então o modelo "
"relacional é atualmente uma associação de um-para-um)."
"Quatre tables sont requises. Les trois tables des classes filles ont une clé "
"primaire associée à la table classe mère (le modèle relationnel est une "
"association un-vers-un)."
#. Tag: title
#: inheritance_mapping.xml:111
#, no-c-format
msgid "Table per subclass, using a discriminator"
msgstr "Tabela por subclasse, usando um discriminador"
msgstr "Une table par classe fille, en utilisant un discriminant"
#. Tag: para
#: inheritance_mapping.xml:113
@ -260,15 +259,16 @@ msgid ""
"subclass strategy, you may combine the use of <literal>&lt;subclass&gt;</"
"literal> and <literal>&lt;join&gt;</literal>, as follow:"
msgstr ""
"Note que a implementação de tabela por subclasse do Hibernate não necessita "
"de coluna de discriminador. Outro mapeador objeto/relacional usa uma "
"implementação diferente de tabela por subclasse, que necessita uma coluna "
"com o tipo discriminador na tabela da superclasse. A abordagem escolhida "
"pelo Hibernate é muito mais difícil de implementar, porém de forma "
"argumentável mais correto de um ponto de vista relacional. Se você deseja "
"utilizar uma coluna discriminadora com a estratégia tabela por subclasse, "
"você pode combinar o uso de <literal>&lt;subclass&gt;</literal> e "
"<literal>&lt;join&gt;</literal>, dessa maneira:"
"Notez que l'implémentation Hibernate de la stratégie un table par classe "
"fille ne nécessite pas de colonne discriminante dans la table classe mère. "
"D'autres implémentations de mappers Objet/Relationnel utilisent une autre "
"implémentation de la stratégie une table par classe fille qui nécessite une "
"colonne de type discriminant dans la table de la classe mère. L'approche "
"prise par Hibernate est plus difficile à implémenter mais plus correcte "
"d'une point de vue relationnel. Si vous aimeriez utiliser une colonne "
"discriminante avec la stratégie d'une table par classe fille, vous pourriez "
"combiner l'utilisation de <literal>&lt;subclass&gt;</literal> et "
"<literal>&lt;join&gt;</literal>, comme suit :"
#. Tag: programlisting
#: inheritance_mapping.xml:125
@ -311,17 +311,17 @@ msgid ""
"not to fetch the <literal>ChequePayment</literal> subclass data using an "
"outer join when querying the superclass."
msgstr ""
"The optional <literal>fetch=\"select\"</literal> declaration tells Hibernate "
"not to fetch the <literal>ChequePayment</literal> subclass data using an "
"outer join when querying the superclass. A declaração opcional "
"fetch=”select” diz ao Hibernate para não buscar os dados da subclasse "
"ChequePayment, quando usar um outer join pesquisando pela superclasse."
"La déclaration optionnelle <literal>fetch=\"select\"</literal> indique à "
"Hibernate de ne pas récupérer les données de la classe fille "
"<literal>ChequePayment</literal> par une jointure externe lors des requêtes "
"sur la classe mère."
#. Tag: title
#: inheritance_mapping.xml:136
#, no-c-format
msgid "Mixing table per class hierarchy with table per subclass"
msgstr ". Misturando tabela por hierarquia de classes com tabela por subclasse"
msgstr ""
"Mélange d'une table par hiérarchie de classe avec une table par classe fille"
#. Tag: para
#: inheritance_mapping.xml:138
@ -330,8 +330,8 @@ msgid ""
"You may even mix the table per hierarchy and table per subclass strategies "
"using this approach:"
msgstr ""
"Você pode até mesmo misturar a estratégia de tabela por hierarquia e tabela "
"por subclasse usando esta abordagem:"
"Vous pouvez même mélanger les stratégies d'une table par hiérarchie de "
"classe et d'une table par classe fille en utilisant cette approche :"
#. Tag: programlisting
#: inheritance_mapping.xml:143
@ -367,9 +367,9 @@ msgid ""
"<literal>Payment</literal> class is mapped using <literal>&lt;many-to-one&gt;"
"</literal>."
msgstr ""
"Para qualquer uma dessas estratégias de mapeamento, uma associação "
"polimórfica para a classe raiz <literal>Payment</literal> deve ser mapeada "
"usando <literal>&lt;many-to-one&gt;</literal>."
"Pour importe laquelle de ces stratégies, une association polymorphique vers "
"la classe racine <literal>Payment</literal> est mappée en utilisant "
"<literal>&lt;many-to-one&gt;</literal>."
#. Tag: programlisting
#: inheritance_mapping.xml:151
@ -383,7 +383,7 @@ msgstr ""
#: inheritance_mapping.xml:156
#, no-c-format
msgid "Table per concrete class"
msgstr "Tabela por classe concreta"
msgstr "Une table par classe concrète"
#. Tag: para
#: inheritance_mapping.xml:158
@ -392,9 +392,9 @@ msgid ""
"There are two ways we could go about mapping the table per concrete class "
"strategy. The first is to use <literal>&lt;union-subclass&gt;</literal>."
msgstr ""
"Existem duas formas que poderíamos usar a respeito da estratégia de "
"mapeamento de tabela por classe concreta. A primeira é usar <literal>&lt;"
"union-subclass&gt;</literal>.."
"Il y a deux manières d'utiliser la stratégie d'une table par classe "
"concrète. La première est d'employer <literal>&lt;union-subclass&gt;</"
"literal>."
#. Tag: programlisting
#: inheritance_mapping.xml:163
@ -426,8 +426,9 @@ msgid ""
"Three tables are involved for the subclasses. Each table defines columns for "
"all properties of the class, including inherited properties."
msgstr ""
"Três tabelas estão envolvidas para as subclasses. Cada tabela define colunas "
"para todas as propriedades da classe, incluindo propriedades herdadas."
"Trois tables sont nécessaires pour les classes filles. Chaque table définit "
"des colonnes pour toutes les propriétés de la classe, incluant les "
"propriétés héritéés."
#. Tag: para
#: inheritance_mapping.xml:170
@ -439,12 +440,13 @@ msgid ""
"strategy is not allowed in union subclass inheritance, indeed the primary "
"key seed has to be shared accross all unioned subclasses of a hierarchy."
msgstr ""
"A limitação dessa abordagem é que se uma propriedade é mapeada na "
"superclasse, o nome da coluna deve ser o mesmo em todas as tabelas das "
"subclasses. (Nós devemos melhorar isto em um futuro release do Hibernate). A "
"estratégia do gerador de identidade não é permitida em união de subclasses"
"(union-subclass) herdadas, na verdade a fonte de chave primária deve ser "
"compartilhada através de todas subclasses unidas da hierarquia."
"La limitation de cette approche est que si une propriété est mappée sur la "
"classe mère, le nom de la colonne doit être le même pour toutes les classes "
"filles. (Nous pourrions être plus souple dans une future version "
"d'Hibernate). La stratégie du générateur d'identifiant n'est pas permise "
"dans l'héritage de classes filles par union, en effet la valeur (NdT : seed) "
"de la clef primaire doit être partagée par toutes les classes filles \"union"
"\" d'une hiérarchie."
#. Tag: para
#: inheritance_mapping.xml:179
@ -455,22 +457,22 @@ msgid ""
"<literal>PAYMENT</literal> in the example above) is needed to hold instances "
"of the superclass."
msgstr ""
"Se sua superclasse é abstrata, mapeie ela com <literal>abstract=\"true\"</"
"literal>. Claro, que se ela não for abstrata, uma tabela (padrão para "
"<literal>PAYMENT</literal> no exemplo acima) adicional é necessária para "
"segurar as instâncias da superclasse."
"Si votre classe mère est abstraite, mappez la avec <literal>abstract=\"true"
"\"</literal>. Bien sûr, si elle n'est pas abstraite, une table "
"supplémentaire (par défaut, <literal>PAYMENT</literal> dans l'exemple ci-"
"dessus) est requise pour contenir des instances de la classe mère."
#. Tag: title
#: inheritance_mapping.xml:189
#, no-c-format
msgid "Table per concrete class, using implicit polymorphism"
msgstr "Tabela por classe concreta, usando polimorfismo implícito"
msgstr "Une table par classe concrète, en utilisant le polymorphisme implicite"
#. Tag: para
#: inheritance_mapping.xml:191
#, no-c-format
msgid "An alternative approach is to make use of implicit polymorphism:"
msgstr "Uma abordagem alternativa é fazer uso de polimorfismo implícito:"
msgstr "Une approche alternative est l'emploi du polymorphisme implicite :"
#. Tag: programlisting
#: inheritance_mapping.xml:195
@ -512,13 +514,13 @@ msgid ""
"\"allproperties.xml\"&gt; ]</literal> in the <literal>DOCTYPE</literal> "
"declartion and <literal>&amp;allproperties;</literal> in the mapping)."
msgstr ""
"Veja que em nenhum lugar mencionamos a interface <literal>Payment</literal> "
"explicitamente. Também preste atenção que propriedades de <literal>Payment</"
"literal> são mapeadas em cada uma das subclasses. Se você quer evitar "
"duplicação, considere usar entidades de XML (ex. (e.g. <literal>[ &lt;!"
"ENTITY allproperties SYSTEM \"allproperties.xml\"&gt; ]</literal> na "
"declaração do <literal>DOCTYPE</literal> e <literal>&amp;allproperties;</"
"literal> no mapeamento)."
"Notez que nulle part nous ne mentionnons l'interface <literal>Payment</"
"literal> explicitement. Notez aussi que des propriétés de <literal>Payment</"
"literal> sont mappées dans chaque classe fille. Si vous voulez éviter des "
"duplications, considérez l'utilisation des entités XML (cf. <literal>[ &lt;!"
"ENTITY allproperties SYSTEM \"allproperties.xml\"&gt; ]</literal> dans la "
"déclaration du <literal>DOCTYPE</literal> et <literal>&amp;allproperties;</"
"literal> dans le mapping)."
#. Tag: para
#: inheritance_mapping.xml:207
@ -527,8 +529,9 @@ msgid ""
"The disadvantage of this approach is that Hibernate does not generate SQL "
"<literal>UNION</literal>s when performing polymorphic queries."
msgstr ""
"A desvantagem dessa abordagem é que o Hibernate não gera <literal>UNION</"
"literal>s SQL quando executa pesquisas polimórficas."
"L'inconvénient de cette approche est qu'Hibernate ne génère pas "
"d'<literal>UNION</literal>s SQL lors de l'exécution des requêtes "
"polymorphiques."
#. Tag: para
#: inheritance_mapping.xml:212
@ -537,8 +540,9 @@ msgid ""
"For this mapping strategy, a polymorphic association to <literal>Payment</"
"literal> is usually mapped using <literal>&lt;any&gt;</literal>."
msgstr ""
"Para essa estratégia, uma associação polimórfica para <literal>Payment</"
"literal> geralmente é mapeada usando <literal>&lt;any&gt;</literal>."
"Pour cette stratégie de mapping, une association polymorphique pour "
"<literal>Payment</literal> est habituellement mappée en utilisant "
"<literal>&lt;any&gt;</literal>."
#. Tag: programlisting
#: inheritance_mapping.xml:217
@ -557,7 +561,7 @@ msgstr ""
#: inheritance_mapping.xml:222
#, no-c-format
msgid "Mixing implicit polymorphism with other inheritance mappings"
msgstr "Misturando polimorfismo implícito com outros mapeamentos de herança"
msgstr "Mélange du polymorphisme implicite avec d'autres mappings d'héritage"
#. Tag: para
#: inheritance_mapping.xml:224
@ -570,12 +574,12 @@ msgid ""
"you can still use polymorphic queries against the <literal>Payment</literal> "
"interface.)"
msgstr ""
"Ainda existe uma coisa para ser observada com respeito a este mapeamento. "
"Desde que as subclasses sejam mapeadas em seu próprio elemento <literal>&lt;"
"class&gt;</literal> (e desde que <literal>Payment</literal> seja apenas uma "
"interface), cada uma das subclasses pode ser facilmente parte de uma outra "
"hierarquia de herança! (E você ainda pode usar pesquisas polimórficas em "
"cima da interface <literal>Payment</literal>.)"
"Il y a une chose supplémentaire à noter à propos de ce mapping. Puisque les "
"classes filles sont chacune mappées avec leur propre élément <literal>&lt;"
"class&gt;</literal> (et puisque <literal>Payment</literal> est juste une "
"interface), chaque classe fille pourrait facilement faire partie d'une autre "
"hiérarchie d'héritage ! (Et vous pouvez encore faire des requêtes "
"polymorphiques pour l'interface <literal>Payment</literal>)."
#. Tag: programlisting
#: inheritance_mapping.xml:232
@ -622,19 +626,20 @@ msgid ""
"literal> and <literal>ChequePayment</literal> but not instances of "
"<literal>NonelectronicTransaction</literal>."
msgstr ""
"Mais uma vez, nós não mencionamos <literal>Payment</literal> explicitamente. "
"Se nós executarmos uma pesquisa em cima da interface <literal>Payment</"
"literal> por exemplo, <literal>from Payment</literal> o Hibernate "
"retorna automaticamente instâncias de <literal>CreditCardPayment</literal> "
"(e suas subclasses, desde que elas também implementem <literal>Payment</"
"literal>), <literal>CashPayment</literal> e <literal>ChequePayment</literal> "
"mas não as instâncias de <literal>NonelectronicTransaction</literal>."
"Encore une fois, nous ne mentionnons pas explicitement <literal>Payment</"
"literal>. Si nous exécutons une requête sur l'interface <literal>Payment</"
"literal> - par exemple, <literal>from Payment</literal> - Hibernate "
"retournera automatiquement les instances de <literal>CreditCardPayment</"
"literal> (et ses classes filles puisqu'elles implémentent aussi "
"<literal>Payment</literal>), <literal>CashPayment</literal> et "
"<literal>ChequePayment</literal> mais pas les instances de "
"<literal>NonelectronicTransaction</literal>."
#. Tag: title
#: inheritance_mapping.xml:249
#, no-c-format
msgid "Limitations"
msgstr "Limitações"
msgstr "Limitations"
#. Tag: para
#: inheritance_mapping.xml:251
@ -645,10 +650,10 @@ msgid ""
"restrictive limitations to <literal>&lt;union-subclass&gt;</literal> "
"mappings."
msgstr ""
"Existem certas limitações para a abordagem do \"polimorfismo implícito\" "
"comparada com a estratégia de mapeamento da tabela por classe concreta. "
"Existe uma limitação um tanto menos restritiva para mapeamentos <literal>&lt;"
"union-subclass&gt;</literal>."
"Il y a certaines limitations à l'approche du \"polymorphisme implicite\" "
"pour la stratégie de mapping d'une table par classe concrète. Il y a plutôt "
"moins de limitations restrictives aux mappings <literal>&lt;union-"
"subclass&gt;</literal>."
#. Tag: para
#: inheritance_mapping.xml:258
@ -657,44 +662,44 @@ msgid ""
"The following table shows the limitations of table per concrete-class "
"mappings, and of implicit polymorphism, in Hibernate."
msgstr ""
"A tabela seguinte demonstra as limitações do mapeamento de tabela por classe "
"concreta e do polimorfismo implícito no Hibernate."
"La table suivante montre les limitations des mappings d'une table par classe "
"concrète, et du polymorphisme implicite, dans Hibernate."
#. Tag: title
#: inheritance_mapping.xml:264
#, no-c-format
msgid "Features of inheritance mappings"
msgstr "Features of inheritance mappings"
msgstr "Caractéristiques du mapping d'héritage"
#. Tag: entry
#: inheritance_mapping.xml:276
#, no-c-format
msgid "Inheritance strategy"
msgstr "Estratégia de Herança"
msgstr "Stratégie d'héritage"
#. Tag: entry
#: inheritance_mapping.xml:277
#, no-c-format
msgid "Polymorphic many-to-one"
msgstr "muitos-para-um Polimórfico"
msgstr "many-to-one polymorphique"
#. Tag: entry
#: inheritance_mapping.xml:278
#, no-c-format
msgid "Polymorphic one-to-one"
msgstr "um-para-um Polimórfico"
msgstr "one-to-one polymorphique"
#. Tag: entry
#: inheritance_mapping.xml:279
#, no-c-format
msgid "Polymorphic one-to-many"
msgstr "um-para-muitos Polimórfico"
msgstr "one-to-many polymorphique"
#. Tag: entry
#: inheritance_mapping.xml:280
#, no-c-format
msgid "Polymorphic many-to-many"
msgstr "muitos-para-muitos Polimórfico"
msgstr "many-to-many polymorphique"
#. Tag: entry
#: inheritance_mapping.xml:281
@ -706,25 +711,25 @@ msgstr ""
#: inheritance_mapping.xml:282
#, no-c-format
msgid "Polymorphic queries"
msgstr "Pesquisas Polimórficas"
msgstr "Requêtes polymorphiques"
#. Tag: entry
#: inheritance_mapping.xml:283
#, no-c-format
msgid "Polymorphic joins"
msgstr "Joins polimórficos"
msgstr "Jointures polymorphiques"
#. Tag: entry
#: inheritance_mapping.xml:284
#, no-c-format
msgid "Outer join fetching"
msgstr "Outer join fetching"
msgstr "Récupération par jointure externe"
#. Tag: entry
#: inheritance_mapping.xml:289
#, no-c-format
msgid "table per class-hierarchy"
msgstr "table per class-hierarchy"
msgstr "une table par hiérarchie de classe"
#. Tag: literal
#: inheritance_mapping.xml:290 inheritance_mapping.xml:301
@ -779,7 +784,7 @@ msgstr "from Order o join o.payment p"
#: inheritance_mapping.xml:319
#, no-c-format
msgid "supported"
msgstr "supported"
msgstr "supportée"
#. Tag: entry
#: inheritance_mapping.xml:300
@ -787,15 +792,15 @@ msgstr "supported"
msgid "<entry>table per subclass</entry>"
msgstr ""
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"tabela por subclasse\n"
"une table par classe fille (table per subclass)\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"table per subclass"
"une table par classe fille"
#. Tag: entry
#: inheritance_mapping.xml:311
#, no-c-format
msgid "table per concrete-class (union-subclass)"
msgstr "table per concrete-class (union-subclass)"
msgstr "une table par classe concrète (union-subclass)"
#. Tag: entry
#: inheritance_mapping.xml:314
@ -809,7 +814,7 @@ msgstr ""
#: inheritance_mapping.xml:322
#, no-c-format
msgid "table per concrete class (implicit polymorphism)"
msgstr "table per concrete class (implicit polymorphism)"
msgstr "une table par classe concrète (polymorphisme implicite)"
#. Tag: literal
#: inheritance_mapping.xml:323
@ -820,9 +825,17 @@ msgstr "&lt;any&gt;"
#. Tag: emphasis
#: inheritance_mapping.xml:324 inheritance_mapping.xml:325
#: inheritance_mapping.xml:329 inheritance_mapping.xml:330
#, no-c-format
#, fuzzy, no-c-format
msgid "not supported"
msgstr "not supported"
msgstr ""
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"non supporté\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"non supporté\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"non supportées\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"non supportée"
#. Tag: literal
#: inheritance_mapping.xml:326
@ -842,10 +855,10 @@ msgstr ""
#~ msgstr "load()/get()"
#~ msgid "Polymorphic <placeholder-1/>"
#~ msgstr "<placeholder-1/> Polimórfico"
#~ msgstr "<placeholder-1/> polymorphique"
#~ msgid "inverse=\"true\""
#~ msgstr "inverse=\"true\""
#~ msgid "<placeholder-1/> (for <placeholder-2/> only)"
#~ msgstr "<placeholder-1/> (for <placeholder-2/> only)"
#~ msgstr "<placeholder-1/> (pour <placeholder-2/> seulement)"

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@ msgstr ""
#: persistent_classes.xml:5
#, no-c-format
msgid "Persistent Classes"
msgstr "Persistent Classes"
msgstr "Classes persistantes"
#. Tag: para
#: persistent_classes.xml:7
@ -25,10 +25,11 @@ msgid ""
"application). Not all instances of a persistent class are considered to be "
"in the persistent state - an instance may instead be transient or detached."
msgstr ""
"Persistent classes are classes in an application that implement the entities "
"of the business problem (e.g. Customer and Order in an E-commerce "
"application). Not all instances of a persistent class are considered to be "
"in the persistent state - an instance may instead be transient or detached."
"Les classes persistantes sont les classes d'une application qui implémentent "
"les entités d'un problème métier (ex. Client et Commande dans une "
"application de commerce électronique). Toutes les instances d'une classe "
"persistante ne sont pas forcément dans l'état persistant - au lieu de cela, "
"une instance peut être éphémère (NdT : transient) ou détachée."
#. Tag: para
#: persistent_classes.xml:14
@ -40,24 +41,27 @@ msgid ""
"about the nature of your persistent objects. You may express a domain model "
"in other ways: using trees of <literal>Map</literal> instances, for example."
msgstr ""
"Hibernate works best if these classes follow some simple rules, also known "
"as the Plain Old Java Object (POJO) programming model. However, none of "
"these rules are hard requirements. Indeed, Hibernate3 assumes very little "
"about the nature of your persistent objects. You may express a domain model "
"in other ways: using trees of <literal>Map</literal> instances, for example."
"Hibernate fonctionne de manière optimale lorsque ces classes suivent "
"quelques règles simples, aussi connues comme le modèle de programmation "
"Plain Old Java Object (POJO). Cependant, aucune de ces règles ne sont des "
"besoins absolus. En effet, Hibernate3 suppose très peu de choses à propos de "
"la nature de vos objets persistants. Vous pouvez exprimer un modèle de "
"domaine par d'autres moyens : utiliser des arbres d'instances de "
"<literal>Map</literal>, par exemple."
#. Tag: title
#: persistent_classes.xml:23
#, no-c-format
msgid "A simple POJO example"
msgstr "A simple POJO example"
msgstr "Un exemple simple de POJO"
#. Tag: para
#: persistent_classes.xml:25
#, no-c-format
msgid "Most Java applications require a persistent class representing felines."
msgstr ""
"Most Java applications require a persistent class representing felines."
"Toute bonne application Java nécessite une classe persistante représentant "
"les félins."
#. Tag: programlisting
#: persistent_classes.xml:29
@ -147,13 +151,13 @@ msgstr ""
#: persistent_classes.xml:31
#, no-c-format
msgid "There are four main rules to follow here:"
msgstr "There are four main rules to follow here:"
msgstr "Il y a quatre règles à suivre ici :"
#. Tag: title
#: persistent_classes.xml:37
#, no-c-format
msgid "Implement a no-argument constructor"
msgstr "Implement a no-argument constructor"
msgstr "Implémenter un constructeur sans argument"
#. Tag: para
#: persistent_classes.xml:39
@ -166,18 +170,19 @@ msgid ""
"<emphasis>package</emphasis> visibility for runtime proxy generation in "
"Hibernate."
msgstr ""
"<literal>Cat</literal> has a no-argument constructor. All persistent classes "
"must have a default constructor (which may be non-public) so that Hibernate "
"can instantiate them using <literal>Constructor.newInstance()</literal>. We "
"strongly recommend having a default constructor with at least "
"<emphasis>package</emphasis> visibility for runtime proxy generation in "
"<literal>Cat</literal> a un constructeur sans argument. Toutes les classes "
"persistantes doivent avoir un constructeur par défaut (lequel peut ne pas "
"être public) pour qu'Hibernate puissent les instancier en utilisant "
"<literal>Constructor.newInstance()</literal>. Nous recommandons fortement "
"d'avoir un constructeur par défaut avec au moins une visibilité "
"<emphasis>paquet</emphasis> pour la génération du proxy à l'exécution dans "
"Hibernate."
#. Tag: title
#: persistent_classes.xml:49
#, no-c-format
msgid "Provide an identifier property (optional)"
msgstr "Provide an identifier property (optional)"
msgstr "Fournir une propriété d'indentifiant (optionnel)"
#. Tag: para
#: persistent_classes.xml:51
@ -191,13 +196,16 @@ msgid ""
"composite keys, you can even use a user-defined class with properties of "
"these types - see the section on composite identifiers later.)"
msgstr ""
"<literal>Cat</literal> has a property called <literal>id</literal>. This "
"property maps to the primary key column of a database table. The property "
"might have been called anything, and its type might have been any primitive "
"type, any primitive \"wrapper\" type, <literal>java.lang.String</literal> or "
"<literal>java.util.Date</literal>. (If your legacy database table has "
"composite keys, you can even use a user-defined class with properties of "
"these types - see the section on composite identifiers later.)"
"<literal>Cat</literal> possède une propriété appelée <literal>id</literal>. "
"Cette propriété mappe la valeur de la colonne de clé primaire de la table "
"d'une base de données.La propriété aurait pu s'appeler complètement "
"autrement, et son type aurait pu être n'importe quel type primitif, "
"n'importe quel \"encapsuleur\" de type primitif, <literal>java.lang.String</"
"literal> ou <literal>java.util.Date</literal>. (Si votre base de données "
"héritée possède des clés composites, elles peuvent être mappées en utilisant "
"une classe définie par l'utilisateur et possédant les propriétés associées "
"aux types de la clé composite - voir la section concernant les identifiants "
"composites plus tard)."
#. Tag: para
#: persistent_classes.xml:60
@ -207,9 +215,9 @@ msgid ""
"Hibernate keep track of object identifiers internally. We do not recommend "
"this, however."
msgstr ""
"The identifier property is strictly optional. You can leave them off and let "
"Hibernate keep track of object identifiers internally. We do not recommend "
"this, however."
"La propriété d'identifiant est strictement optionnelle. Vous pouver "
"l'oublier et laisser Hibernate s'occuper des identifiants de l'objet en "
"interne. Toutefois, nous ne le recommandons pas."
#. Tag: para
#: persistent_classes.xml:65
@ -218,8 +226,8 @@ msgid ""
"In fact, some functionality is available only to classes which declare an "
"identifier property:"
msgstr ""
"In fact, some functionality is available only to classes which declare an "
"identifier property:"
"En fait, quelques fonctionnalités ne sont disponibles que pour les classes "
"déclarant un identifiant de propriété :"
#. Tag: para
#: persistent_classes.xml:72
@ -228,8 +236,9 @@ msgid ""
"Transitive reattachment for detached objects (cascade update or cascade "
"merge) - see"
msgstr ""
"Transitive reattachment for detached objects (cascade update or cascade "
"merge) - see <xref linkend=\"objectstate-transitive\"/>"
"Les réattachements transitifs pour les objets détachés (mise à jour en "
"cascade ou fusion en cascade) - voir <xref linkend=\"objectstate-transitive"
"\"/>"
#. Tag: literal
#: persistent_classes.xml:79
@ -251,15 +260,15 @@ msgid ""
"persistent classes. We further recommend that you use a nullable (ie. non-"
"primitive) type."
msgstr ""
"We recommend you declare consistently-named identifier properties on "
"persistent classes. We further recommend that you use a nullable (ie. non-"
"primitive) type."
"Nous recommandons que vous déclariez les propriétés d'identifiant de manière "
"uniforme. Nous recommandons également que vous utilisiez un type nullable "
"(ie. non primitif)."
#. Tag: title
#: persistent_classes.xml:96
#, no-c-format
msgid "Prefer non-final classes (optional)"
msgstr "Prefer non-final classes (optional)"
msgstr "Favoriser les classes non finales (optionnel)"
#. Tag: para
#: persistent_classes.xml:97
@ -269,9 +278,9 @@ msgid ""
"the persistent class being either non-final, or the implementation of an "
"interface that declares all public methods."
msgstr ""
"A central feature of Hibernate, <emphasis>proxies</emphasis>, depends upon "
"the persistent class being either non-final, or the implementation of an "
"interface that declares all public methods."
"Une fonctionnalité clef d'Hibernate, les <emphasis>proxies</emphasis>, "
"nécessitent que la classe persistente soit non finale ou qu'elle soit "
"l'implémentation d'une interface qui déclare toutes les méthodes publiques."
#. Tag: para
#: persistent_classes.xml:102
@ -281,9 +290,10 @@ msgid ""
"interface with Hibernate, but you won't be able to use proxies for lazy "
"association fetching - which will limit your options for performance tuning."
msgstr ""
"You can persist <literal>final</literal> classes that do not implement an "
"interface with Hibernate, but you won't be able to use proxies for lazy "
"association fetching - which will limit your options for performance tuning."
"Vous pouvez persister, grâce à Hibernate, les classes <literal>final</"
"literal> qui n'implémentent pas d'interface, mais vous ne pourrez pas "
"utiliser les proxies pour les chargements d'associations paresseuses - ce "
"qui limitera vos possibilités d'ajustement des performances."
#. Tag: para
#: persistent_classes.xml:107
@ -294,16 +304,17 @@ msgid ""
"final</literal> method, you must explicitly disable proxying by setting "
"<literal>lazy=\"false\"</literal>."
msgstr ""
"You should also avoid declaring <literal>public final</literal> methods on "
"the non-final classes. If you want to use a class with a <literal>public "
"final</literal> method, you must explicitly disable proying by setting "
"<literal>lazy=\"false\"</literal>."
"Vous devriez aussi éviter de déclarer des méthodes <literal>public final</"
"literal> sur des classes non-finales. Si vous voulez utiliser une classe "
"avec une méthode <literal>public final</literal>, vous devez explicitement "
"désactiver les proxies en paramétrant <literal>lazy=\"false\"</literal>."
#. Tag: title
#: persistent_classes.xml:115
#, no-c-format
msgid "Declare accessors and mutators for persistent fields (optional)"
msgstr "Declare accessors and mutators for persistent fields (optional)"
msgstr ""
"Déclarer les accesseurs et mutateurs des attributs persistants (optionnel)"
#. Tag: para
#: persistent_classes.xml:117
@ -318,14 +329,15 @@ msgid ""
"literal>. You may switch to direct field access for particular properties, "
"if needed."
msgstr ""
"<literal>Cat</literal> declares accessor methods for all its persistent "
"fields. Many other ORM tools directly persist instance variables. We believe "
"it is better to provide an indirection between the relational schema and "
"internal data structures of the class. By default, Hibernate persists "
"JavaBeans style properties, and recognizes method names of the form "
"<literal>getFoo</literal>, <literal>isFoo</literal> and <literal>setFoo</"
"literal>. You may switch to direct field access for particular properties, "
"if needed."
"<literal>Cat</literal> déclare des mutateurs pour toutes ses champs "
"persistants. Beaucoup d'autres solutions de mapping Objet/relationnel "
"persistent directement les variables d'instance. Nous pensons qu'il est bien "
"mieux de fournir une indirection entre le schéma relationnel et les "
"structures de données internes de la classe. Par défaut, Hibernate persiste "
"les propriétés suivant le style JavaBean, et reconnaît les noms de méthodes "
"de la forme <literal> getFoo</literal>, <literal>isFoo</literal> et "
"<literal>setFoo</literal>. Nous pouvons changer pour un accès direct aux "
"champs pour des propriétés particulières, si besoin est."
#. Tag: para
#: persistent_classes.xml:127
@ -335,15 +347,16 @@ msgid ""
"persist a property with a default, <literal>protected</literal> or "
"<literal>private</literal> get / set pair."
msgstr ""
"Properties need <emphasis>not</emphasis> be declared public - Hibernate can "
"persist a property with a default, <literal>protected</literal> or "
"<literal>private</literal> get / set pair."
"Les propriétés <emphasis>n'ont pas</emphasis> à être déclarées publiques - "
"Hibernate peut persister une propriété avec un paire de getter/setter de "
"visibilité par défault, <literal>protected</literal> ou <literal> private</"
"literal>."
#. Tag: title
#: persistent_classes.xml:138
#, no-c-format
msgid "Implementing inheritance"
msgstr "Implementing inheritance"
msgstr "Implémenter l'héritage"
#. Tag: para
#: persistent_classes.xml:140
@ -352,8 +365,8 @@ msgid ""
"A subclass must also observe the first and second rules. It inherits its "
"identifier property from the superclass, <literal>Cat</literal>."
msgstr ""
"A subclass must also observe the first and second rules. It inherits its "
"identifier property from the superclass, <literal>Cat</literal>."
"Une sous-classe doit également suivre la première et la seconde règle. Elle "
"hérite sa propriété d'identifiant de <literal>Cat</literal>."
#. Tag: programlisting
#: persistent_classes.xml:145
@ -379,7 +392,7 @@ msgstr ""
msgid ""
"Implementing <literal>equals()</literal> and <literal>hashCode()</literal>"
msgstr ""
"Implementing <literal>equals()</literal> and <literal>hashCode()</literal>"
"Implémenter <literal>equals()</literal> et <literal>hashCode()</literal>"
#. Tag: para
#: persistent_classes.xml:151
@ -388,8 +401,8 @@ msgid ""
"You have to override the <literal>equals()</literal> and <literal>hashCode()"
"</literal> methods if you"
msgstr ""
"You have to override the <literal>equals()</literal> and <literal>hashCode()"
"</literal> methods if you"
"Vous devez surcharger les méthodes <literal>equals()</literal> et "
"<literal>hashCode()</literal> si vous"
#. Tag: para
#: persistent_classes.xml:157
@ -399,15 +412,15 @@ msgid ""
"(the recommended way to represent many-valued associations) <emphasis>and</"
"emphasis>"
msgstr ""
"intend to put instances of persistent classes in a <literal>Set</literal> "
"(the recommended way to represent many-valued associations) <emphasis>and</"
"emphasis>"
"avez l'intention de mettre des instances de classes persistantes dans un "
"<literal>Set</literal> (la manière recommandée pour représenter des "
"associations pluri-valuées) <emphasis>et</emphasis>"
#. Tag: para
#: persistent_classes.xml:164
#, no-c-format
msgid "intend to use reattachment of detached instances"
msgstr "intend to use reattachment of detached instances"
msgstr "avez l'intention d'utiliser le réattachement d'instances détachées"
#. Tag: para
#: persistent_classes.xml:170
@ -419,11 +432,12 @@ msgid ""
"()</literal> and <literal>hashCode()</literal> if we wish to have meaningful "
"semantics for <literal>Set</literal>s."
msgstr ""
"Hibernate guarantees equivalence of persistent identity (database row) and "
"Java identity only inside a particular session scope. So as soon as we mix "
"instances retrieved in different sessions, we must implement <literal>equals"
"()</literal> and <literal>hashCode()</literal> if we wish to have meaningful "
"semantics for <literal>Set</literal>s."
"Hibernate garantit l'équivalence de l'identité persistante (ligne de base de "
"données) et l'identité Java seulement à l'intérieur de la portée d'une "
"session particulière. Donc dès que nous mélangeons des instances venant de "
"différentes sessions, nous devons implémenter <literal>equals()</literal> et "
"<literal>hashCode()</literal> si nous souhaitons avoir une sémantique "
"correcte pour les <literal>Set</literal>s."
#. Tag: para
#: persistent_classes.xml:178
@ -445,21 +459,23 @@ msgid ""
"is not a Hibernate issue, but normal Java semantics of object identity and "
"equality."
msgstr ""
"The most obvious way is to implement <literal>equals()</literal>/"
"<literal>hashCode()</literal> by comparing the identifier value of both "
"objects. If the value is the same, both must be the same database row, they "
"are therefore equal (if both are added to a <literal>Set</literal>, we will "
"only have one element in the <literal>Set</literal>). Unfortunately, we "
"can't use that approach with generated identifiers! Hibernate will only "
"assign identifier values to objects that are persistent, a newly created "
"instance will not have any identifier value! Furthermore, if an instance is "
"unsaved and currently in a <literal>Set</literal>, saving it will assign an "
"identifier value to the object. If <literal>equals()</literal> and "
"<literal>hashCode()</literal> are based on the identifier value, the hash "
"code would change, breaking the contract of the <literal>Set</literal>. See "
"the Hibernate website for a full discussion of this problem. Note that this "
"is not a Hibernate issue, but normal Java semantics of object identity and "
"equality."
"La manière la plus évidente est d'implémenter <literal>equals()</literal>/"
"<literal>hashCode()</literal> en comparant la valeur de l'identifiant des "
"deux objets. Si cette valeur est identique, les deux doivent représenter la "
"même ligne de base de données, ils sont donc égaux (si les deux sont ajoutés "
"à un <literal>Set</literal>, nous n'aurons qu'un seul élément dans le "
"<literal>Set</literal>). Malheureusement, nous ne pouvons pas utiliser cette "
"approche avec des identifiants générés ! Hibernate n'assignera de valeur "
"d'identifiant qu'aux objets qui sont persistants, une instance nouvellement "
"créée n'aura donc pas de valeur d'identifiant ! De plus, si une instance est "
"non sauvegardée et actuellement dans un <literal>Set</literal>, le "
"sauvegarder assignera une valeur d'identifiant à l'objet. Si <literal>equals"
"()</literal> et <literal>hashCode()</literal> sont basées sur la valeur de "
"l'identifiant, le code de hachage devrait changer, rompant le contrat du "
"<literal>Set</literal>. Regardez sur le site web d'Hibernate pour une "
"discussion complète de ce problème. Notez que ceci n'est pas un problème "
"d'Hibernate, mais la sémantique normale de Java pour l'identité d'un objet "
"et l'égalité."
#. Tag: para
#: persistent_classes.xml:192
@ -471,11 +487,12 @@ msgid ""
"properties that form the business key, a key that would identify our "
"instance in the real world (a <emphasis>natural</emphasis> candidate key):"
msgstr ""
"We recommend implementing <literal>equals()</literal> and <literal>hashCode()"
"</literal> using <emphasis>Business key equality</emphasis>. Business key "
"equality means that the <literal>equals()</literal> method compares only the "
"properties that form the business key, a key that would identify our "
"instance in the real world (a <emphasis>natural</emphasis> candidate key):"
"Nous recommandons donc d'implémenter <literal>equals()</literal> et "
"<literal>hashCode()</literal> en utilisant <emphasis> l'égalité par clé "
"métier</emphasis>.L'égalité par clé métier signifie que la méthode "
"<literal>equals()</literal> compare uniquement les propriétés qui forment "
"une clé métier, une clé qui identifierait notre instance dans le monde réel "
"(une clé candidate <emphasis>naturelle</emphasis>) :"
#. Tag: programlisting
#: persistent_classes.xml:200
@ -515,16 +532,16 @@ msgid ""
"Immutable or unique properties are usually good candidates for a business "
"key."
msgstr ""
"Note that a business key does not have to be as solid as a database primary "
"key candidate (see <xref linkend=\"transactions-basics-identity\"/>). "
"Immutable or unique properties are usually good candidates for a business "
"key."
"Notez qu'une clef métier ne doit pas être solide comme une clef primaire de "
"base de données (voir <xref linkend=\"transactions-basics-identity\"/>). Les "
"propriétés immuables ou uniques sont généralement de bonnes candidates pour "
"une clef métier."
#. Tag: title
#: persistent_classes.xml:212
#, no-c-format
msgid "Dynamic models"
msgstr "Dynamic models"
msgstr "Modèles dynamiques"
#. Tag: emphasis
#: persistent_classes.xml:215
@ -533,8 +550,8 @@ msgid ""
"Note that the following features are currently considered experimental and "
"may change in the near future."
msgstr ""
"Note that the following features are currently considered experimental and "
"may change in the near future."
"Notez que la fonctionnalités suivantes sont actuellement considérées comme "
"expérimentales et peuvent changer dans un futur proche."
#. Tag: para
#: persistent_classes.xml:219
@ -546,11 +563,12 @@ msgid ""
"the representation of entities as DOM4J trees. With this approach, you don't "
"write persistent classes, only mapping files."
msgstr ""
"Persistent entities don't necessarily have to be represented as POJO classes "
"or as JavaBean objects at runtime. Hibernate also supports dynamic models "
"(using <literal>Map</literal>s of <literal>Map</literal>s at runtime) and "
"the representation of entities as DOM4J trees. With this approach, you don't "
"write persistent classes, only mapping files."
"Les entités persistantes ne doivent pas nécessairement être représentées "
"comme des classes POJO ou des objets JavaBean à l'exécution. Hibernate "
"supporte aussi les modèles dynamiques (en utilisant des <literal>Map</"
"literal>s de <literal>Map</literal>s à l'exécution) et la représentation des "
"entités comme des arbres DOM4J. Avec cette approche, vous n'écrivez pas de "
"classes persistantes, seulement des fichiers de mapping."
#. Tag: para
#: persistent_classes.xml:227
@ -561,10 +579,11 @@ msgid ""
"literal> using the <literal>default_entity_mode</literal> configuration "
"option (see <xref linkend=\"configuration-optional-properties\"/>."
msgstr ""
"By default, Hibernate works in normal POJO mode. You may set a default "
"entity representation mode for a particular <literal>SessionFactory</"
"literal> using the <literal>default_entity_mode</literal> configuration "
"option (see <xref linkend=\"configuration-optional-properties\"/>."
"Par défaut, Hibernate fonctionne en mode POJO normal. Vous pouvez paramétrer "
"un mode de représentation d'entité par défaut pour une "
"<literal>SessionFactory</literal> particulière en utilisant l'option de "
"configuration <literal>default_entity_mode</literal> (voir <xref linkend="
"\"configuration-optional-properties\"/>)."
#. Tag: para
#: persistent_classes.xml:234
@ -574,9 +593,10 @@ msgid ""
"literal>s. First, in the mapping file, an <literal>entity-name</literal> has "
"to be declared instead of (or in addition to) a class name:"
msgstr ""
"The following examples demonstrates the representation using <literal>Map</"
"literal>s. First, in the mapping file, an <literal>entity-name</literal> has "
"to be declared instead of (or in addition to) a class name:"
"Les exemples suivants démontrent la représentation utilisant des "
"<literal>Map</literal>s. D'abord, dans le fichier de mapping, un "
"<literal>entity-name</literal> doit être déclaré au lieu (ou en plus) d'un "
"nom de classe :"
#. Tag: programlisting
#: persistent_classes.xml:240
@ -625,9 +645,9 @@ msgid ""
"the target type of an associations may also be a dynamic entity instead of a "
"POJO."
msgstr ""
"Note that even though associations are declared using target class names, "
"the target type of an associations may also be a dynamic entity instead of a "
"POJO."
"Notez que même si des associations sont déclarées en utilisant des noms de "
"classe cible, le type de cible d'une association peut aussi être une entité "
"dynamique au lieu d'un POJO."
#. Tag: para
#: persistent_classes.xml:249
@ -637,9 +657,10 @@ msgid ""
"the <literal>SessionFactory</literal>, we can at runtime work with "
"<literal>Map</literal>s of <literal>Map</literal>s:"
msgstr ""
"After setting the default entity mode to <literal>dynamic-map</literal> for "
"the <literal>SessionFactory</literal>, we can at runtime work with "
"<literal>Map</literal>s of <literal>Map</literal>s:"
"Après avoir configuré le mode d'entité par défaut à <literal>dynamic-map</"
"literal> pour la <literal>SessionFactory</literal>, nous pouvons lors de "
"l'exécution fonctionner avec des <literal>Map</literal>s de <literal>Map</"
"literal>s :"
#. Tag: programlisting
#: persistent_classes.xml:255
@ -679,12 +700,13 @@ msgid ""
"can easily be normalized and sound, allowing to add a proper domain model "
"implementation on top later on."
msgstr ""
"The advantages of a dynamic mapping are quick turnaround time for "
"prototyping without the need for entity class implementation. However, you "
"lose compile-time type checking and will very likely deal with many "
"exceptions at runtime. Thanks to the Hibernate mapping, the database schema "
"can easily be normalized and sound, allowing to add a proper domain model "
"implementation on top later on."
"Les avantages d'un mapping dynamique sont un gain de temps pour le "
"prototypage sans la nécessité d'implémenter les classes d'entité. Pourtant, "
"vous perdez la vérification du typage au moment de la compilation et aurez "
"plus d'exceptions à gérer lors de l'exécution. Grâce au mapping d'Hibernate, "
"le schéma de la base de données peut facilement être normalisé et solidifié, "
"permettant de rajouter une implémentation propre du modèle de domaine plus "
"tard."
#. Tag: para
#: persistent_classes.xml:265
@ -693,8 +715,8 @@ msgid ""
"Entity representation modes can also be set on a per <literal>Session</"
"literal> basis:"
msgstr ""
"Entity representation modes can also be set on a per <literal>Session</"
"literal> basis:"
"Les modes de représentation d'une entité peut aussi être configuré par "
"<literal>Session</literal> :"
#. Tag: programlisting
#: persistent_classes.xml:270
@ -727,14 +749,14 @@ msgid ""
"literal>, and also leave the transaction and connection handling to the "
"primary unit of work."
msgstr ""
"Please note that the call to <literal>getSession()</literal> using an "
"<literal>EntityMode</literal> is on the <literal>Session</literal> API, not "
"the <literal>SessionFactory</literal>. That way, the new <literal>Session</"
"literal> shares the underlying JDBC connection, transaction, and other "
"context information. This means you don't have tocall <literal>flush()</"
"literal> and <literal>close()</literal> on the secondary <literal>Session</"
"literal>, and also leave the transaction and connection handling to the "
"primary unit of work."
"Veuillez noter que l'appel à <literal>getSession()</literal> en utilisant un "
"<literal>EntityMode</literal> se fait sur l'API <literal>Session</literal>, "
"pas <literal>SessionFactory</literal>. De cette manière, la nouvelle "
"<literal>Session</literal> partage les connexions JDBC, transactions et "
"autres informations de contexte sous-jacentes. Cela signifie que vous n'avez "
"pas à appeler <literal>flush()</literal> et <literal>close()</literal> sur "
"la <literal>Session</literal> secondaire, et laissez aussi la gestion de la "
"transaction et de la connexion à l'unité de travail primaire."
#. Tag: para
#: persistent_classes.xml:283
@ -743,8 +765,8 @@ msgid ""
"More information about the XML representation capabilities can be found in "
"<xref linkend=\"xml\"/>."
msgstr ""
"More information about the XML representation capabilities can be found in "
"<xref linkend=\"xml\"/>."
"Plus d'informations à propos de la représentation XML peuvent être trouvées "
"dans <xref linkend=\"xml\"/>."
#. Tag: title
#: persistent_classes.xml:291
@ -771,20 +793,22 @@ msgid ""
"managing the above mentioned contracts in regards to entities, while "
"<literal>ComponentTuplizer</literal>s do the same for components."
msgstr ""
"<literal>org.hibernate.tuple.Tuplizer</literal>, and its sub-interfaces, are "
"responsible for managing a particular representation of a piece of data, "
"given that representation's <literal>org.hibernate.EntityMode</literal>. If "
"a given piece of data is thought of as a data structure, then a tuplizer is "
"the thing which knows how to create such a data structure and how to extract "
"values from and inject values into such a data structure. For example, for "
"the POJO entity mode, the correpsonding tuplizer knows how create the POJO "
"through its constructor and how to access the POJO properties using the "
"defined property accessors. There are two high-level types of Tuplizers, "
"represented by the <literal>org.hibernate.tuple.EntityTuplizer</literal> and "
"<literal>org.hibernate.tuple.ComponentTuplizer</literal> interfaces. "
"<literal>EntityTuplizer</literal>s are responsible for managing the above "
"mentioned contracts in regards to entities, while "
"<literal>ComponentTuplizer</literal>s do the same for components."
"<literal>org.hibernate.tuple.Tuplizer</literal>, et ses sous-interfaces, "
"sont responsables de la gestion d'une représentation particulière d'un "
"morceau de données, en fonction du <literal>org.hibernate.EntityMode</"
"literal> de réprésentation. Si un morceau donné de données est pensé comme "
"une structure de données, alors un tuplizer est la chose qui sait comment "
"créer une telle structure de données, comment extraire des valeurs et "
"injecter des valeurs dans une telle structure de données. Par exemple, pour "
"le mode d'entité POJO, le tuplizer correspondant sait comment créer le POJO "
"à travers son constructeur et comment accéder aux propriétés du POJO "
"utilisant les accesseurs de la propriété définie. Il y a deux types de "
"Tuplizers haut niveau, représenté par les interfaces <literal>org.hibernate."
"tuple.EntityTuplizer</literal> et <literal>org.hibernate.tuple."
"ComponentTuplizer</literal>. Les <literal>EntityTuplizer</literal>s sont "
"responsables de la gestion des contrats mentionnés ci-dessus pour les "
"entités, alors que les <literal>ComponentTuplizer</literal>s s'occupent des "
"composants."
#. Tag: para
#: persistent_classes.xml:308
@ -799,14 +823,15 @@ msgid ""
"component mapping they are meant to manage. Going back to the example of our "
"customer entity:"
msgstr ""
"Users may also plug in their own tuplizers. Perhaps you require that a "
"<literal>java.util.Map</literal> implementation other than <literal>java."
"util.HashMap</literal> be used while in the dynamic-map entity-mode; or "
"perhaps you need to define a different proxy generation strategy than the "
"one used by default. Both would be achieved by defining a custom tuplizer "
"implementation. Tuplizers definitions are attached to the entity or "
"component mapping they are meant to manage. Going back to the example of our "
"customer entity:"
"Les utilisateurs peuvent aussi brancher leurs propres tuplizers. Peut-être "
"vous est-il nécessaire qu'une implémentation de <literal>java.util.Map</"
"literal> autre que <literal>java.util.HashMap</literal> soit utilisée dans "
"le mode d'entité dynamic-map ; ou peut-être avez-vous besoin de définir une "
"statégie de génération de proxy différente de celle utilisée par défaut. Les "
"deux devraient être effectuées en définissant une implémentation de tuplizer "
"utilisateur. Les définitions de tuplizers sont attachées au mapping de "
"l'entité ou du composant qu'ils sont censés gérer. Retour à l'exemple de "
"notre entité utilisateur :"
#. Tag: programlisting
#: persistent_classes.xml:317

View File

@ -14,7 +14,7 @@ msgstr ""
#: preface.xml:21
#, no-c-format
msgid "Preface"
msgstr "Prefácio"
msgstr "Préface"
#. Tag: para
#: preface.xml:23
@ -27,12 +27,12 @@ msgid ""
"representation from an object model to a relational data model with a SQL-"
"based schema."
msgstr ""
"Trabalhando com software orientado a objetos e banco de dados relacional, "
"podemos ter alguns incômodos hoje em dia em ambientes empresariais. "
"Hibernate é uma ferramenta que mapeia o objeto/relacional para o ambiente "
"Java. O termo de mapeamento de objeto/relacional (ou ORM – Object/Relational "
"Mapping) se refere a técnica de mapear uma representação de dados de um "
"modelo de objeto para dados de modelo relacional com o esquema baseado em SQL"
"Travailler dans les deux univers que sont l'orienté objet et la base de "
"données relationnelle peut ê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 à faire le lien entre la représentation objet "
"des données et sa représentation relationnelle basée sur un schéma SQL."
#. Tag: para
#: preface.xml:31
@ -43,11 +43,12 @@ msgid ""
"query and retrieval facilities and can significantly reduce development time "
"otherwise spent with manual data handling in SQL and JDBC."
msgstr ""
"O Hibernate não somente cuida do mapeamento de classes em Java para tabelas "
"de banco de dados (e de tipos de dados em Java para tipos de dados em SQL), "
"como também fornece facilidade de consultas e recuperação de dados, podendo "
"também reduzir significantemente o tempo de desenvolvimento gasto com a "
"manipulação manual de dados no SQL e JDBC."
"Non seulement, Hibernate s'occupe du transfert des classes Java dans les "
"tables de la base de données (et des types de données Java dans les types de "
"données SQL), mais il permet de requêter les données et propose des moyens "
"de les récupérer. Il peut donc réduire de manière significative le temps de "
"développement qui aurait été autrement perdu dans une manipulation manuelle "
"des données via SQL et JDBC."
#. Tag: para
#: preface.xml:38
@ -62,16 +63,16 @@ msgid ""
"specific SQL code and will help with the common task of result set "
"translation from a tabular representation to a graph of objects."
msgstr ""
"O objetivo do Hibernate é de aliviar o desenvolvedor de 95 por cento das "
"tarefas de programação relacionadas aos dados comuns de persistência. O "
"Hibernate talvez não seja a melhor solução para aplicações de dados-data-"
"centric que somente usa stored-procedures para implementar a lógica de "
"negócio no banco de dados, isto é muito utilizado com o domínio de modelos "
"orientado a objetos e lógicas de negócio em camadas do meio (middle-tier) "
"baseadas em Java. Porém, o Hibernate poderá certamente ajuda-lo a remover ou "
"encapsular o código SQL de um vendedor específico, ajudando também com a "
"tarefa comum da tradução do resultado ajustado de uma representação para um "
"gráfico de objetos."
"Le but d'Hibernate est de libérer le développeur de 95 pourcent des tâches "
"de programmation liées à la persistance des données communes. Hibernate "
"n'est probablement pas la meilleure solution pour les applications centrées "
"sur les données qui n'utilisent que les procédures stockées pour implémenter "
"la logique métier dans la base de données, il est le plus utile dans les "
"modèles métier orientés objets dont la logique métier est implémentée dans "
"la couche Java dite intermédiaire. Cependant, Hibernate vous aidera à "
"supprimer ou à encapsuler le code SQL spécifique à votre base de données et "
"vous aidera sur la tâche commune qu'est la transformation des données d'une "
"représentation tabulaire à une représentation sous forme de graphe d'objets."
#. Tag: para
#: preface.xml:48
@ -80,8 +81,8 @@ msgid ""
"If you are new to Hibernate and Object/Relational Mapping or even Java, "
"please follow these steps:"
msgstr ""
"Se você for novo no Hibernate e no mapeamento Objeto/Relacional, ou até "
"mesmo em Java, por favor, siga os seguintes passos."
"Si vous êtes nouveau dans Hibernate et le mapping Objet/Relationnel voire "
"même en Java, suivez ces quelques étapes :"
#. Tag: para
#: preface.xml:55
@ -91,9 +92,8 @@ msgid ""
"instructions. The source code for the tutorial is included in the "
"distribution in the <literal>doc/reference/tutorial/</literal> directory."
msgstr ""
"Leia <xref linkend=\"tutorial\"/> para um tutorial com instruções passo-a-"
"passo. O código fonte para do tutorial está incluído na distribuição no "
"diretório <literal>doc/reference/tutorial/</literal>."
"Lisez <xref linkend=\"tutorial\"/> pour un didacticiel plus long avec plus "
"d'instructions étape par étape."
#. Tag: para
#: preface.xml:63
@ -102,8 +102,8 @@ msgid ""
"Read <xref linkend=\"architecture\"/> to understand the environments where "
"Hibernate can be used."
msgstr ""
"Leia o <xref linkend=\"architecture\"/> para entender o ambiente onde o "
"Hibernate pode ser utilizado."
"Lisez <xref linkend=\"architecture\"/> pour comprendre les environnements "
"dans lesquels Hibernate peut être utilisé."
#. Tag: para
#: preface.xml:69
@ -116,13 +116,13 @@ msgid ""
"From a command prompt in the distribution directory, type <literal>ant eg</"
"literal> (using Ant), or under Windows, type <literal>build eg</literal>."
msgstr ""
"Dê uma olhada no diretório de exemplo <literal>eg/</literal> da distribuição "
"do Hibernate, ele contém uma simples aplicação standalone. Copie seu driver "
"JDBC para o diretório <literal>lib/</literal> e edite o arquivo <literal>etc/"
"hibernate.properties</literal>, especificando corretamente os valores para "
"seu banco de dados. Usando o prompt de commando no diretorio de "
"distribuicao, digite <literal>ant eg</literal> (usando Ant), ou no Windows, "
"digite <literal>build eg</literal>."
"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 éditez <literal>src/hibernate."
"properties</literal>, en positionnant correctement les valeurs pour votre "
"base de donné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>."
#. Tag: para
#: preface.xml:80
@ -135,20 +135,20 @@ msgid ""
"caveatemptor.hibernate.org and download the example application for Java "
"Persistence with Hibernate."
msgstr ""
"Use esta documentação de referencia como sua fonte primaria de informação. "
"Considere ler também o livro <emphasis>Java Persistence with Hibernate</"
"emphasis> (http://www.manning.com/bauer2) caso você precise de mais ajuda "
"com o desenvolvimento de aplicações ou caso prefira um tutorial passo-a-"
"passo. Também visite o site http://caveatemptor.hibernate.org e faça o "
"download da aplicação de exemplo do Java Persistence with Hibernate."
"Faîtes de cette documentation de référence votre principale source "
"d'information. Pensez à lire <emphasis>Java Persistence with Hibernate</"
"emphasis> (http://www.manning.com/bauer2) si vous avez besoin de plus d'aide "
"avec le design d'applications ou si vous préférez un tutoriel pas à pas. "
"Visitez aussi http://caveatemptor.hibernate.org et téléchargez l'application "
"exemple pour Java Persistence with Hibernate."
#. Tag: para
#: preface.xml:90
#, no-c-format
msgid "FAQs are answered on the Hibernate website."
msgstr ""
"FAQs (perguntas feitas com mais freqüência) estão respondidas no site do "
"Hibernate"
"Les questions les plus fréquemment posées (FAQs) trouvent leur réponse sur "
"le site web Hibernate."
#. Tag: para
#: preface.xml:95
@ -157,7 +157,8 @@ msgid ""
"Third party demos, examples, and tutorials are linked on the Hibernate "
"website."
msgstr ""
"Demonstrações, exemplos e tutorials estão disponíveis no site do Hibernate."
"Des démos, exemples et tutoriaux de tierces personnes sont référencés sur le "
"site web Hibernate."
#. Tag: para
#: preface.xml:101
@ -167,9 +168,10 @@ msgid ""
"patterns and various integration solutions (Tomcat, JBoss AS, Struts, EJB, "
"etc.)."
msgstr ""
"A Área da comunidade no site do Hibernate é uma boa fonte de recursos para "
"padrões de projeto e várias soluções de integração (Tomcat, JBoss AS, "
"Struts, EJB, etc.)."
"La zone communautaire (Community Area) du site web Hibernate est une bonne "
"source d'information sur les design patterns et sur différentes solutions "
"d'intégration d'Hibernate (Tomcat, JBoss, Spring Framework, Struts, EJB, "
"etc)."
#. Tag: para
#: preface.xml:109
@ -181,11 +183,11 @@ msgid ""
"developer mailing list. If you are interested in translating this "
"documentation into your language, contact us on the developer mailing list."
msgstr ""
"Caso você tenha dúvidas, use o fórum dos usuários encontrado no site do "
"Hibernate. Nós também fornecemos um sistema para controle de bug’s (JIRA) "
"para relatórios de erros e requisições de features. Se você está interessado "
"no desenvolvimento do Hibernate, junte-se a lista de e-mail dos "
"desenvolvedores."
"Si vous avez des questions, utilisez le forum utilisateurs du site web "
"Hibernate. Nous utilisons également l'outil de gestion des incidents JIRA "
"pour tout ce qui est rapports de bogue et demandes d'évolution. Si vous êtes "
"intéressé par le développement d'Hibernate, joignez-vous à la liste de "
"diffusion de développement."
#. Tag: para
#: preface.xml:117
@ -197,8 +199,8 @@ msgid ""
"critical component of the JBoss Enterprise Middleware System (JEMS) suite of "
"products."
msgstr ""
"Suporte comercial de desenvolvimento, suporte de produção e treinamento para "
"o Hibernate está disponível através do JBoss Inc. (veja http://www.hibernate."
"org/SupportTraining). O Hibernate é um Projeto Profissional de Código Aberto "
"e um componente crítico da suíte de produtos JBoss Enterprise Middleware "
"Le développement commercial, le support de production et les formations à "
"Hibernate sont proposé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)."

View File

@ -14,19 +14,20 @@ msgstr ""
#: query_criteria.xml:5
#, no-c-format
msgid "Criteria Queries"
msgstr "Consultas por critérios"
msgstr "Requêtes par critères"
#. Tag: para
#: query_criteria.xml:7
#, no-c-format
msgid "Hibernate features an intuitive, extensible criteria query API."
msgstr "O Hibernate provê uma intuitiva e extensível API de critério de query."
msgstr ""
"Hibernate offre une API d'interrogation par critères intuitive et extensible."
#. Tag: title
#: query_criteria.xml:12
#, no-c-format
msgid "Creating a <literal>Criteria</literal> instance"
msgstr "Criando uma instancia <literal>Criteria</literal>"
msgstr "Créer une instance de <literal>Criteria</literal>"
#. Tag: para
#: query_criteria.xml:14
@ -36,9 +37,9 @@ msgid ""
"against a particular persistent class. The <literal>Session</literal> is a "
"factory for <literal>Criteria</literal> instances."
msgstr ""
"A interface <literal>org.hibernate.Criteria</literal> representa a query ao "
"invés de uma classe persistente particular. A sessão é uma fábrica para "
"intancias de <literal>Criteria</literal> ."
"L'interface <literal>net.sf.hibernate.Criteria</literal> représente une "
"requête sur une classe persistente donnée. La <literal>Session</literal> "
"fournit les instances de <literal>Criteria</literal>."
#. Tag: programlisting
#: query_criteria.xml:20
@ -53,7 +54,7 @@ msgstr ""
#: query_criteria.xml:25
#, no-c-format
msgid "Narrowing the result set"
msgstr "Limitando o result set"
msgstr "Restriction du résultat"
#. Tag: para
#: query_criteria.xml:27
@ -64,10 +65,10 @@ msgid ""
"criterion.Restrictions</literal> defines factory methods for obtaining "
"certain built-in <literal>Criterion</literal> types."
msgstr ""
"Um critério individual de query é uma instancia da interface <literal>org."
"hibernate.criterion.Criterion</literal>. A classe <literal>org.hibernate."
"criterion.Restrictions</literal> define os métodos da fábrica para obter "
"certos tipos pré fabricados de <literal>Criterion</literal>."
"Un criterion (critère de recherche) est une instance de l'interface "
"<literal>org.hibernate.criterion.Criterion</literal>. La classe <literal>org."
"hibernate.criterion.Restrictions</literal> définit des méthodes pour obtenir "
"des types de <literal>Criterion</literal> pré-définis."
#. Tag: programlisting
#: query_criteria.xml:35
@ -83,7 +84,7 @@ msgstr ""
#: query_criteria.xml:37
#, no-c-format
msgid "Restrictions may be grouped logically."
msgstr "Restrições podem ser logicamente agrupadas."
msgstr "Les restrictions peuvent être goupées de manière logique."
#. Tag: programlisting
#: query_criteria.xml:41
@ -122,9 +123,9 @@ msgid ""
"literal> subclasses), but one that is especially useful lets you specify SQL "
"directly."
msgstr ""
"Existe um grande número de critérios pré fabricados (subclasses de "
"<literal>Restrictions</literal>), mas um é especialmente útil pois permite "
"especificar o SQL diretamente."
"Il y a plusieurs types de criterion pré-définis (sous classes de "
"<literal>Restriction</literal>), mais l'une d'entre elle particulièrement "
"utile vous permet de spécifier directement du SQL."
#. Tag: programlisting
#: query_criteria.xml:50
@ -143,8 +144,8 @@ msgid ""
"The <literal>{alias}</literal> placeholder with be replaced by the row alias "
"of the queried entity."
msgstr ""
"O parametro <literal>{alias}</literal> será substituido pelo alias da "
"entidade procurada."
"La zone <literal>{alias}</literal> sera remplacée par l'alias de colonne de "
"l'entité que l'on souhaite intérroger."
#. Tag: para
#: query_criteria.xml:57
@ -154,9 +155,10 @@ msgid ""
"<literal>Property</literal> instance. You can create a <literal>Property</"
"literal> by calling <literal>Property.forName()</literal>."
msgstr ""
"Uma maneira alternativa de obter um critério é pegá-lo de uma instancia de "
"<literal>Property</literal>. Você pode criar uma <literal>Property</literal> "
"chamando <literal>Property.forName()</literal>."
"Une autre approche pour obtenir un criterion est de le récupérer d'une "
"instance de <literal>Property</literal>. Vous pouvez créer une "
"<literal>Property</literal> en appelant <literal>Property.forName()</"
"literal>."
#. Tag: programlisting
#: query_criteria.xml:63
@ -180,7 +182,7 @@ msgstr ""
#: query_criteria.xml:68
#, no-c-format
msgid "Ordering the results"
msgstr "Ordering the results"
msgstr "Trier les résultats"
#. Tag: para
#: query_criteria.xml:70
@ -189,8 +191,8 @@ msgid ""
"You may order the results using <literal>org.hibernate.criterion.Order</"
"literal>."
msgstr ""
"You may order the results using <literal>org.hibernate.criterion.Order</"
"literal>."
"Vous pouvez trier les résultats en utilisant <literal>org.hibernate."
"criterion.Order</literal>."
#. Tag: programlisting
#: query_criteria.xml:74
@ -229,8 +231,8 @@ msgid ""
"You may easily specify constraints upon related entities by navigating "
"associations using <literal>createCriteria()</literal>."
msgstr ""
"You may easily specify constraints upon related entities by navigating "
"associations using <literal>createCriteria()</literal>."
"Vous pouvez facilement spécifier des contraintes sur des entités liées, par "
"des associations en utilisant <literal>createCriteria()</literal>."
#. Tag: programlisting
#: query_criteria.xml:88
@ -251,15 +253,15 @@ msgid ""
"instance of <literal>Criteria</literal>, which refers to the elements of the "
"<literal>kittens</literal> collection."
msgstr ""
"note that the second <literal>createCriteria()</literal> returns a new "
"instance of <literal>Criteria</literal>, which refers to the elements of the "
"<literal>kittens</literal> collection."
"Notez que la seconde <literal>createCriteria()</literal> retourne une "
"nouvelle instance de <literal>Criteria</literal>, qui se rapporte aux "
"éléments de la collection <literal>kittens</literal>."
#. Tag: para
#: query_criteria.xml:96
#, no-c-format
msgid "The following, alternate form is useful in certain circumstances."
msgstr "The following, alternate form is useful in certain circumstances."
msgstr "La forme alternative suivante est utile dans certains cas."
#. Tag: programlisting
#: query_criteria.xml:100
@ -279,7 +281,7 @@ msgid ""
"(<literal>createAlias()</literal> does not create a new instance of "
"<literal>Criteria</literal>.)"
msgstr ""
"(<literal>createAlias()</literal> does not create a new instance of "
"(<literal>createAlias()</literal> ne crée pas de nouvelle instance de "
"<literal>Criteria</literal>.)"
#. Tag: para
@ -291,10 +293,11 @@ msgid ""
"pre-filtered by the criteria! If you wish to retrieve just the kittens that "
"match the criteria, you must use a <literal>ResultTransformer</literal>."
msgstr ""
"Note that the kittens collections held by the <literal>Cat</literal> "
"instances returned by the previous two queries are <emphasis>not</emphasis> "
"pre-filtered by the criteria! If you wish to retrieve just the kittens that "
"match the criteria, you must use a <literal>ResultTransformer</literal>."
"Notez que les collections kittens contenues dans les instances de "
"<literal>Cat</literal> retournées par les deux précédentes requêtes ne sont "
"<emphasis>pas</emphasis> pré-filtrées par les critères ! Si vous souhaitez "
"récupérer uniquement les kittens qui correspondent à la criteria, vous devez "
"utiliser <literal>ResultTransformer</literal>."
#. Tag: programlisting
#: query_criteria.xml:114
@ -317,7 +320,7 @@ msgstr ""
#: query_criteria.xml:119
#, no-c-format
msgid "Dynamic association fetching"
msgstr "Dynamic association fetching"
msgstr "Peuplement d'associations de manière dynamique"
#. Tag: para
#: query_criteria.xml:121
@ -326,8 +329,10 @@ msgid ""
"You may specify association fetching semantics at runtime using "
"<literal>setFetchMode()</literal>."
msgstr ""
"You may specify association fetching semantics at runtime using "
"<literal>setFetchMode()</literal>."
"Vous pouvez spéficier au moment de l'exécution le peuplement d'une "
"association en utilisant <literal>setFetchMode()</literal> (c'est-à-dire le "
"chargement de celle-ci). Cela permet de surcharger les valeurs \"lazy\" et "
"\"outer-join\" du mapping."
#. Tag: programlisting
#: query_criteria.xml:126
@ -348,15 +353,15 @@ msgid ""
"literal> by outer join. See <xref linkend=\"performance-fetching\"/> for "
"more information."
msgstr ""
"This query will fetch both <literal>mate</literal> and <literal>kittens</"
"literal> by outer join. See <xref linkend=\"performance-fetching\"/> for "
"more information."
"Cette requête recherchera <literal>mate</literal> et <literal>kittens</"
"literal> via les jointures externes. Voir <xref linkend=\"performance-"
"fetching\"/> pour plus d'informations."
#. Tag: title
#: query_criteria.xml:136
#, no-c-format
msgid "Example queries"
msgstr "Example queries"
msgstr "Requêtes par l'exemple"
#. Tag: para
#: query_criteria.xml:138
@ -365,8 +370,8 @@ msgid ""
"The class <literal>org.hibernate.criterion.Example</literal> allows you to "
"construct a query criterion from a given instance."
msgstr ""
"The class <literal>org.hibernate.criterion.Example</literal> allows you to "
"construct a query criterion from a given instance."
"La classe <literal>org.hibernate.criterion.Example</literal> vous permet de "
"construire un critère suivant une instance d'objet donnée."
#. Tag: programlisting
#: query_criteria.xml:143
@ -387,14 +392,16 @@ msgid ""
"Version properties, identifiers and associations are ignored. By default, "
"null valued properties are excluded."
msgstr ""
"Version properties, identifiers and associations are ignored. By default, "
"null valued properties are excluded."
"Les propriétés de type version, identifiant et association sont ignorées. "
"Par défaut, les valeurs null sont exclues."
#. Tag: para
#: query_criteria.xml:150
#, no-c-format
msgid "You can adjust how the <literal>Example</literal> is applied."
msgstr "You can adjust how the <literal>Example</literal> is applied."
msgstr ""
"Vous pouvez ajuster la stratégie d'utilisation de valeurs de "
"l'<literal>Exemple</literal>."
#. Tag: programlisting
#: query_criteria.xml:154
@ -415,7 +422,9 @@ msgstr ""
#: query_criteria.xml:156
#, no-c-format
msgid "You can even use examples to place criteria upon associated objects."
msgstr "You can even use examples to place criteria upon associated objects."
msgstr ""
"Vous pouvez utiliser les \"exemples\" pour des critères sur les objets "
"associés."
#. Tag: programlisting
#: query_criteria.xml:160
@ -432,7 +441,7 @@ msgstr ""
#: query_criteria.xml:165
#, no-c-format
msgid "Projections, aggregation and grouping"
msgstr "Projections, aggregation and grouping"
msgstr "Projections, agrégation et regroupement"
#. Tag: para
#: query_criteria.xml:166
@ -442,9 +451,9 @@ msgid ""
"factory for <literal>Projection</literal> instances. We apply a projection "
"to a query by calling <literal>setProjection()</literal>."
msgstr ""
"The class <literal>org.hibernate.criterion.Projections</literal> is a "
"factory for <literal>Projection</literal> instances. We apply a projection "
"to a query by calling <literal>setProjection()</literal>."
"La classe <literal>org.hibernate.criterion.Projections</literal> est une "
"fabrique d'instances de <literal>Projection</literal>. Nous appliquons une "
"projection sur une requête en appelant <literal>setProjection()</literal>."
#. Tag: programlisting
#: query_criteria.xml:172
@ -478,9 +487,10 @@ msgid ""
"projection types are defined to be <emphasis>grouping projections</"
"emphasis>, which also appear in the SQL <literal>group by</literal> clause."
msgstr ""
"There is no explicit \"group by\" necessary in a criteria query. Certain "
"projection types are defined to be <emphasis>grouping projections</"
"emphasis>, which also appear in the SQL <literal>group by</literal> clause."
"Il n'y a pas besoin de \"group by\" explicite dans une requête par critère. "
"Certains types de projection sont définis pour être des "
"<emphasis>projections de regroupement</emphasis>, lesquels apparaissent "
"aussi dans la clause <literal>group by</literal> SQL."
#. Tag: para
#: query_criteria.xml:182
@ -490,9 +500,9 @@ msgid ""
"value may be referred to in restrictions or orderings. Here are two "
"different ways to do this:"
msgstr ""
"An alias may optionally be assigned to a projection, so that the projected "
"value may be referred to in restrictions or orderings. Here are two "
"different ways to do this:"
"Un alias peut optionnellement être assigné à une projection, ainsi la valeur "
"projetée peut être référencée dans des restrictions ou des tris. Voici deux "
"façons différentes de faire ça :"
#. Tag: programlisting
#: query_criteria.xml:188
@ -524,10 +534,10 @@ msgid ""
"<literal>Projection</literal>. As a shortcut, you can assign an alias when "
"you add the projection to a projection list:"
msgstr ""
"The <literal>alias()</literal> and <literal>as()</literal> methods simply "
"wrap a projection instance in another, aliased, instance of "
"<literal>Projection</literal>. As a shortcut, you can assign an alias when "
"you add the projection to a projection list:"
"Les méthodes <literal>alias()</literal> et <literal>as()</literal> enveloppe "
"simplement une instance de projection dans une autre instance (aliasée) de "
"<literal>Projection</literal>. Comme un raccourci, vous pouvez assignez un "
"alias lorsque vous ajoutez la projection à la liste de projections :"
#. Tag: programlisting
#: query_criteria.xml:199
@ -567,8 +577,8 @@ msgid ""
"You can also use <literal>Property.forName()</literal> to express "
"projections:"
msgstr ""
"You can also use <literal>Property.forName()</literal> to express "
"projections:"
"Vous pouvez aussi utiliser <literal>Property.forName()</literal> pour "
"formuler des projections :"
#. Tag: programlisting
#: query_criteria.xml:207
@ -600,7 +610,7 @@ msgstr ""
#: query_criteria.xml:214
#, no-c-format
msgid "Detached queries and subqueries"
msgstr "Detached queries and subqueries"
msgstr "Requêtes et sous-requêtes détachées"
#. Tag: para
#: query_criteria.xml:215
@ -610,9 +620,9 @@ msgid ""
"outside the scope of a session, and then later execute it using some "
"arbitrary <literal>Session</literal>."
msgstr ""
"The <literal>DetachedCriteria</literal> class lets you create a query "
"outside the scope of a session, and then later execute it using some "
"arbitrary <literal>Session</literal>."
"La classe <literal>DetachedCriteria</literal> vous laisse créer une requête "
"en dehors de la portée de la session, et puis l'exécuter plus tard en "
"utilisant n'importe quelle <literal>Session</literal> arbitraire."
#. Tag: programlisting
#: query_criteria.xml:220
@ -637,9 +647,10 @@ msgid ""
"subquery. Criterion instances involving subqueries may be obtained via "
"<literal>Subqueries</literal> or <literal>Property</literal>."
msgstr ""
"A <literal>DetachedCriteria</literal> may also be used to express a "
"subquery. Criterion instances involving subqueries may be obtained via "
"<literal>Subqueries</literal> or <literal>Property</literal>."
"Une <literal>DetachedCriteria</literal> peut aussi être utilisée pour "
"exprimer une sous-requête. Des instances de criterion impliquant des sous-"
"requêtes peuvent être obtenues via <literal>Subqueries</literal> ou "
"<literal>Property</literal>."
#. Tag: programlisting
#: query_criteria.xml:228
@ -667,7 +678,7 @@ msgstr ""
#: query_criteria.xml:232
#, no-c-format
msgid "Even correlated subqueries are possible:"
msgstr "Even correlated subqueries are possible:"
msgstr "Même des requêtes corrélées sont possibles :"
#. Tag: programlisting
#: query_criteria.xml:236
@ -686,7 +697,7 @@ msgstr ""
#: query_criteria.xml:245
#, no-c-format
msgid "Queries by natural identifier"
msgstr "Queries by natural identifier"
msgstr "Requêtes par identifiant naturel"
#. Tag: para
#: query_criteria.xml:247
@ -699,12 +710,13 @@ msgid ""
"applications, this kind of query occurs frequently. The criteria API "
"provides special provision for this use case."
msgstr ""
"For most queries, including criteria queries, the query cache is not very "
"efficient, because query cache invalidation occurs too frequently. However, "
"there is one special kind of query where we can optimize the cache "
"invalidation algorithm: lookups by a constant natural key. In some "
"applications, this kind of query occurs frequently. The criteria API "
"provides special provision for this use case."
"Pour la plupart des requêtes, incluant les requêtes par critère, le cache de "
"requêtes n'est pas très efficace, parce que l'invalidation du cache de "
"requêtes arrive trop souvent. Cependant, il y a une sorte spéciale de "
"requête où nous pouvons optimiser l'algorithme d'invalidation du cache : les "
"recherches sur une clef naturelle constante. Dans certaines applications, "
"cette sorte de requête se produit fréquemment. L'API de critère fournit une "
"provision spéciale pour ce cas d'utilisation."
#. Tag: para
#: query_criteria.xml:255
@ -713,8 +725,9 @@ msgid ""
"First, you should map the natural key of your entity using <literal>&lt;"
"natural-id&gt;</literal>, and enable use of the second-level cache."
msgstr ""
"First, you should map the natural key of your entity using <literal>&lt;"
"natural-id&gt;</literal>, and enable use of the second-level cache."
"D'abord vous devriez mapper la clef naturelle de votre entité en utilisant "
"<literal>&lt;natural-id&gt;</literal>, et activer l'utilisation du cache de "
"second niveau."
#. Tag: programlisting
#: query_criteria.xml:260
@ -740,14 +753,14 @@ msgid ""
"Note that this functionality is not intended for use with entities with "
"<emphasis>mutable</emphasis> natural keys."
msgstr ""
"Note that this functionality is not intended for use with entities with "
"<emphasis>mutable</emphasis> natural keys."
"Notez que cette fonctionnalité n'est pas prévue pour l'utilisation avec des "
"entités avec des clefs naturelles <emphasis>mutables</emphasis>."
#. Tag: para
#: query_criteria.xml:267
#, no-c-format
msgid "Next, enable the Hibernate query cache."
msgstr "Next, enable the Hibernate query cache."
msgstr "Ensuite, activez le cache de requête d'Hibernate."
#. Tag: para
#: query_criteria.xml:271
@ -756,8 +769,8 @@ msgid ""
"Now, <literal>Restrictions.naturalId()</literal> allows us to make use of "
"the more efficient cache algorithm."
msgstr ""
"Now, <literal>Restrictions.naturalId()</literal> allows us to make use of "
"the more efficient cache algorithm."
"Maintenant <literal>Restrictions.naturalId()</literal> nous permet de rendre "
"l'utilisation de l'algorithme de cache plus efficace."
#. Tag: programlisting
#: query_criteria.xml:276

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@ msgstr ""
#: query_sql.xml:5
#, no-c-format
msgid "Native SQL"
msgstr "Native SQL"
msgstr "SQL natif"
#. Tag: para
#: query_sql.xml:7
@ -26,11 +26,12 @@ msgid ""
"provides a clean migration path from a direct SQL/JDBC based application to "
"Hibernate."
msgstr ""
"You may also express queries in the native SQL dialect of your database. "
"This is useful if you want to utilize database specific features such as "
"query hints or the <literal>CONNECT</literal> keyword in Oracle. It also "
"provides a clean migration path from a direct SQL/JDBC based application to "
"Hibernate."
"Vous pouvez aussi écrire vos requêtes dans le dialecte SQL natif de votre "
"base de données. Ceci est utile si vous souhaitez utiliser les "
"fonctionnalités spécifiques de votre base de données comme le mot clé "
"<literal>CONNECT</literal> d'Oracle. Cette fonctionnalité offre par ailleurs "
"un moyen de migration plus propre et doux d'une application basée sur SQL/"
"JDBC vers une application Hibernate."
#. Tag: para
#: query_sql.xml:13
@ -39,14 +40,15 @@ msgid ""
"Hibernate3 allows you to specify handwritten SQL (including stored "
"procedures) for all create, update, delete, and load operations."
msgstr ""
"Hibernate3 allows you to specify handwritten SQL (including stored "
"procedures) for all create, update, delete, and load operations."
"Hibernate3 vous permet de spécifier du SQL écrit à la main (incluant les "
"procédures stockées) pour toutes les opérations de création, mise à jour, "
"suppression et chargement."
#. Tag: title
#: query_sql.xml:17
#, no-c-format
msgid "Using a <literal>SQLQuery</literal>"
msgstr "Using a <literal>SQLQuery</literal>"
msgstr "Utiliser une <literal>SQLQuery</literal>"
#. Tag: para
#: query_sql.xml:19
@ -57,10 +59,10 @@ msgid ""
"createSQLQuery()</literal>. The following describes how to use this API for "
"querying."
msgstr ""
"Execution of native SQL queries is controlled via the <literal>SQLQuery</"
"literal> interface, which is obtained by calling <literal>Session."
"createSQLQuery()</literal>. The following describes how to use this API for "
"querying."
"L'exécution des requêtes en SQL natif est contrôlée par l'interface "
"<literal>SQLQuery</literal>, laquelle est obtenue en appelant "
"<literal>Session.createSQLQuery()</literal>. Dans des cas extrêmement "
"simples, nous pouvons utiliser la forme suivante :"
#. Tag: title
#: query_sql.xml:25
@ -804,7 +806,7 @@ msgstr ""
#: query_sql.xml:361
#, no-c-format
msgid "Named SQL queries"
msgstr "Named SQL queries"
msgstr "Requêtes SQL nommées"
#. Tag: para
#: query_sql.xml:363
@ -814,9 +816,10 @@ msgid ""
"exactly the same way as a named HQL query. In this case, we do "
"<emphasis>not</emphasis> need to call <literal>addEntity()</literal>."
msgstr ""
"Named SQL queries may be defined in the mapping document and called in "
"exactly the same way as a named HQL query. In this case, we do "
"<emphasis>not</emphasis> need to call <literal>addEntity()</literal>."
"Les requêtes SQL nommées peuvent être définies dans le document de mapping "
"et appelées exactement de la même manière qu'un requête HQL nommée. Dans ce "
"cas, nous <emphasis>n'avons pas besoin</emphasis> d'appeler "
"<literal>addEntity()</literal>."
#. Tag: programlisting
#: query_sql.xml:368
@ -850,9 +853,9 @@ msgid ""
"collection&gt;</literal> elements are used to join associations and define "
"queries which initialize collections, respectively."
msgstr ""
"The <literal>&lt;return-join&gt;</literal> and <literal>&lt;load-"
"collection&gt;</literal> elements are used to join associations and define "
"queries which initialize collections, respectively."
"Les éléments <literal>&lt;return-join&gt;</literal> et <literal>&lt;load-"
"collection&gt;</literal> sont respectivement utilisés pour lier des "
"associations et définir des requêtes qui initialisent des collections."
#. Tag: programlisting
#: query_sql.xml:377
@ -883,9 +886,9 @@ msgid ""
"alias and Hibernate type using the <literal>&lt;return-scalar&gt;</literal> "
"element:"
msgstr ""
"A named SQL query may return a scalar value. You must declare the column "
"alias and Hibernate type using the <literal>&lt;return-scalar&gt;</literal> "
"element:"
"Une requête SQL nommée peut retourner une valeur scalaire. Vous devez "
"spécifier l'alias de colonne et le type Hibernate utilisant l'élément "
"<literal>&lt;return-scalar&gt;</literal> :"
#. Tag: programlisting
#: query_sql.xml:383
@ -908,9 +911,10 @@ msgid ""
"resultset&gt;</literal> element to either reuse them accross several named "
"queries or through the <literal>setResultSetMapping()</literal> API."
msgstr ""
"You can externalize the resultset mapping informations in a <literal>&lt;"
"resultset&gt;</literal> element to either reuse them accross several named "
"queries or through the <literal>setResultSetMapping()</literal> API."
"Vous pouvez externaliser les informations de mapping des résultats dans un "
"élément <literal>&lt;resultset&gt;</literal> pour soit les réutiliser dans "
"différentes requêtes nommées, soit à travers l'API "
"<literal>setResultSetMapping()</literal>."
#. Tag: programlisting
#: query_sql.xml:390
@ -962,7 +966,9 @@ msgstr ""
#: query_sql.xml:398
#, no-c-format
msgid "Using return-property to explicitly specify column/alias names"
msgstr "Using return-property to explicitly specify column/alias names"
msgstr ""
"Utilisation de return-property pour spécifier explicitement les noms des "
"colonnes/alias"
#. Tag: para
#: query_sql.xml:401
@ -972,9 +978,10 @@ msgid ""
"Hibernate what column aliases to use, instead of using the <literal>{}</"
"literal>-syntax to let Hibernate inject its own aliases."
msgstr ""
"With <literal>&lt;return-property&gt;</literal> you can explicitly tell "
"Hibernate what column aliases to use, instead of using the <literal>{}</"
"literal>-syntax to let Hibernate inject its own aliases."
"Avec <literal>&lt;return-property&gt;</literal> vous pouvez explicitement "
"dire à Hibernate quels alias de colonne utiliser, plutot que d'employer la "
"syntaxe <literal>{}</literal> pour laisser Hibernate injecter ses propres "
"alias."
#. Tag: programlisting
#: query_sql.xml:406
@ -1002,9 +1009,9 @@ msgid ""
"This solves a limitation with the <literal>{}</literal>-syntax which can not "
"allow fine grained control of multi-column properties."
msgstr ""
"<literal>&lt;return-property&gt;</literal> also works with multiple columns. "
"This solves a limitation with the <literal>{}</literal>-syntax which can not "
"allow fine grained control of multi-column properties."
"<literal>&lt;return-property&gt;</literal> fonctionne aussi avec de multiple "
"colonnes. Cela résout une limitation de la syntaxe <literal>{}</literal> qui "
"ne peut pas permettre une bonne granularité des propriétés multi-colonnes."
#. Tag: programlisting
#: query_sql.xml:413
@ -1035,9 +1042,10 @@ msgid ""
"literal> in combination with the <literal>{}</literal>-syntax for injection. "
"Allowing users to choose how they want to refer column and properties."
msgstr ""
"Notice that in this example we used <literal>&lt;return-property&gt;</"
"literal> in combination with the <literal>{}</literal>-syntax for injection. "
"Allowing users to choose how they want to refer column and properties."
"Notez que dans cet exemple nous avons utilisé <literal>&lt;return-"
"property&gt;</literal> en combinaison avec la syntaxe <literal>{}</literal> "
"pour l'injection. Cela autorise les utilisateurs à choisir comment ils "
"veulent référencer les colonnes et les propriétés."
#. Tag: para
#: query_sql.xml:420
@ -1046,14 +1054,14 @@ msgid ""
"If your mapping has a discriminator you must use <literal>&lt;return-"
"discriminator&gt;</literal> to specify the discriminator column."
msgstr ""
"If your mapping has a discriminator you must use <literal>&lt;return-"
"discriminator&gt;</literal> to specify the discriminator column."
"Si votre mapping a un discriminant vous devez utiliser <literal>&lt;return-"
"discriminator&gt;</literal> pour spécifier la colonne discriminante."
#. Tag: title
#: query_sql.xml:426
#, no-c-format
msgid "Using stored procedures for querying"
msgstr "Using stored procedures for querying"
msgstr "Utilisation de procédures stockées pour les requêtes"
#. Tag: para
#: query_sql.xml:428
@ -1065,11 +1073,12 @@ msgid ""
"to be able to work with Hibernate. An example of such a stored function in "
"Oracle 9 and higher is as follows:"
msgstr ""
"Hibernate 3 introduces support for queries via stored procedures and "
"functions. Most of the following documentation is equivalent for both. The "
"stored procedure/function must return a resultset as the first out-parameter "
"to be able to work with Hibernate. An example of such a stored function in "
"Oracle 9 and higher is as follows:"
"Hibernate 3 introduit le support des requêtes via procédures stockées et les "
"fonctions. La documentation suivante est valable pour les deux. Les "
"procédures stockées/fonctions doivent retourner l'ensemble de résultats en "
"tant que premier paramètre sortant (NdT: \"out-parameter\") pour être "
"capable de fonctionner avec Hibernate. Un exemple d'une telle procédure "
"stockée en Oracle 9 et version supérieure :"
#. Tag: programlisting
#: query_sql.xml:434
@ -1093,7 +1102,9 @@ msgstr ""
#: query_sql.xml:436
#, no-c-format
msgid "To use this query in Hibernate you need to map it via a named query."
msgstr "To use this query in Hibernate you need to map it via a named query."
msgstr ""
"Pour utiliser cette requête dans Hibernate vous avez besoin de la mapper via "
"une requête nommée."
#. Tag: programlisting
#: query_sql.xml:439
@ -1124,15 +1135,15 @@ msgid ""
"<literal>&lt;return-join&gt;</literal> and <literal>&lt;load-collection&gt;</"
"literal> are not supported."
msgstr ""
"Notice stored procedures currently only return scalars and entities. "
"<literal>&lt;return-join&gt;</literal> and <literal>&lt;load-collection&gt;</"
"literal> are not supported."
"Notez que les procédures stockées retournent, pour le moment, seulement des "
"scalaires et des entités. <literal>&lt;return-join&gt;</literal> et "
"<literal>&lt;load-collection&gt;</literal> ne sont pas supportés."
#. Tag: title
#: query_sql.xml:446
#, no-c-format
msgid "Rules/limitations for using stored procedures"
msgstr "Rules/limitations for using stored procedures"
msgstr "Règles/limitations lors de l'utilisation des procédures stockées"
#. Tag: para
#: query_sql.xml:448
@ -1145,12 +1156,13 @@ msgid ""
"different for each database, since database vendors have different stored "
"procedure semantics/syntax."
msgstr ""
"To use stored procedures with Hibernate the procedures/functions have to "
"follow some rules. If they do not follow those rules they are not usable "
"with Hibernate. If you still want to use these procedures you have to "
"execute them via <literal>session.connection()</literal>. The rules are "
"different for each database, since database vendors have different stored "
"procedure semantics/syntax."
"Pur utiliser des procédures stockées avec Hibernate, les procédures doivent "
"suivre certaines règles. Si elles ne suivent pas ces règles, elles ne sont "
"pas utilisables avec Hibernate. Si vous voulez encore utiliser ces "
"procédures vous devez les exécuter via <literal>session.connection()</"
"literal>. Les règles sont différentes pour chaque base de données, puisque "
"les vendeurs de base de données ont des sémantiques/syntaxes différentes "
"pour les procédures stockées."
#. Tag: para
#: query_sql.xml:455
@ -1159,8 +1171,8 @@ msgid ""
"Stored procedure queries can't be paged with <literal>setFirstResult()/"
"setMaxResults()</literal>."
msgstr ""
"Stored procedure queries can't be paged with <literal>setFirstResult()/"
"setMaxResults()</literal>."
"Les requêtes de procédures stockées ne peuvent pas être paginées avec "
"<literal>setFirstResult()/setMaxResults()</literal>."
#. Tag: para
#: query_sql.xml:458
@ -1178,7 +1190,7 @@ msgstr ""
#: query_sql.xml:463
#, no-c-format
msgid "For Oracle the following rules apply:"
msgstr "For Oracle the following rules apply:"
msgstr "Pour Oracle les règles suivantes s'appliquent :"
#. Tag: para
#: query_sql.xml:467
@ -1190,17 +1202,17 @@ msgid ""
"you need to define a <literal>REF CURSOR</literal> type, see Oracle "
"literature."
msgstr ""
"A funçãp deve retornar um result set. O primeiro parâmetro da procedure "
"dever ser uma <literal>SAÍDA</literal> que retorne um result set. Isto é "
"feito usando o tipo a <literal>SYS_REFCURSOR</literal> no Oracle 9 ou 10. No "
"Oracle é necessário definir o tipo <literal>REF CURSOR</literal>, veja a "
"documentação do Oracle."
"La procédure doit retourner un ensemble de résultats. Le prmeier paramètre "
"d'une procédure doit être un <literal>OUT</literal> qui retourne un ensemble "
"de résultats. Ceci est fait en retournant un <literal>SYS_REFCURSOR</"
"literal> dans Oracle 9 ou 10. Dans Oracle vous avez besoin de définir un "
"type <literal>REF CURSOR</literal>."
#. Tag: para
#: query_sql.xml:476
#, no-c-format
msgid "For Sybase or MS SQL server the following rules apply:"
msgstr "For Sybase or MS SQL server the following rules apply:"
msgstr "Pour Sybase ou MS SQL server les règles suivantes s'appliquent :"
#. Tag: para
#: query_sql.xml:480
@ -1211,10 +1223,11 @@ msgid ""
"the results and take the first result that is a result set as its return "
"value. Everything else will be discarded."
msgstr ""
"A procedure deve retornar um result set. Veja que este servidor pode "
"retornar múltiplos result sets e update counts. O Hibernate ira iterar os "
"resultados e pegar o primeiro resultado que é o valor de retorno do result "
"set. O resto será descartado."
"La procédure doit retourner un ensemble de résultats. Notez que comme ces "
"serveurs peuvent retourner de multiples ensembles de résultats et mettre à "
"jour des compteurs, Hibernate itérera les résultats et prendra le premier "
"résultat qui est un ensemble de résultat comme valeur de retour. Tout le "
"reste sera ignoré."
#. Tag: para
#: query_sql.xml:488
@ -1223,14 +1236,15 @@ msgid ""
"If you can enable <literal>SET NOCOUNT ON</literal> in your procedure it "
"will probably be more efficient, but this is not a requirement."
msgstr ""
"Se você habilitar <literal>SET NOCOUNT ON</literal> na sua procedure, ela "
"provavelmente será mais eficiente. Mas, isto não é obrigatório"
"Si vous pouvez activer <literal>SET NOCOUNT ON</literal> dans votre "
"procédure, elle sera probablement plus efficace, mais ce n'est pas une "
"obligation."
#. Tag: title
#: query_sql.xml:498
#, no-c-format
msgid "Custom SQL for create, update and delete"
msgstr "SQL customizado para create, update e delete"
msgstr "SQL personnalisé pour créer, mettre à jour et effacer"
#. Tag: para
#: query_sql.xml:500
@ -1243,17 +1257,13 @@ msgid ""
"<literal>&lt;sql-delete&gt;</literal>, and <literal>&lt;sql-update&gt;</"
"literal> override these strings:"
msgstr ""
"Hibernate3 can use custom SQL statements for create, update, and delete "
"operations. The class and collection persisters in Hibernate already contain "
"a set of configuration time generated strings (insertsql, deletesql, "
"updatesql etc.). The mapping tags <literal>&lt;sql-insert&gt;</literal>, "
"<literal>&lt;sql-delete&gt;</literal>, and <literal>&lt;sql-update&gt;</"
"literal> override these strings: Hibernate3 pode usar SQL customizado para "
"operações de create, update e delete. A persistência de classe e collection "
"no hibernate já contem alguma strings de configurações (insertsql, "
"deletesql, updatesql etc.). O mapaemento das tags <literal>&lt;sql-insert&gt;"
"</literal>, <literal>&lt;sql-delete&gt;</literal>, e <literal>&lt;sql-"
"update&gt;</literal> sobreecreve essas strings:"
"Hibernate3 peut utiliser des expression SQL personnalisées pour des "
"opérations de création, de mise à jour, et de suppression. Les objets "
"persistants les classes et les collections dans Hibernate contiennent déjà "
"un ensemble de chaînes de caractères générées lors de la configuration "
"(insertsql, deletesql, updatesql, etc). Les tages de mapping <literal>&lt;"
"sql-insert&gt;</literal>, <literal>&lt;sql-delete&gt;</literal>, et "
"<literal>&lt;sql-update&gt;</literal> surchargent ces chaînes de caractères :"
#. Tag: programlisting
#: query_sql.xml:508
@ -1279,9 +1289,10 @@ msgid ""
"dialect you like. This will of course reduce the portability of your mapping "
"if you use database specific SQL."
msgstr ""
"O SQL é executado diretamente no seu banco de dados, então você pode usar "
"qualquer linguagem que quiser. Isto com certeza reduzira a portabilidade do "
"seu mapeamento se você utilizar um SQL para um banco de dados especifico."
"Le SQL est directement exécuté dans votre base de données, donc vous êtes "
"libre d'utiliser le dialecte que vous souhaitez. Cela réduira bien sûr la "
"portabilité de votre mapping si vous utilisez du SQL spécifique à votre base "
"de données."
#. Tag: para
#: query_sql.xml:514
@ -1290,8 +1301,8 @@ msgid ""
"Stored procedures are supported if the <literal>callable</literal> attribute "
"is set:"
msgstr ""
"Stored Procedures são suportadas se o atributo the <literal>callable</"
"literal> estiver ativado:"
"Les procédures stockées sont supportées si l'attribut <literal>callable</"
"literal> est paramétré :"
#. Tag: programlisting
#: query_sql.xml:517
@ -1316,8 +1327,8 @@ msgid ""
"The order of the positional parameters are currently vital, as they must be "
"in the same sequence as Hibernate expects them."
msgstr ""
"A ordem de posições dos parâmetros são vitais, pois eles devem estar na "
"mesma seqüência esperada pelo Hibernate."
"L'ordre des paramètres positionnels est actuellement vital, car ils doivent "
"être dans la même séquence qu'Hibernate les attend."
#. Tag: para
#: query_sql.xml:522
@ -1330,12 +1341,13 @@ msgid ""
"include your custom SQL in the mapping files as that will override the "
"Hibernate generated static sql.)"
msgstr ""
"Você pode ver a ordem esperada ativando o debug logging no nível "
"<literal>org.hibernate.persister.entity</literal>. Com este nível ativado, o "
"Hibernate irá imprimir o SQL estático que foi usado para create, update, "
"delete, etc. Entidades. (Para ver a seqüência esperada, lembre-se de não "
"incluir seu SQL customizado no arquivo de mapeamento, pois ele irá "
"sobreecreve o SQL estático gerado pelo Hibernate)."
"Vous pouvez voir l'ordre attendu en activant les journaux de debug pour le "
"niveau <literal>org.hibernate.persister.entity</literal> level. Avec ce "
"niveau activé, Hibernate imprimera le SQL statique qui est utilisé pour "
"créer, mettre à jour, supprimer, etc. des entités. (Pour voir la séquence "
"attendue, rappelez-vous de ne pas inclure votre SQL personnalisé dans les "
"fichiers de mapping de manière à surcharger le SQL statique généré par "
"Hibernate.)"
#. Tag: para
#: query_sql.xml:529
@ -1347,11 +1359,11 @@ msgid ""
"registers the first statement parameter as a numeric output parameter for "
"the CUD operations:"
msgstr ""
"As stored procedures são na maioria dos casos (leia: melhor não fazer) "
"requeridas para retornar o numero de linhas inseridas/atualizadas/deletadas. "
"O hibernate tem algumas verificações em tempo de execução para o sucesso da "
"declaração. Hibernate sempre registra o primeiro parâmetro da declaração "
"como uma saída numérica para operações CRUD."
"Les procédures stockées sont dans la plupart des cas (lire : il vaut mieux "
"le faire) requises pour retourner le nombre de lignes insérées/mises à jour/"
"supprimées, puisque Hibernate fait quelques vérifications de succès lors de "
"l'exécution de l'expression. Hibernate inscrit toujours la première "
"expression comme un paramètre de sortie numérique pour les opérations CUD :"
#. Tag: programlisting
#: query_sql.xml:535
@ -1377,14 +1389,15 @@ msgstr ""
#: query_sql.xml:539
#, no-c-format
msgid "Custom SQL for loading"
msgstr "SQL customizado para carga"
msgstr "SQL personnalisé pour le chargement"
#. Tag: para
#: query_sql.xml:541
#, no-c-format
msgid "You may also declare your own SQL (or HQL) queries for entity loading:"
msgstr ""
"Você pode declarar sua própria query SQL (ou HQL) para iniciar entidades:"
"Vous pouvez aussi déclarer vos propres requêtes SQL (ou HQL) pour le "
"chargement d'entité :"
#. Tag: programlisting
#: query_sql.xml:544
@ -1406,9 +1419,8 @@ msgid ""
"This is just a named query declaration, as discussed earlier. You may "
"reference this named query in a class mapping:"
msgstr ""
"Este é apenas uma declaração de query com nome, como discutido "
"anteriormente. Você pode referenciar esta query com nome em um mapeamento de "
"classe:"
"Ceci est juste une déclaration de requête nommée, comme vu plus tôt. Vous "
"pouvez référencer cette requête nommée dans un mapping de classe :"
#. Tag: programlisting
#: query_sql.xml:549
@ -1427,13 +1439,14 @@ msgstr ""
#: query_sql.xml:551
#, no-c-format
msgid "This even works with stored procedures."
msgstr "Isto também funciona com stored procedures."
msgstr "Ceci fonctionne même avec des procédures stockées."
#. Tag: para
#: query_sql.xml:553
#, no-c-format
msgid "You may even define a query for collection loading:"
msgstr "Você pode tembém definir uma query para iniciar collection:"
msgstr ""
"Vous pouvez même définir une requête pour le chargement d'une collection :"
#. Tag: programlisting
#: query_sql.xml:555
@ -1466,8 +1479,8 @@ msgid ""
"You could even define an entity loader that loads a collection by join "
"fetching:"
msgstr ""
"You could even define an entity loader that loads a collection by join "
"fetching:"
"Vous pourriez même définir un chargeur d'entité qui charge une collection "
"par jointure :"
#. Tag: programlisting
#: query_sql.xml:562

View File

@ -14,7 +14,7 @@ msgstr ""
#: toolset_guide.xml:5
#, no-c-format
msgid "Toolset Guide"
msgstr "Toolset Guide"
msgstr "Guide des outils"
#. Tag: para
#: toolset_guide.xml:7
@ -23,8 +23,9 @@ msgid ""
"Roundtrip engineering with Hibernate is possible using a set of Eclipse "
"plugins, commandline tools, as well as Ant tasks."
msgstr ""
"Roundtrip engineering with Hibernate is possible using a set of Eclipse "
"plugins, commandline tools, as well as Ant tasks."
"Des outils en ligne de commande, des plugins Eclipse ainsu que des tâches "
"Ant permettent de gérer de cycles de développement complet de projets "
"utilisant Hibernate."
#. Tag: para
#: toolset_guide.xml:12
@ -34,9 +35,9 @@ msgid ""
"Eclipse IDE as well as Ant tasks for reverse engineering of existing "
"databases:"
msgstr ""
"The <emphasis>Hibernate Tools</emphasis> currently include plugins for the "
"Eclipse IDE as well as Ant tasks for reverse engineering of existing "
"databases:"
"Les <emphasis>outils Hibernate</emphasis> actuels incluent des plugins pour "
"l'IDE Eclipse ainsi que des tâches Ant pour l'ingénierie inverse de bases de "
"données existantes :"
#. Tag: para
#: toolset_guide.xml:18
@ -47,10 +48,11 @@ msgid ""
"semantic auto-completion for class names and property/field names, making it "
"much more versatile than a normal XML editor."
msgstr ""
"<emphasis>Mapping Editor:</emphasis> An editor for Hibernate XML mapping "
"files, supporting auto-completion and syntax highlighting. It also supports "
"semantic auto-completion for class names and property/field names, making it "
"much more versatile than a normal XML editor."
"<emphasis>Mapping Editor :</emphasis> un éditeur pour les fichiers de "
"mapping XML Hibernate, supportant l'auto-complétion et la mise en valeur de "
"la syntaxe. Il supporte aussi l'auto-complétion automatique pour les noms de "
"classes et les noms de propriété/champ, le rendant beaucoup plus polyvalent "
"qu'un éditeurXML normal."
#. Tag: para
#: toolset_guide.xml:23
@ -62,11 +64,11 @@ msgid ""
"console allows you to execute HQL queries against your database and browse "
"the result directly in Eclipse."
msgstr ""
"<emphasis>Console:</emphasis> The console is a new view in Eclipse. In "
"addition to a tree overview of your console configurations, you also get an "
"interactive view of your persistent classes and their relationships. The "
"console allows you to execute HQL queries against your database and browse "
"the result directly in Eclipse."
"<emphasis>Console :</emphasis> la console est une nouvelle vue d'Eclipse. En "
"plus de la vue d'ensemble arborescente de vos configurations de console, "
"vous obtenez aussi une vue interactive de vos classes persistantes et de "
"leurs relations. La console vous permet d'exécuter des requête HQL dans "
"votre base de données et de parcourir les résultats directement dans Eclipse."
#. Tag: para
#: toolset_guide.xml:30
@ -79,18 +81,18 @@ msgid ""
"mapping files. The reverse engineering wizard supports customizable "
"templates."
msgstr ""
"<emphasis>Development Wizards:</emphasis> Several wizards are provided with "
"the Hibernate Eclipse tools; you can use a wizard to quickly generate "
"Hibernate configuration (cfg.xml) files, or you may even completely reverse "
"engineer an existing database schema into POJO source files and Hibernate "
"mapping files. The reverse engineering wizard supports customizable "
"templates."
"<emphasis>Development Wizards :</emphasis> plusieurs assistants sont fournis "
"avec les outils d'Hibernate pour Eclipse ; vous pouvez utiliser un assistant "
"pour générer rapidement les fichiers de configuration d'Hibernate (cfg.xml), "
"ou vous pouvez même complètement générer les fichiers de mapping Hibernate "
"et les sources des POJOs à partir d'un schéma de base de données existant. "
"L'assistant d'ingénierie inverse supporte les modèles utilisateur."
#. Tag: emphasis
#: toolset_guide.xml:38
#, no-c-format
msgid "Ant Tasks:"
msgstr "Ant Tasks:"
msgstr "Tâches Ant :"
#. Tag: para
#: toolset_guide.xml:43
@ -99,8 +101,8 @@ msgid ""
"Please refer to the <emphasis>Hibernate Tools</emphasis> package and it's "
"documentation for more information."
msgstr ""
"Please refer to the <emphasis>Hibernate Tools</emphasis> package and it's "
"documentation for more information."
"Veuillez-vous référer au paquet <emphasis>outils Hibernate</emphasis> et sa "
"documentation pour plus d'informations."
#. Tag: para
#: toolset_guide.xml:48
@ -110,15 +112,16 @@ msgid ""
"(it can even be used from \"inside\" Hibernate on-the-fly): "
"<emphasis>SchemaExport</emphasis> aka <literal>hbm2ddl</literal>."
msgstr ""
"However, the Hibernate main package comes bundled with an integrated tool "
"(it can even be used from \"inside\" Hibernate on-the-fly): "
"<emphasis>SchemaExport</emphasis> aka <literal>hbm2ddl</literal>."
"Pourtant, le paquet principal d'Hibernate arrive avec un lot d'outils "
"intégrés (il peut même être utilisé de \"l'intérieur\" d'Hibernate à la "
"volée) : <emphasis>SchemaExport</emphasis> aussi connu comme "
"<literal>hbm2ddl</literal>."
#. Tag: title
#: toolset_guide.xml:55
#, no-c-format
msgid "Automatic schema generation"
msgstr "Automatic schema generation"
msgstr "Génération automatique du schéma"
#. Tag: para
#: toolset_guide.xml:57
@ -129,10 +132,11 @@ msgid ""
"foreign keys) for entity and collection tables. Tables and sequences are "
"also created for mapped identifier generators."
msgstr ""
"DDL may be generated from your mapping files by a Hibernate utility. The "
"generated schema includes referential integrity constraints (primary and "
"foreign keys) for entity and collection tables. Tables and sequences are "
"also created for mapped identifier generators."
"La DDL peut être générée à partir de vos fichiers de mapping par un "
"utilitaire d'Hibernate. Le schéma généré inclut les contraintes d'intégrité "
"référentielle (clefs primaires et étrangères) pour les tables d'entités et "
"de collections. Les tables et les séquences sont aussi créées pour les "
"générateurs d'identifiant mappés."
#. Tag: para
#: toolset_guide.xml:64
@ -142,21 +146,23 @@ msgid ""
"the <literal>hibernate.dialect</literal> property when using this tool, as "
"DDL is highly vendor specific."
msgstr ""
"You <emphasis>must</emphasis> specify a SQL <literal>Dialect</literal> via "
"the <literal>hibernate.dialect</literal> property when using this tool, as "
"DDL is highly vendor specific."
"Vous <emphasis>devez</emphasis> spécifier un <literal>Dialect</literal> SQL "
"via la propriété <literal>hibernate.dialect</literal> lors de l'utilisation "
"de cet outils, puisque la DDL est fortement dépendante de la base de données."
#. Tag: para
#: toolset_guide.xml:70
#, no-c-format
msgid "First, customize your mapping files to improve the generated schema."
msgstr "First, customize your mapping files to improve the generated schema."
msgstr ""
"D'abord, personnalisez vos fichiers de mapping pour améliorer le schéma "
"généré."
#. Tag: title
#: toolset_guide.xml:75
#, no-c-format
msgid "Customizing the schema"
msgstr "Customizing the schema"
msgstr "Personnaliser le schéma"
#. Tag: para
#: toolset_guide.xml:77
@ -167,10 +173,10 @@ msgid ""
"literal>. You may set the length, precision and scale of a column with this "
"attribute."
msgstr ""
"Many Hibernate mapping elements define optional attributes named "
"<literal>length</literal>, <literal>precision</literal> and <literal>scale</"
"literal>. You may set the length, precision and scale of a column with this "
"attribute."
"Plusieurs éléments du mapping hibernate définissent des attributs optionnels "
"nommés <literal>length</literal>, <literal>precision</literal> et "
"<literal>scale</literal>. Vous pouvez paramétrer la longueur, la "
"précision,... d'une colonne avec ces attributs."
#. Tag: programlisting
#: toolset_guide.xml:84
@ -193,10 +199,10 @@ msgid ""
"<literal>unique</literal> attribute (for generating <literal>UNIQUE</"
"literal> constraint on table columns)."
msgstr ""
"Some tags also accept a <literal>not-null</literal> attribute (for "
"generating a <literal>NOT NULL</literal> constraint on table columns) and a "
"<literal>unique</literal> attribute (for generating <literal>UNIQUE</"
"literal> constraint on table columns)."
"Certains éléments acceptent aussi un attribut <literal>not-null</literal> "
"(utilisé pour générer les contraintes de colonnes <literal>NOT NULL</"
"literal>) et un attribut <literal>unique</literal> (pour générer une "
"contrainte de colonne <literal>UNIQUE</literal>)."
#. Tag: programlisting
#: toolset_guide.xml:93
@ -223,11 +229,11 @@ msgid ""
"name the constraint in the generated DDL, only to group the columns in the "
"mapping file."
msgstr ""
"A <literal>unique-key</literal> attribute may be used to group columns in a "
"single unique key constraint. Currently, the specified value of the "
"<literal>unique-key</literal> attribute is <emphasis>not</emphasis> used to "
"name the constraint in the generated DDL, only to group the columns in the "
"mapping file."
"Un attribut <literal>unique-key</literal> peut être utilisé pour grouper les "
"colonnes en une seule contrainte d'unicité. Actuellement, la valeur "
"spécifiée par l'attribut <literal>unique-key</literal> n'est <emphasis>pas</"
"emphasis> utilisée pour nommer la contrainte dans le DDL généré, elle sert "
"juste à grouper les colonnes dans le fichier de mapping."
#. Tag: programlisting
#: toolset_guide.xml:105
@ -246,9 +252,9 @@ msgid ""
"will be created using the mapped column or columns. Multiple columns may be "
"grouped into the same index, simply by specifying the same index name."
msgstr ""
"An <literal>index</literal> attribute specifies the name of an index that "
"will be created using the mapped column or columns. Multiple columns may be "
"grouped into the same index, simply by specifying the same index name."
"Un attribut <literal>index</literal> indique le nom d'un index qui sera créé "
"en utilisant la ou les colonnes mappées. Plusieurs colonnes peuvent être "
"groupées dans un même index, en spécifiant le même nom d'index."
#. Tag: programlisting
#: toolset_guide.xml:113
@ -265,8 +271,8 @@ msgid ""
"A <literal>foreign-key</literal> attribute may be used to override the name "
"of any generated foreign key constraint."
msgstr ""
"A <literal>foreign-key</literal> attribute may be used to override the name "
"of any generated foreign key constraint."
"Un attribut <literal>foreign-key</literal> peut être utilisé pour surcharger "
"le nom des clés étrangères générées."
#. Tag: programlisting
#: toolset_guide.xml:120
@ -283,8 +289,8 @@ msgid ""
"Many mapping elements also accept a child <literal>&lt;column&gt;</literal> "
"element. This is particularly useful for mapping multi-column types:"
msgstr ""
"Many mapping elements also accept a child <literal>&lt;column&gt;</literal> "
"element. This is particularly useful for mapping multi-column types:"
"Plusieurs éléments de mapping acceptent aussi un élément fils <literal>&lt;"
"column&gt;</literal>. Ceci est utile pour les type multi-colonnes:"
#. Tag: programlisting
#: toolset_guide.xml:127
@ -307,9 +313,10 @@ msgid ""
"for a column (you should assign the same value to the mapped property before "
"saving a new instance of the mapped class)."
msgstr ""
"The <literal>default</literal> attribute lets you specify a default value "
"for a column (you should assign the same value to the mapped property before "
"saving a new instance of the mapped class)."
"L'attribut <literal>default</literal> vous laisse spécifier une valeur par "
"défaut pour une colonnes (vous devriez assigner la même valeur à la "
"propriété mappée avant de sauvegarder une nouvelle instance de la classe "
"mappée)."
#. Tag: programlisting
#: toolset_guide.xml:135
@ -336,8 +343,8 @@ msgid ""
"The <literal>sql-type</literal> attribute allows the user to override the "
"default mapping of a Hibernate type to SQL datatype."
msgstr ""
"The <literal>sql-type</literal> attribute allows the user to override the "
"default mapping of a Hibernate type to SQL datatype."
"L'attribut <literal>sql-type</literal> laisse l'utilisateur surcharger le "
"mapping par défaut du type Hibernate vers un type SQL."
#. Tag: programlisting
#: toolset_guide.xml:144
@ -355,8 +362,8 @@ msgid ""
"The <literal>check</literal> attribute allows you to specify a check "
"constraint."
msgstr ""
"The <literal>check</literal> attribute allows you to specify a check "
"constraint."
"L'attribut <literal>check</literal> permet de spécifier une contrainte de "
"vérification."
#. Tag: programlisting
#: toolset_guide.xml:150
@ -387,19 +394,19 @@ msgstr "Summary"
#: toolset_guide.xml:163
#, no-c-format
msgid "Attribute"
msgstr "Attribute"
msgstr "Attribut"
#. Tag: entry
#: toolset_guide.xml:164
#, no-c-format
msgid "Values"
msgstr "Values"
msgstr "Valeur"
#. Tag: entry
#: toolset_guide.xml:165
#, no-c-format
msgid "Interpretation"
msgstr "Interpretation"
msgstr "Interprétation"
#. Tag: literal
#: toolset_guide.xml:170
@ -411,13 +418,13 @@ msgstr "length"
#: toolset_guide.xml:171 toolset_guide.xml:176 toolset_guide.xml:181
#, no-c-format
msgid "number"
msgstr "number"
msgstr "numérique"
#. Tag: entry
#: toolset_guide.xml:172
#, no-c-format
msgid "column length"
msgstr "column length"
msgstr "taille d'une colonne"
#. Tag: literal
#: toolset_guide.xml:175
@ -429,7 +436,7 @@ msgstr "precision"
#: toolset_guide.xml:177
#, no-c-format
msgid "column decimal precision"
msgstr "column decimal precision"
msgstr "précision décimale de la colonne"
#. Tag: literal
#: toolset_guide.xml:180
@ -441,7 +448,7 @@ msgstr "scale"
#: toolset_guide.xml:182
#, no-c-format
msgid "column decimal scale"
msgstr "column decimal scale"
msgstr "scale décimale de la colonne"
#. Tag: literal
#: toolset_guide.xml:185
@ -459,7 +466,7 @@ msgstr "true|false"
#: toolset_guide.xml:187
#, no-c-format
msgid "specfies that the column should be non-nullable"
msgstr "specfies that the column should be non-nullable"
msgstr "spécifie que la colonne doit être non-nulle"
#. Tag: literal
#: toolset_guide.xml:190
@ -471,7 +478,7 @@ msgstr "unique"
#: toolset_guide.xml:192
#, no-c-format
msgid "specifies that the column should have a unique constraint"
msgstr "specifies that the column should have a unique constraint"
msgstr "spécifie que la colonne doit avoir une contrainte d'unicité"
#. Tag: literal
#: toolset_guide.xml:195
@ -489,7 +496,7 @@ msgstr "index_name"
#: toolset_guide.xml:197
#, no-c-format
msgid "specifies the name of a (multi-column) index"
msgstr "specifies the name of a (multi-column) index"
msgstr "spécifie le nom d'un index (multi-colonnes)"
#. Tag: literal
#: toolset_guide.xml:200
@ -507,7 +514,7 @@ msgstr "unique_key_name"
#: toolset_guide.xml:202
#, no-c-format
msgid "specifies the name of a multi-column unique constraint"
msgstr "specifies the name of a multi-column unique constraint"
msgstr "spécifie le nom d'une contrainte d'unicité multi-colonnes"
#. Tag: literal
#: toolset_guide.xml:205
@ -531,10 +538,11 @@ msgid ""
"to-many&gt;</literal> mapping element. Note that <literal>inverse=\"true\"</"
"literal> sides will not be considered by <literal>SchemaExport</literal>."
msgstr ""
"specifies the name of the foreign key constraint generated for an "
"association, for a <placeholder-1/>, <placeholder-2/>, <placeholder-3/>, or "
"<placeholder-4/> mapping element. Note that <placeholder-5/> sides will not "
"be considered by <placeholder-6/>."
"spécifie le nom d'une contrainte de clé étrangère générée pour une "
"association, utilisez-la avec les éléments de mapping <placeholder-1/>, "
"<placeholder-2/>, <placeholder-3/>, or <placeholder-4/> Notez que les "
"extrêmités <placeholder-5/> se seront pas prises en compte par <placeholder-"
"6/>."
#. Tag: literal
#: toolset_guide.xml:217
@ -546,7 +554,7 @@ msgstr "sql-type"
#: toolset_guide.xml:218
#, no-c-format
msgid "SQL column type"
msgstr "SQL column type"
msgstr "SQL column_type"
#. Tag: entry
#: toolset_guide.xml:219
@ -555,8 +563,8 @@ msgid ""
"overrides the default column type (attribute of <literal>&lt;column&gt;</"
"literal> element only)"
msgstr ""
"overrides the default column type (attribute of <placeholder-1/> element "
"only)"
"surcharge le type par défaut (attribut de l'élément <placeholder-1/> "
"uniquement)"
#. Tag: literal
#: toolset_guide.xml:225
@ -566,15 +574,19 @@ msgstr "default"
#. Tag: entry
#: toolset_guide.xml:226 toolset_guide.xml:233
#, no-c-format
#, fuzzy, no-c-format
msgid "SQL expression"
msgstr "SQL expression"
msgstr ""
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"expression SQL\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"SQL expression"
#. Tag: entry
#: toolset_guide.xml:227
#, no-c-format
msgid "specify a default value for the column"
msgstr "specify a default value for the column"
msgstr "spécifie une valeur par défaut pour la colonne"
#. Tag: literal
#: toolset_guide.xml:232
@ -586,7 +598,7 @@ msgstr "check"
#: toolset_guide.xml:234
#, no-c-format
msgid "create an SQL check constraint on either column or table"
msgstr "create an SQL check constraint on either column or table"
msgstr "crée une contrainte de vérification sur la table ou la colonne"
#. Tag: para
#: toolset_guide.xml:242
@ -595,8 +607,8 @@ msgid ""
"The <literal>&lt;comment&gt;</literal> element allows you to specify "
"comments for the generated schema."
msgstr ""
"The <literal>&lt;comment&gt;</literal> element allows you to specify "
"comments for the generated schema."
"L'élément <literal>&lt;comment&gt;</literal> vous permet de spécifier un "
"commentaire pour le schéma généré."
#. Tag: programlisting
#: toolset_guide.xml:247
@ -626,14 +638,14 @@ msgid ""
"This results in a <literal>comment on table</literal> or <literal>comment on "
"column</literal> statement in the generated DDL (where supported)."
msgstr ""
"This results in a <literal>comment on table</literal> or <literal>comment on "
"column</literal> statement in the generated DDL (where supported)."
"Ceci a pour résultat une expression <literal>comment on table</literal> ou "
"<literal>comment on column</literal> dans la DDL générée (où supportée)."
#. Tag: title
#: toolset_guide.xml:260
#, no-c-format
msgid "Running the tool"
msgstr "Running the tool"
msgstr "Exécuter l'outil"
#. Tag: para
#: toolset_guide.xml:262
@ -642,8 +654,8 @@ msgid ""
"The <literal>SchemaExport</literal> tool writes a DDL script to standard out "
"and/or executes the DDL statements."
msgstr ""
"The <literal>SchemaExport</literal> tool writes a DDL script to standard out "
"and/or executes the DDL statements."
"L'outil <literal>SchemaExport</literal> génère un script DDL vers la sortie "
"standard et/ou exécute les ordres DDL."
#. Tag: para
#: toolset_guide.xml:267
@ -658,7 +670,7 @@ msgstr ""
#: toolset_guide.xml:273
#, no-c-format
msgid "<literal>SchemaExport</literal> Command Line Options"
msgstr "<literal>SchemaExport</literal> Command Line Options"
msgstr "<literal>SchemaExport</literal> Options de la ligne de commande"
#. Tag: entry
#: toolset_guide.xml:279 toolset_guide.xml:429 toolset_guide.xml:498
@ -681,9 +693,13 @@ msgstr "--quiet"
#. Tag: entry
#: toolset_guide.xml:286 toolset_guide.xml:436
#, no-c-format
#, fuzzy, no-c-format
msgid "don't output the script to stdout"
msgstr "don't output the script to stdout"
msgstr ""
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"ne pas écrire le script vers la sortie standard\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"ne pas écrire vers la sortie standard"
#. Tag: literal
#: toolset_guide.xml:289
@ -695,7 +711,7 @@ msgstr "--drop"
#: toolset_guide.xml:290
#, no-c-format
msgid "only drop the tables"
msgstr "only drop the tables"
msgstr "supprime seuleument les tables"
#. Tag: literal
#: toolset_guide.xml:293
@ -707,7 +723,7 @@ msgstr "--create"
#: toolset_guide.xml:294
#, no-c-format
msgid "only create the tables"
msgstr "only create the tables"
msgstr "ne créé que les tables"
#. Tag: literal
#: toolset_guide.xml:297 toolset_guide.xml:439
@ -719,7 +735,7 @@ msgstr "--text"
#: toolset_guide.xml:298
#, no-c-format
msgid "don't export to the database"
msgstr "don't export to the database"
msgstr "ne pas exécuter sur la base de données"
#. Tag: literal
#: toolset_guide.xml:301
@ -731,7 +747,7 @@ msgstr "--output=my_schema.ddl"
#: toolset_guide.xml:302
#, no-c-format
msgid "output the ddl script to a file"
msgstr "output the ddl script to a file"
msgstr "écrit le script ddl vers un fichier"
#. Tag: literal
#: toolset_guide.xml:305 toolset_guide.xml:443 toolset_guide.xml:504
@ -743,7 +759,7 @@ msgstr "--naming=eg.MyNamingStrategy"
#: toolset_guide.xml:306 toolset_guide.xml:444 toolset_guide.xml:505
#, fuzzy, no-c-format
msgid "select a <literal>NamingStrategy</literal>"
msgstr "in <literal>hibernate.properties</literal>"
msgstr "dans <literal>hibernate.properties</literal>"
#. Tag: literal
#: toolset_guide.xml:309 toolset_guide.xml:451 toolset_guide.xml:512
@ -755,7 +771,7 @@ msgstr "--config=hibernate.cfg.xml"
#: toolset_guide.xml:310
#, no-c-format
msgid "read Hibernate configuration from an XML file"
msgstr "read Hibernate configuration from an XML file"
msgstr "lit la configuration Hibernate à partir d'un fichier XML"
#. Tag: literal
#: toolset_guide.xml:313 toolset_guide.xml:447 toolset_guide.xml:508
@ -765,9 +781,15 @@ msgstr "--properties=hibernate.properties"
#. Tag: entry
#: toolset_guide.xml:314 toolset_guide.xml:448 toolset_guide.xml:509
#, no-c-format
#, fuzzy, no-c-format
msgid "read database properties from a file"
msgstr "read database properties from a file"
msgstr ""
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"lit les propriétés de la base de données à partir d'un fichier\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"lire les propriétés de la base de données à partir d'un fichier\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"lit les propriétés dela base de données depuis un fichier de propriétés"
#. Tag: literal
#: toolset_guide.xml:317
@ -779,26 +801,27 @@ msgstr "--format"
#: toolset_guide.xml:318
#, no-c-format
msgid "format the generated SQL nicely in the script"
msgstr "format the generated SQL nicely in the script"
msgstr "formatte proprement le SQL généré dans le script"
#. Tag: literal
#: toolset_guide.xml:321
#, no-c-format
msgid "--delimiter=;"
msgstr "--delimiter=;"
msgstr "--delimiter=x"
#. Tag: entry
#: toolset_guide.xml:322
#, no-c-format
msgid "set an end of line delimiter for the script"
msgstr "set an end of line delimiter for the script"
msgstr "paramètre un délimiteur de fin de ligne pour le script"
#. Tag: para
#: toolset_guide.xml:328
#, no-c-format
msgid "You may even embed <literal>SchemaExport</literal> in your application:"
msgstr ""
"You may even embed <literal>SchemaExport</literal> in your application:"
"Vous pouvez même intégrer <literal>SchemaExport</literal> dans votre "
"application :"
#. Tag: programlisting
#: toolset_guide.xml:332
@ -812,13 +835,13 @@ msgstr ""
#: toolset_guide.xml:337
#, no-c-format
msgid "Properties"
msgstr "Properties"
msgstr "Propriétés"
#. Tag: para
#: toolset_guide.xml:339
#, no-c-format
msgid "Database properties may be specified"
msgstr "Database properties may be specified"
msgstr "Les propriétés de la base de données peuvent être spécifiées"
#. Tag: para
#: toolset_guide.xml:345
@ -827,26 +850,27 @@ msgid ""
"as system properties with <literal>-D</literal><emphasis>&lt;property&gt;</"
"emphasis>"
msgstr ""
"as system properties with <literal>-D</literal><emphasis>&lt;property&gt;</"
"emphasis>"
"comme propriétés système avec <literal>-D</literal><emphasis>&lt;property&gt;"
"</emphasis>"
#. Tag: para
#: toolset_guide.xml:348
#, no-c-format
msgid "in <literal>hibernate.properties</literal>"
msgstr "in <literal>hibernate.properties</literal>"
msgstr "dans <literal>hibernate.properties</literal>"
#. Tag: para
#: toolset_guide.xml:351
#, no-c-format
msgid "in a named properties file with <literal>--properties</literal>"
msgstr "in a named properties file with <literal>--properties</literal>"
msgstr ""
"dans un fichier de propriétés déclaré avec <literal>--properties</literal>"
#. Tag: para
#: toolset_guide.xml:355
#, no-c-format
msgid "The needed properties are:"
msgstr "The needed properties are:"
msgstr "Les propriétés nécessaires sont :"
#. Tag: title
#: toolset_guide.xml:360
@ -858,7 +882,7 @@ msgstr "SchemaExport Connection Properties"
#: toolset_guide.xml:366
#, no-c-format
msgid "Property Name"
msgstr "Property Name"
msgstr "Nom de la propriété"
#. Tag: literal
#: toolset_guide.xml:372
@ -870,7 +894,7 @@ msgstr "hibernate.connection.driver_class"
#: toolset_guide.xml:373
#, no-c-format
msgid "jdbc driver class"
msgstr "jdbc driver class"
msgstr "classe du driver JDBC"
#. Tag: literal
#: toolset_guide.xml:376
@ -882,7 +906,7 @@ msgstr "hibernate.connection.url"
#: toolset_guide.xml:377
#, no-c-format
msgid "jdbc url"
msgstr "jdbc url"
msgstr "URL JDBC"
#. Tag: literal
#: toolset_guide.xml:380
@ -894,7 +918,7 @@ msgstr "hibernate.connection.username"
#: toolset_guide.xml:381
#, no-c-format
msgid "database user"
msgstr "database user"
msgstr "utilisateur de la base de données"
#. Tag: literal
#: toolset_guide.xml:384
@ -906,7 +930,7 @@ msgstr "hibernate.connection.password"
#: toolset_guide.xml:385
#, no-c-format
msgid "user password"
msgstr "user password"
msgstr "mot de passe de l'utilisateur"
#. Tag: literal
#: toolset_guide.xml:388
@ -918,13 +942,13 @@ msgstr "hibernate.dialect"
#: toolset_guide.xml:389
#, no-c-format
msgid "dialect"
msgstr "dialect"
msgstr "dialecte"
#. Tag: title
#: toolset_guide.xml:398
#, no-c-format
msgid "Using Ant"
msgstr "Using Ant"
msgstr "Utiliser Ant"
#. Tag: para
#: toolset_guide.xml:400
@ -932,7 +956,8 @@ msgstr "Using Ant"
msgid ""
"You can call <literal>SchemaExport</literal> from your Ant build script:"
msgstr ""
"You can call <literal>SchemaExport</literal> from your Ant build script:"
"Vous pouvez appeler <literal>SchemaExport</literal> depuis votre script de "
"construction Ant :"
#. Tag: programlisting
#: toolset_guide.xml:404
@ -961,7 +986,7 @@ msgstr ""
#: toolset_guide.xml:409
#, no-c-format
msgid "Incremental schema updates"
msgstr "Incremental schema updates"
msgstr "Mises à jour incrémentales du schéma"
#. Tag: para
#: toolset_guide.xml:411
@ -972,10 +997,10 @@ msgid ""
"heavily upon the JDBC metadata API, so it will not work with all JDBC "
"drivers."
msgstr ""
"The <literal>SchemaUpdate</literal> tool will update an existing schema with "
"\"incremental\" changes. Note that <literal>SchemaUpdate</literal> depends "
"heavily upon the JDBC metadata API, so it will not work with all JDBC "
"drivers."
"L'outil <literal>SchemaUpdate</literal> mettra à jour un schéma existant en "
"effectuant les changement par \"incrément\". Notez que "
"<literal>SchemaUpdate</literal> dépends beaucoup de l'API JDBC metadata, il "
"ne fonctionnera donc pas avec tous les drivers JDBC."
#. Tag: para
#: toolset_guide.xml:417
@ -990,25 +1015,30 @@ msgstr ""
#: toolset_guide.xml:423
#, no-c-format
msgid "<literal>SchemaUpdate</literal> Command Line Options"
msgstr "<literal>SchemaUpdate</literal> Command Line Options"
msgstr "<literal>SchemaUpdate</literal> Options de ligne de commande"
#. Tag: entry
#: toolset_guide.xml:440
#, no-c-format
msgid "don't export the script to the database"
msgstr "don't export the script to the database"
msgstr "ne pas exporter vers la base de données"
#. Tag: entry
#: toolset_guide.xml:452 toolset_guide.xml:513
#, fuzzy, no-c-format
msgid "specify a <literal>.cfg.xml</literal> file"
msgstr "specify a <placeholder-1/> file"
msgstr ""
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"specify a <placeholder-1/> file\n"
"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"indique un fichier <placeholder-1/>"
#. Tag: para
#: toolset_guide.xml:458
#, no-c-format
msgid "You may embed <literal>SchemaUpdate</literal> in your application:"
msgstr "You may embed <literal>SchemaUpdate</literal> in your application:"
msgstr ""
"Vous pouvez intégrer <literal>SchemaUpdate</literal> dans votre application :"
#. Tag: programlisting
#: toolset_guide.xml:462
@ -1022,13 +1052,14 @@ msgstr ""
#: toolset_guide.xml:467
#, no-c-format
msgid "Using Ant for incremental schema updates"
msgstr "Using Ant for incremental schema updates"
msgstr "Utiliser Ant pour des mises à jour de schéma par incrément"
#. Tag: para
#: toolset_guide.xml:469
#, no-c-format
msgid "You can call <literal>SchemaUpdate</literal> from the Ant script:"
msgstr "You can call <literal>SchemaUpdate</literal> from the Ant script:"
msgstr ""
"Vous pouvez appeler <literal>SchemaUpdate</literal> depuis le script Ant :"
#. Tag: programlisting
#: toolset_guide.xml:473
@ -1053,7 +1084,7 @@ msgstr ""
#: toolset_guide.xml:478
#, no-c-format
msgid "Schema validation"
msgstr "Schema validation"
msgstr "Validation du schéma"
#. Tag: para
#: toolset_guide.xml:480
@ -1065,11 +1096,11 @@ msgid ""
"API, so it will not work with all JDBC drivers. This tool is extremely "
"useful for testing."
msgstr ""
"The <literal>SchemaValidator</literal> tool will validate that the existing "
"database schema \"matches\" your mapping documents. Note that "
"<literal>SchemaValidator</literal> depends heavily upon the JDBC metadata "
"API, so it will not work with all JDBC drivers. This tool is extremely "
"useful for testing."
"L'outil <literal>SchemaValidator</literal> validera que le schéma existant "
"correspond à vos documents de mapping. Notez que le "
"<literal>SchemaValidator</literal> dépends de l'API metadata de JDBC, il ne "
"fonctionnera donc pas avec tous les drivers JDBC. Cet outil est extrêmement "
"utile pour tester."
#. Tag: para
#: toolset_guide.xml:486
@ -1084,13 +1115,15 @@ msgstr ""
#: toolset_guide.xml:492
#, no-c-format
msgid "<literal>SchemaValidator</literal> Command Line Options"
msgstr "<literal>SchemaValidator</literal> Command Line Options"
msgstr "<literal>SchemaValidator</literal> Options de ligne de commande"
#. Tag: para
#: toolset_guide.xml:519
#, no-c-format
msgid "You may embed <literal>SchemaValidator</literal> in your application:"
msgstr "You may embed <literal>SchemaValidator</literal> in your application:"
msgstr ""
"Vous pouvez inclure <literal>SchemaValidator</literal> dans votre "
"application:"
#. Tag: programlisting
#: toolset_guide.xml:523
@ -1104,13 +1137,14 @@ msgstr ""
#: toolset_guide.xml:528
#, no-c-format
msgid "Using Ant for schema validation"
msgstr "Using Ant for schema validation"
msgstr "Utiliser Ant pour la validation du Schéma"
#. Tag: para
#: toolset_guide.xml:530
#, no-c-format
msgid "You can call <literal>SchemaValidator</literal> from the Ant script:"
msgstr "You can call <literal>SchemaValidator</literal> from the Ant script:"
msgstr ""
"Vous pouvez appeler <literal>SchemaValidator</literal> depuis le script Ant:"
#. Tag: programlisting
#: toolset_guide.xml:534
@ -1154,20 +1188,41 @@ msgstr ""
#~ msgid "java -cp"
#~ msgstr "java -cp"
#, fuzzy
#~ msgid "hibernate_classpaths"
#~ msgstr "hibernate_classpaths"
#~ msgstr ""
#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
#~ "classpath_hibernate\n"
#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
#~ "hibernate_classpaths\n"
#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
#~ "hibernate_classpaths"
#~ msgid "org.hibernate.tool.hbm2ddl.SchemaExport"
#~ msgstr "org.hibernate.tool.hbm2ddl.SchemaExport"
#~ msgstr "net.sf.hibernate.tool.hbm2ddl.SchemaExport"
#, fuzzy
#~ msgid "options mapping_files"
#~ msgstr "options mapping_files"
#~ msgstr ""
#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
#~ "options fichiers_de_mapping\n"
#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
#~ "options mapping_files\n"
#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
#~ "options mapping_files"
#~ msgid "NamingStrategy"
#~ msgstr "NamingStrategy"
#, fuzzy
#~ msgid "select a <placeholder-1/>"
#~ msgstr "select a <placeholder-1/>"
#~ msgstr ""
#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
#~ "sélectionne une <placeholder-1/>\n"
#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
#~ "choisit une <placeholder-1/>\n"
#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
#~ "Indique une <placeholder-1/>"
#~ msgid "org.hibernate.tool.hbm2ddl.SchemaUpdate"
#~ msgstr "org.hibernate.tool.hbm2ddl.SchemaUpdate"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@ msgstr ""
#: xml.xml:5
#, no-c-format
msgid "XML Mapping"
msgstr "Mapeamento XML"
msgstr "Mapping XML"
#. Tag: emphasis
#: xml.xml:7
@ -23,15 +23,14 @@ msgid ""
"Note that this is an experimental feature in Hibernate 3.0 and is under "
"extremely active development."
msgstr ""
"Note that this is an experimental feature in Hibernate 3.0 and is under "
"extremely active development. Veja que essa é uma feature experimental no "
"Hibernate 3.0 e o desenvolvimento esta bastante ativo."
"Notez que cette fonctionnalité est expérimentale dans Hibernate 3.0 et est "
"en développement extrêmement actif."
#. Tag: title
#: xml.xml:13
#, no-c-format
msgid "Working with XML data"
msgstr "Trabalhando com dados em XML"
msgstr "Travailler avec des données XML"
#. Tag: para
#: xml.xml:15
@ -42,10 +41,10 @@ msgid ""
"another way to represent the relational data at the object level, instead of "
"POJOs."
msgstr ""
"O Hibernate permite que se trabalhe com dados persistentes em XML quase da "
"mesma maneira como você trabalhar com POJOs persistentes. Uma árvore XML "
"parseada, pode ser imaginada como apenas uma maneira de representar os dados "
"relacionais como objetos, ao invés dos POJOs."
"Hibernate vous laisse travailler avec des données XML persistantes de la "
"même manière que vous travaillez avec des POJOs persistants. Un arbre XML "
"peut être vu comme une autre manière de représenter les données "
"relationnelles au niveau objet, à la place des POJOs."
#. Tag: para
#: xml.xml:22
@ -59,13 +58,14 @@ msgid ""
"(), saveOrUpdate(), merge(), delete(), replicate()</literal> (merging is not "
"yet supported)."
msgstr ""
"O Hibernate suporta a API dom4j para manipular árvores XML. Você pode "
"escrever queries que retornem árvores dom4j do banco de dados e "
"automaticamente sincronizar com o banco de dados qualquer modificação feita "
"nessas árvores. Você pode até mesmo pegar um documento XML, parsear usando o "
"dom4j, e escrever as alterações no banco de dados usando quaisquer operações "
"básicas do Hibernate: <literal>persist(), saveOrUpdate(),merge(), delete(), "
"replicate()</literal> (merging ainda não é suportado)"
"Hibernate supporte dom4j en tant qu'API pour la manipulation des arbres XML. "
"Vous pouvez écrire des requêtes qui récupèrent des arbres dom4j à partie de "
"la base de données, et avoir toutes les modifications que vous faites sur "
"l'arbre automatiquement synchronisées dans la base de données. Vous pouvez "
"même prendre un document XML, l'analyser en utilisant dom4j, et l'écrire "
"dans la base de données via les opérations basiques d'Hibernate : "
"<literal>persist(), saveOrUpdate(), merge(), delete(), replicate()</literal> "
"(merge() n'est pas encore supporté)."
#. Tag: para
#: xml.xml:32
@ -74,9 +74,8 @@ msgid ""
"This feature has many applications including data import/export, "
"externalization of entity data via JMS or SOAP and XSLT-based reporting."
msgstr ""
"Essa funcionalidade tem várias aplicações incluindo importação/exportação de "
"dados, externalização de dados de entidade via JMS or SOAP e relatórios "
"usando XSLT."
"Cette fonctionnalité a plusieurs applications dont l'import/export de "
"données, l'externalisation d'entités via JMS ou SOAP et les rapports XSLT."
#. Tag: para
#: xml.xml:37
@ -86,23 +85,22 @@ msgid ""
"nodes of an XML document to the database, or, if there is no class to map, "
"it may be used to map just the XML."
msgstr ""
"Um mapeamento simples pode ser usado para simultaneamente mapear "
"propriedades da classe e nós de um documento XML para um banco de dados ou, "
"se não houver classe para mapear, pode ser usado simplesmente para mapear o "
"Un simple mapping peut être utilisé pour simultanément mapper les propriétés "
"d'une classe et les noeuds d'un document XML vers la base de données, ou, si "
"il n'y a pas de classe à mapper, il peut être utilisé juste pour mapper le "
"XML."
#. Tag: title
#: xml.xml:44
#, no-c-format
msgid "Specifying XML and class mapping together"
msgstr ""
"Especificando o mapeamento de uma classe e de um arquivo XML simultaneamente"
msgstr "Spécifier le mapping XML et le mapping d'une classe ensemble"
#. Tag: para
#: xml.xml:46
#, no-c-format
msgid "Here is an example of mapping a POJO and XML simultaneously:"
msgstr "Segue um exemplo de como mapear um POJO e um XML ao mesmo tempo:"
msgstr "Voici un exemple de mapping d'un POJO et du XML simultanément :"
#. Tag: programlisting
#: xml.xml:50
@ -134,13 +132,13 @@ msgstr ""
#: xml.xml:54
#, no-c-format
msgid "Specifying only an XML mapping"
msgstr "Especificando somente um mapeamento XML"
msgstr "Spécifier seulement un mapping XML"
#. Tag: para
#: xml.xml:56
#, no-c-format
msgid "Here is an example where there is no POJO class:"
msgstr "Segue um exemplo que não contém uma classe POJO:"
msgstr "Voici un exemple dans lequel il n'y a pas de class POJO :"
#. Tag: programlisting
#: xml.xml:60
@ -179,16 +177,16 @@ msgid ""
"property name/value pairs (java <literal>Map</literal>s). The property names "
"are purely logical constructs that may be referred to in HQL queries."
msgstr ""
"Esse mapeamento permite que você acesse os dados como uma árvore dom4j ou um "
"grafo de de pares nome de propriedade/valor (<literal>Map</literal>s do "
"Java). Os nomes de propriedades são somente construções lógicas que podem "
"ser referenciadas em consultas HQL."
"Ce mapping vous permet d'accéder aux données comme un arbre dom4j, ou comme "
"un graphe de paire nom de propriété/valeur (<literal>Map</literal>s java). "
"Les noms des propriétés sont des constructions purement logiques qui peuvent "
"être référées des dans requêtes HQL."
#. Tag: title
#: xml.xml:73
#, no-c-format
msgid "XML mapping metadata"
msgstr "Mapeando metadados com XML"
msgstr "Métadonnées du mapping XML"
#. Tag: para
#: xml.xml:75
@ -199,32 +197,29 @@ msgid ""
"that holds the property or entity data. The format of the <literal>node</"
"literal> attribute must be one of the following:"
msgstr ""
"Muitos elementos do mapeamento do Hibernate aceitam o atributo "
"<literal>node</literal>. Por meio dele, você pode especificar o nome de um "
"atributo ou elemento XML que contém a propriedade ou os dados da entidade. O "
"formato do atributo <literal>node</literal> deve ser o seguinte:"
"Plusieurs éléments du mapping Hibernate acceptent l'attribut <literal>node</"
"literal>. Ceci vous permet de spécifier le nom d'un attribut XML ou d'un "
"élément qui contient la propriété ou les données de l'entité. Le format de "
"l'attribut <literal>node</literal> doit être un des suivants :"
#. Tag: para
#: xml.xml:84
#, no-c-format
msgid "<literal>\"element-name\"</literal> - map to the named XML element"
msgstr ""
"<literal>\"element-name\"</literal> - mapeia para o elemento XML com "
"determinado nome"
msgstr "<literal>\"element-name\"</literal> - mappe vers l'élément XML nommé"
#. Tag: para
#: xml.xml:87
#, no-c-format
msgid "<literal>\"@attribute-name\"</literal> - map to the named XML attribute"
msgstr ""
"<literal>\"@attribute-name\"</literal> - mapeia para o atributo XML com "
"determinado nome"
"<literal>\"@attribute-name\"</literal> - mappe vers l'attribut XML nommé"
#. Tag: para
#: xml.xml:90
#, no-c-format
msgid "<literal>\".\"</literal> - map to the parent element"
msgstr "<literal>\".\"</literal> - mapeia para o elemento pai"
msgstr "<literal>\".\"</literal> - mappe vers le parent de l'élément"
#. Tag: para
#: xml.xml:93
@ -233,8 +228,8 @@ msgid ""
"<literal>\"element-name/@attribute-name\"</literal> - map to the named "
"attribute of the named element"
msgstr ""
"<literal>\"element-name/@attribute-name\"</literal> - mapeia para para o "
"atributo com determinado nome do elemento com determinado nome"
"<literal>\"element-name/@attribute-name\"</literal> - mappe vers l'élément "
"nommé de l'attribut nommé"
#. Tag: para
#: xml.xml:100
@ -248,14 +243,14 @@ msgid ""
"then only the referenced identifier value will appear in the XML for single "
"point associations and collections will simply not appear at all."
msgstr ""
"Para coleções e associações simples, existe o atributo adicional "
"<literal>embed-xml</literal>. Se o atributo <literal>embed-xml=\"true\"</"
"literal>, que é o valor padrão, a árvore XML para a entidade associada (ou "
"coleção de determinado tipo de valor) será embutida diretamente na árvore "
"XML que contém a associação. Por outro lado, se <literal>embed-xml=\"false"
"\"</literal>, então apenas o valor do identificador referenciado irá "
"aparecer no XML para associações simples e coleções simplesmentenão irão "
"aparecer."
"Pour des collections et de simples associations valuées, il y a un attribut "
"<literal>embed-xml</literal> supplémentaire. Si <literal>embed-xml=\"true\"</"
"literal>, qui est la valeur par défaut, l'arbre XML pour l'entité associée "
"(ou la collection des types de valeurs) sera embarquée directement dans "
"l'arbre XML pour l'entité qui possède l'association. Sinon, si "
"<literal>embed-xml=\"false\"</literal>, alors seule la valeur de "
"l'identifiant référencé apparaîtra dans le XML pour de simples associations "
"de points, et les collections n'appraîtront simplement pas."
#. Tag: para
#: xml.xml:110
@ -264,9 +259,9 @@ msgid ""
"You should be careful not to leave <literal>embed-xml=\"true\"</literal> for "
"too many associations, since XML does not deal well with circularity!"
msgstr ""
"Você precisa tomar cuidado em não deixar o<literal>embed-xml=\"true\"</"
"literal> para muitas associações, pois o XML não suporta bem referências "
"circulares."
"Vous devriez faire attention à ne pas laisser <literal>embed-xml=\"true\"</"
"literal> pour trop d'associations, puisque XML ne traite pas bien les liens "
"circurlaires."
#. Tag: programlisting
#: xml.xml:115
@ -315,8 +310,8 @@ msgid ""
"in this case, we have decided to embed the collection of account ids, but "
"not the actual account data. The following HQL query:"
msgstr ""
"Nesse caso, decidimos embutir a colenção de account ids, e não os dados de "
"accounts. A query HQL a seguir:"
"dans ce cas, nous avons décidé d'embarquer la collection d'identifiants de "
"compte, mais pas les données actuelles du compte. La requête HQL suivante :"
#. Tag: programlisting
#: xml.xml:122
@ -330,7 +325,7 @@ msgstr ""
#: xml.xml:124
#, no-c-format
msgid "Would return datasets such as this:"
msgstr "Retornaria um conjunto de dados como esse:"
msgstr "devrait retourner l'ensemble de données suivant :"
#. Tag: programlisting
#: xml.xml:128
@ -355,9 +350,9 @@ msgid ""
"If you set <literal>embed-xml=\"true\"</literal> on the <literal>&lt;one-to-"
"many&gt;</literal> mapping, the data might look more like this:"
msgstr ""
"Se você setar <literal>embed-xml=\"true\"</literal> em um mapeamento "
"<literal>&lt;one-to-many&gt;</literal>, os dados se pareceriam com o "
"seguinte:"
"Si vous positionnez <literal>embed-xml=\"true\"</literal> sur le mapping "
"<literal>&lt;one-to-many&gt;</literal>, les données pourraient ressembler "
"plus à ça :"
#. Tag: programlisting
#: xml.xml:135
@ -385,7 +380,7 @@ msgstr ""
#: xml.xml:141
#, no-c-format
msgid "Manipulating XML data"
msgstr "Manipulando dados em XML"
msgstr "Manipuler des données XML"
#. Tag: para
#: xml.xml:143
@ -394,8 +389,8 @@ msgid ""
"Let's rearead and update XML documents in the application. We do this by "
"obtaining a dom4j session:"
msgstr ""
"Vamos reler e atualizar documentos em XML em nossa aplicação. Nós fazemos "
"isso obtendo uma session do dom4j:"
"Relisons et mettons à jour des documents XML dans l'application. Nous "
"faisons ça en obtenant une session dom4j :"
#. Tag: programlisting
#: xml.xml:148
@ -451,6 +446,6 @@ msgid ""
"<literal>replicate()</literal> operation to implement XML-based data import/"
"export."
msgstr ""
"É extremamente útil combinar essa funcionalidade com a operação "
"<literal>replicate()</literal> do Hibernate para implementar importação/"
"exportação baseadas em XML."
"Il est extrêmement utile de combiner cette fonctionnalité avec l'opération "
"<literal>replicate()</literal> d'Hibernate pour implémenter des imports/"
"exports de données XML."