Author: stliu
Date: 2010-02-08 01:18:39 -0500 (Mon, 08 Feb 2010)
New Revision: 18723
Added:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Author_Group.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Book_Info.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Feedback.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Hibernate_Core_Reference_Guide.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Revision_History.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/Preface.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Conventions.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Feedback.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Legal_Notice.po
Removed:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Hibernate_Reference.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/author_group.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/bibliography.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/preface.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/quickstart.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/legal_notice.po
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/architecture.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/association_mapping.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/basic_mapping.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/batch.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/best_practices.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/collection_mapping.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/component_mapping.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/configuration.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/events.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_mappings.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_parentchild.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_weblog.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/filters.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/inheritance_mapping.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/performance.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/persistent_classes.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/portability.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_criteria.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_hql.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_sql.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/session_api.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/toolset_guide.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/transactions.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/tutorial.po
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/xml.po
Log:
HHH-4729 Import work done by Red Hat translation team
Copied:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Author_Group.po (from
rev 18713,
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/author_group.po)
===================================================================
--- core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Author_Group.po
(rev 0)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Author_Group.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -0,0 +1,14 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: Collection_Mapping\n"
+"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
+"POT-Creation-Date: 2009-12-03T00:15:25\n"
+"PO-Revision-Date: 2007-02-26 17:14+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
Added: core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Book_Info.po
===================================================================
--- core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Book_Info.po
(rev 0)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Book_Info.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -0,0 +1,46 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: Collection_Mapping\n"
+"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
+"POT-Creation-Date: 2009-12-11T05:07:38\n"
+"PO-Revision-Date: 2007-02-26 17:14+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Tag: title
+#, fuzzy, no-c-format
+msgid "Hibernate Core Reference Guide"
+msgstr "Hibernate リファレンスガイド"
+
+#. Tag: subtitle
+#, no-c-format
+msgid ""
+"by Gavin King, Christian Bauer, Max Rydahl Andersen, Emmanuel Bernard, and "
+"Steve Ebersole and thanks to James Cobb (Graphic Design) and Cheyenne Weaver
"
+"(Graphic Design)"
+msgstr ""
+
+#. Tag: para
+#, fuzzy, no-c-format
+msgid "The JBoss Hibernate Core 3.3.2.GA Reference Guide"
+msgstr "Hibernate リファレンスガイド"
+
+#, fuzzy
+#~ msgid "for Use with JBoss Enterprise Application Platform 5.0"
+#~ msgstr "JBoss Enterprise Application Platform"
+
+#, fuzzy
+#~ msgid ""
+#~ "The JBoss Enterprise Application Platform Edition of the Hibernate Core "
+#~ "Reference Guide"
+#~ msgstr ""
+#~ "JBoss Enterprise Application Platform 版 Hibernate リファレンスガイド 3.2"
+
+#~ msgid "&HOLDER;"
+#~ msgstr "&HOLDER;"
Added: core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Feedback.po
===================================================================
--- core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Feedback.po
(rev 0)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Feedback.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -0,0 +1,39 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: Collection_Mapping\n"
+"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
+"POT-Creation-Date: 2009-12-03T00:15:25\n"
+"PO-Revision-Date: 2007-02-26 17:14+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Tag: title
+#, no-c-format
+msgid "Feedback"
+msgstr "フィードバック"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"If you spot a typo in this guide, or if you have thought of a way to make "
+"this manual better, we would love to hear from you! Submit a report in "
+"<ulink
url=\"http://jira.jboss.com/jira/browse/JBPAPP\">JIRA</ul... against
"
+"the Product: JBoss Enterprise Application Platform, Version: "
+"<replaceable><version></replaceable>, Component:
<emphasis>Doc</"
+"emphasis>. If you have a suggestion for improving the documentation, try to
"
+"be as specific as possible. If you have found an error, include the section "
+"number and some of the surrounding text so we can find it easily."
+msgstr ""
+"本ガイドに誤植があった場合、 また本ガイドの改善案に関するご意見をお寄せ頂く場"
+"合、 <ulink
url=\"http://jira.jboss.com/jira/browse/JBPAPP\">JIRA</ul... よ"
+"り Product: JBoss Enterprise Application Platform、 Version: "
+"<replaceable><version></replaceable>、 Component:
<emphasis>Doc</"
+"emphasis> にてご報告頂ければ幸いです。 ドキュメントの改善案についてはできるだ"
+"け詳細にお願いいたします。 エラーの報告を頂く場合は、 該当するセクション番号"
+"および前後の文脈を含めてお知らせ頂けると発見しやすくなります。"
Copied:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Hibernate_Core_Reference_Guide.po
(from rev 18713,
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Hibernate_Reference.po)
===================================================================
Deleted:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Hibernate_Reference.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Hibernate_Reference.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Hibernate_Reference.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,32 +0,0 @@
-#, fuzzy
-msgid ""
-msgstr ""
-"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-23 18:41+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-
-#. Tag: title
-#: Hibernate_Reference.xml:35
-#, no-c-format
-msgid "HIBERNATE - Relational Persistence for Idiomatic Java"
-msgstr "HIBERNATE - Relational Persistence for Idiomatic Java"
-
-#. Tag: subtitle
-#: Hibernate_Reference.xml:36
-#, no-c-format
-msgid "Hibernate Reference Documentation"
-msgstr "Hibernate Reference Documentation"
-
-#. Tag: holder
-#: Hibernate_Reference.xml:51
-#, no-c-format
-msgid "©rightHolder;"
-msgstr "©rightHolder;"
-
-#~ msgid "ROLES_OF_TRANSLATORS"
-#~ msgstr "<!--TRANS:ROLES_OF_TRANSLATORS-->"
-
-#~ msgid "CREDIT_FOR_TRANSLATORS"
-#~ msgstr "<!--TRANS:CREDIT_FOR_TRANSLATORS-->"
Added:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Revision_History.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Revision_History.po
(rev 0)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/Revision_History.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -0,0 +1,24 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: Collection_Mapping\n"
+"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
+"POT-Creation-Date: 2009-12-11T05:07:38\n"
+"PO-Revision-Date: 2007-02-26 17:14+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Tag: title
+#, no-c-format
+msgid "Revision History"
+msgstr ""
+
+#. Tag: member
+#, no-c-format
+msgid "Merged with EAP5 and translations added"
+msgstr ""
Deleted:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/author_group.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/author_group.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/author_group.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,221 +0,0 @@
-# Language ja-JP translations for Branch package.
-# Automatically generated, 2009.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: Branch 3_3\n"
-"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-16 18:47+0000\n"
-"PO-Revision-Date: 2009-06-16 18:47+0000\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#. Tag: author
-#: author_group.xml:27
-#, no-c-format
-msgid "<firstname>Gavin</firstname>
<surname>King</surname>"
-msgstr ""
-
-#. Tag: author
-#: author_group.xml:31
-#, no-c-format
-msgid "<firstname>Christian</firstname>
<surname>Bauer</surname>"
-msgstr ""
-
-#. Tag: author
-#: author_group.xml:35
-#, no-c-format
-msgid ""
-"<firstname>Max</firstname> <othername>Rydahl</othername>
<surname>Andersen</"
-"surname>"
-msgstr ""
-
-#. Tag: author
-#: author_group.xml:40
-#, no-c-format
-msgid ""
-"<author><firstname>Emmanuel</firstname>
<surname>Bernard</surname></author>"
-msgstr ""
-
-#. Tag: author
-#: author_group.xml:44
-#, no-c-format
-msgid "<firstname>Steve</firstname>
<surname>Ebersole</surname>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:49
-#, no-c-format
-msgid "<firstname>James</firstname>
<surname>Cobb</surname>"
-msgstr ""
-
-#. Tag: shortaffil
-#: author_group.xml:53 author_group.xml:60
-#, no-c-format
-msgid "Graphic Design"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:56
-#, no-c-format
-msgid "<firstname>Cheyenne</firstname>
<surname>Weaver</surname>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:69
-#, no-c-format
-msgid ""
-"<othername><![CDATA[Bernardo Antonio Buffa
Colomé]]></othername> "
-"<email>kreimer(a)bbs.frc.utn.edu.ar</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:79
-#, no-c-format
-msgid "<firstname>Vincent</firstname>
<surname>Ricard</surname>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:83
-#, no-c-format
-msgid "<firstname>Sebastien</firstname>
<surname>Cesbron</surname>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:87
-#, no-c-format
-msgid "<firstname>Michael</firstname>
<surname>Courcy</surname>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:91
-#, no-c-format
-msgid "<firstname>Vincent</firstname>
<surname>Giguère</surname>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:95
-#, no-c-format
-msgid "<firstname>Baptiste</firstname>
<surname>Mathus</surname>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:99
-#, no-c-format
-msgid ""
-"<othercredit><firstname>Emmanuel</firstname>
<surname>Bernard</surname></"
-"othercredit>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:103
-#, no-c-format
-msgid "<firstname>Anthony</firstname>
<surname>Patricio</surname>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:113
-#, no-c-format
-msgid ""
-"<firstname>Alvaro</firstname> <surname>Netto</surname>
"
-"<email>alvaronetto(a)cetip.com.br</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:118
-#, no-c-format
-msgid ""
-"<firstname>Anderson</firstname> <surname>Braulio</surname>
"
-"<email>andersonbraulio(a)gmail.com</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:123
-#, no-c-format
-msgid ""
-"<firstname>Daniel Vieira</firstname>
<surname>Costa</surname> "
-"<email>danielvc(a)gmail.com</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:128
-#, no-c-format
-msgid ""
-"<firstname>Francisco</firstname> <surname>gamarra</surname>
<email>francisco."
-"gamarra(a)gmail.com</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:133
-#, no-c-format
-msgid ""
-"<firstname>Gamarra</firstname>
<email>mauricio.gamarra(a)gmail.com</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:137
-#, no-c-format
-msgid ""
-"<firstname>Luiz Carlos</firstname>
<surname>Rodrigues</surname> "
-"<email>luizcarlos_rodrigues(a)yahoo.com.br</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:142
-#, no-c-format
-msgid ""
-"<firstname>Marcel</firstname> <surname>Castelo</surname>
<email>marcel."
-"castelo(a)gmail.com</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:147
-#, no-c-format
-msgid ""
-"<firstname>Paulo</firstname> <surname>César</surname>
<email>paulocol(a)gmail."
-"com</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:152
-#, no-c-format
-msgid ""
-"<firstname>Pablo L.</firstname> <surname>de
Miranda</surname> "
-"<email>pablolmiranda(a)gmail.com</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:157
-#, no-c-format
-msgid ""
-"<firstname>Renato</firstname> <surname>Deggau</surname>
<email>rdeggau(a)gmail."
-"com</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:162
-#, no-c-format
-msgid ""
-"<firstname>Rogério</firstname> <surname>Araújo</surname>
"
-"<email>rgildoaraujo(a)yahoo.com.br</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:167
-#, no-c-format
-msgid ""
-"<firstname>Wanderson</firstname>
<surname>Siqueira</surname> "
-"<email>wandersonxs(a)gmail.com</email>"
-msgstr ""
-
-#. Tag: othercredit
-#: author_group.xml:178
-#, no-c-format
-msgid ""
-"<firstname>Cao</firstname> <surname>Xiaogang</surname>
<affiliation> "
-"<orgname>RedSaga</orgname> </affiliation>
<contrib>Translation Lead</"
-"contrib> <email>caoxg(a)yahoo.com</email>"
-msgstr ""
Copied:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/Preface.po
(from rev 18713,
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/preface.po)
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/Preface.po
(rev 0)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/Preface.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -0,0 +1,203 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: Collection_Mapping\n"
+"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
+"POT-Creation-Date: 2009-12-23T01:43:43\n"
+"PO-Revision-Date: 2009-12-21 17:17+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Tag: title
+#, no-c-format
+msgid "Preface"
+msgstr "前書き"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"Working with object-oriented software and a relational database can be "
+"cumbersome and time consuming in today's enterprise environments. Hibernate
"
+"is an object/relational mapping tool for Java environments. The term object/"
+"relational mapping (ORM) refers to the technique of mapping a data "
+"representation from an object model to a relational data model with a SQL-"
+"based schema."
+msgstr ""
+"オブジェクト指向のソフトウェアやリレーショナルデータベースの使用は、 今日のエ"
+"ンタープライズ環境では非常に繁雑で時間のかかる作業となります。 Hibernate は "
+"Java 環境用のオブジェクト/リレーショナルマッピングツールです。 オブジェクト/"
+"リレーショナルマッピング (ORM) とはデータ表現をオブジェクトモデルから SQL "
+"ベースのスキーマによるリレーショナルデータモデルにマッピングする技術のことを"
+"指します。 "
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"Hibernate not only takes care of the mapping from Java classes to database "
+"tables (and from Java data types to SQL data types), but also provides data "
+"query and retrieval facilities. It can also significantly reduce development
"
+"time otherwise spent with manual data handling in SQL and JDBC."
+msgstr ""
+"Hibernate は Java クラスからデータベーステーブルへのマッピング(及び Java デー"
+"タタイプから SQL データタイプへのマッピング)を行うだけでなくデータのクエリや"
+"検索機能も提供するため、 SQL や JDBC での手作業によるデータ処理を除き開発に要"
+"する時間を大幅に削減することが可能になります。"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"Hibernate's goal is to relieve the developer from 95 percent of common data
"
+"persistence related programming tasks. Hibernate may not be the best "
+"solution for data-centric applications that only use stored-procedures to "
+"implement the business logic in the database, it is most useful with object-"
+"oriented domain models and business logic in the Java-based middle-tier. "
+"However, Hibernate can certainly help you to remove or encapsulate vendor-"
+"specific SQL code and will help with the common task of result set "
+"translation from a tabular representation to a graph of objects."
+msgstr ""
+"Hibernate の目標は、 開発者にとってのプログラミングにおける一般的なデータ永続"
+"性の作業の 95 % を軽減することです。 Hibernate データベース内でビジネスロジッ"
+"クを実現するストアドプロシージャのみを使用するデータ処理中心のアプリケーショ"
+"ンに対しては最適ではないかもしれませんが、 Java ベースの中間層でのビジネスロ"
+"ジック及びオブジェクト指向のドメインモデルを使用する場合に最も役に立ちます。 "
+"Hibernate は開発者がベンダー固有の SQL コードの除去あるいはカプセル化を行う際"
+"に便利なため、 表形式の表現からオブジェクトのグラフへの結果セットの変換に関す"
+"る一般的な作業に役立ちます。"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"If you are new to Hibernate and Object/Relational Mapping or even Java, "
+"please follow these steps:"
+msgstr ""
+"Hibernate 及びオブジェクト/リレーショナルマッピング、 あるいは Java が不慣れ"
+"な方は、 次の手順を行ってください。"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"Read <xref linkend=\"tutorial\" /> for a tutorial with step-by-step
"
+"instructions. The source code for the tutorial is included in the "
+"distribution in the <literal>doc/reference/tutorial/</literal>
directory."
+msgstr ""
+"ステップバイステップの解説が行われているチュートリアルとして <xref linkend="
+"\"tutorial\"/> をお読みください。 チュートリアルのソースコードはそのディスト"
+"リビューションの <literal>doc/reference/tutorial/</literal> ディレクトリ配下"
+"にあります。"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"Read <xref linkend=\"architecture\" /> to understand the
environments where "
+"Hibernate can be used."
+msgstr ""
+"Hibernate が使用できる環境について理解するため、 <xref linkend=\"architecture"
+"\"/> をお読みください。"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"View the <literal>eg/</literal> directory in the Hibernate
distribution. It "
+"contains a simple standalone application. Copy your JDBC driver to the "
+"<literal>lib/</literal> directory and edit
<literal>etc/hibernate."
+"properties</literal>, specifying correct values for your database. From a
"
+"command prompt in the distribution directory, type <literal>ant
eg</literal> "
+"(using Ant), or under Windows, type <literal>build eg</literal>."
+msgstr ""
+"Hibernate ディストリビューション内の <literal>eg/</literal> ディレクトリ内を"
+"見てください。 シンプルなスタンドアローンのアプリケーションが含まれていま"
+"す。 ご使用の JDBC ドライバを <literal>lib/</literal> ディレクトリにコピーし"
+"てから使用するデータベースに対して正しい値を指定するよう <literal>etc/"
+"hibernate.properties</literal> を編集します。 ディストリビューションディレク"
+"トリ内のコマンドプロンプトから、 <literal>ant eg</literal> (Ant を使用)と入力"
+"するか、 Windows 環境の場合は <literal>build eg</literal> と入力します。"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"Use this reference documentation as your primary source of information. "
+"Consider reading <emphasis>Java Persistence with Hibernate</emphasis>
"
+"(http://www.manning.com/bauer2) if you need more help with application "
+"design, or if you prefer a step-by-step tutorial. Also visit http://"
+"caveatemptor.hibernate.org and download the example application for Java "
+"Persistence with Hibernate."
+msgstr ""
+"おもな情報源として本リファレンスドキュメントをご利用ください。 アプリケーショ"
+"ンのデザインに関する詳細、 ステップバイステップによる解説が必要な場合は、 "
+"<emphasis>Hibernate in Action</emphasis> (
http://www.manning.com/bauer)
をお"
+"読みになってもいいでしょう。 また、
http://caveatemptor.hibernate.org から "
+"Hibernate in Action のサンプルアプリケーションをダウンロードすることもできま"
+"す。"
+
+#. Tag: para
+#, no-c-format
+msgid "FAQs are answered on the Hibernate website."
+msgstr "よくある質問とその答え (FAQ) は Hibernate ウェブサイトでご覧ください。"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"Third party demos, examples, and tutorials are linked on the Hibernate "
+"website."
+msgstr ""
+"サードパーティのデモ、 サンプル、 チュートリアルなどは Hibernate のウェブサイ"
+"ト上にリンクされています。"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"The Community Area on the Hibernate website is a good resource for design "
+"patterns and various integration solutions (Tomcat, JBoss AS, Struts, EJB, "
+"etc.)."
+msgstr ""
+"Hibernate ウェブサイト上の Community Area はデザインのパターンやさまざまな統"
+"合ソリューション (Tomcat、 JBoss AS、 Struts、 EJB など)を検索する上で興味深"
+"いリソースになります。"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"If you have questions, use the user forum linked on the Hibernate website. "
+"We also provide a JIRA issue tracking system for bug reports and feature "
+"requests. If you are interested in the development of Hibernate, join the "
+"developer mailing list. If you are interested in translating this "
+"documentation into your language, contact us on the developer mailing list."
+msgstr ""
+"質問がある場合は、 Hibernate ウェブサイト上にリンクされたユーザーフォーラムを"
+"ご利用ください。 また、 バグ報告及び今後のリクエストに関しては JIRA (問題追跡"
+"システム) を提供しています。 Hibernate, の開発に興味がある方は、 開発者用メー"
+"リングリストにご参加ください。 本ドキュメントの翻訳に興味がある方は、 開発者"
+"用メーリングリストよりご連絡ください。"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"Commercial development support, production support, and training for "
+"Hibernate is available through JBoss Inc. (see
http://www.hibernate.org/"
+"SupportTraining/). Hibernate is a Professional Open Source project and a "
+"critical component of the JBoss Enterprise Middleware System (JEMS) suite of
"
+"products."
+msgstr ""
+"Hibernate に関する商業用開発サポート、 実稼働サポート、 トレーニングについて"
+"は JBoss Inc よりご利用頂けます (
http://www.hibernate.org/SupportTraining/ を"
+"参照)。 Hibernate はプロフェッショナルなオープンソースプロジェクトであり、 "
+"JBoss Enterprise Middleware System (JEMS) スィート製品の重要なコンポーネント"
+"になります。"
+
+#. Tag: title
+#, no-c-format
+msgid "Feedback"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"Use <ulink
url=\"http://opensource.atlassian.com/projects/hibernate"
+"\">Hibernate JIRA</ulink> to report errors or request enhacements to
this "
+"documentation."
+msgstr ""
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/architecture.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/architecture.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/architecture.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,36 +1,35 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:25\n"
+"PO-Revision-Date: 2010-01-13 10:25+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: architecture.xml:30
#, no-c-format
msgid "Architecture"
msgstr "アーキテクチャ"
#. Tag: title
-#: architecture.xml:33
#, no-c-format
msgid "Overview"
msgstr "概観"
#. Tag: para
-#: architecture.xml:35
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The diagram below provides a high-level view of the Hibernate architecture:"
-msgstr "Hibernateアーキテクチャの(非常に)高いレベルからのビュー:"
+msgstr "Hibernate アーキテクチャの(非常に)高いレベルからのビュー:"
#. Tag: para
-#: architecture.xml:50
#, fuzzy, no-c-format
msgid ""
"We do not have the scope in this document to provide a more detailed view of
"
@@ -38,61 +37,56 @@
"several different approaches. We will, however, show the two extremes: "
"\"minimal\" architecture and \"comprehensive\"
architecture."
msgstr ""
-"ここで実行時アーキテクチャのより詳細なビューをお見せしましょう。 あいにく、"
-"Hibernateは柔軟であり、いろいろなアプローチをサポートしています。 ここでは、2"
-"つの極端な例をお見せします。 「軽い」アーキテクチャでは、アプリケーションが自"
-"前のJDBCコネクションを用意し、 アプリケーション自身がトランザクションを管理し"
-"ます。 この方法は、Hibernate APIの最小限のサブセットを使います:"
+"ここで実行時アーキテクチャのより詳細なビューをお見せしましょう。あいにく、 "
+"Hibernate は柔軟であり、いろいろなアプローチをサポートしています。ここでは、2"
+"つの極端な例をお見せします。「軽い」アーキテクチャでは、アプリケーションが自"
+"前の JDBC コネクションを用意し、アプリケーション自身がトランザクションを管理"
+"します。この方法は、 Hibernate API の最小限のサブセットを使います:"
#. Tag: para
-#: architecture.xml:56
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This next diagram illustrates how Hibernate utilizes database and "
"configuration data to provide persistence services, and persistent objects, "
"to the application."
msgstr ""
-"この図はHibernateが、アプリケーションに対して永続化サービス (と永続オブジェ"
-"クト)を提供するために、データベースと設定データを使うことを 示しています。"
+"この図は Hibernate が、アプリケーションに対して永続化サービス (と永続オブ"
+"ジェクト)を提供するために、データベースと設定データを使うことを示していま"
+"す。"
#. Tag: para
-#: architecture.xml:61
#, fuzzy, no-c-format
msgid ""
"The \"minimal\" architecture has the application provide its own JDBC
"
"connections and manage its own transactions. This approach uses a minimal "
"subset of Hibernate's APIs:"
msgstr ""
-"ここで実行時アーキテクチャのより詳細なビューをお見せしましょう。 あいにく、"
-"Hibernateは柔軟であり、いろいろなアプローチをサポートしています。 ここでは、2"
-"つの極端な例をお見せします。 「軽い」アーキテクチャでは、アプリケーションが自"
-"前のJDBCコネクションを用意し、 アプリケーション自身がトランザクションを管理し"
-"ます。 この方法は、Hibernate APIの最小限のサブセットを使います:"
+"ここで実行時アーキテクチャのより詳細なビューをお見せしましょう。あいにく、 "
+"Hibernate は柔軟であり、いろいろなアプローチをサポートしています。ここでは、2"
+"つの極端な例をお見せします。「軽い」アーキテクチャでは、アプリケーションが自"
+"前の JDBC コネクションを用意し、アプリケーション自身がトランザクションを管理"
+"します。この方法は、 Hibernate API の最小限のサブセットを使います:"
#. Tag: para
-#: architecture.xml:78
#, fuzzy, no-c-format
msgid ""
"The \"comprehensive\" architecture abstracts the application away from
the "
"underlying JDBC/JTA APIs and allows Hibernate to manage the details."
msgstr ""
-"「重い」アーキテクチャは、アプリケーションから、その下に位置するJDBCやJTAの"
-"APIを 取り払って抽象化し、その詳細の面倒をHibernateに見させます。"
+"「軽い」アーキテクチャは、アプリケーションから、その下に位置する JDBC や JTA "
+"の API を取り払って抽象化し、その詳細の面倒を Hibernate に見させます。"
#. Tag: para
-#: architecture.xml:92
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Here are some definitions of the objects depicted in the diagrams:"
-msgstr "以下は、上の図に含まれるオブジェクトの定義です: <placeholder-1/>"
+msgstr "以下は、図に含まれるオブジェクトの定義です:"
#. Tag: term
-#: architecture.xml:97
#, no-c-format
msgid "SessionFactory
(<literal>org.hibernate.SessionFactory</literal>)"
msgstr "SessionFactory
(<literal>org.hibernate.SessionFactory</literal>)"
#. Tag: para
-#: architecture.xml:99
#, fuzzy, no-c-format
msgid ""
"A threadsafe, immutable cache of compiled mappings for a single database. A "
@@ -101,20 +95,18 @@
"hold an optional (second-level) cache of data that is reusable between "
"transactions at a process, or cluster, level."
msgstr ""
-"1つのデータベースに対するコンパイルされたマッピングの スレッドセーフな(更新"
-"不能の)キャッシュ。 <literal>Session</literal> のファクトリであり、 "
-"<literal>ConnectionProvider</literal> のクライアント。 オプションとして、プロ"
-"セスまたはクラスタレベルにおいて、 トランザクション間で再利用可能なデータの"
+"1つのデータベースに対するコンパイルされたマッピングのスレッドセーフな(更新不"
+"能の)キャッシュ。 <literal>Session</literal> のファクトリであり、 "
+"<literal>ConnectionProvider</literal> のクライアント。オプションとして、プロ"
+"セスまたはクラスタレベルにおいて、トランザクション間で再利用可能なデータの"
"(二次)キャッシュを持ちます。"
#. Tag: term
-#: architecture.xml:109
#, no-c-format
msgid "Session (<literal>org.hibernate.Session</literal>)"
msgstr "Session (<literal>org.hibernate.Session</literal>)"
#. Tag: para
-#: architecture.xml:111
#, fuzzy, no-c-format
msgid ""
"A single-threaded, short-lived object representing a conversation between "
@@ -123,21 +115,19 @@
"holds a mandatory first-level cache of persistent objects that are used when
"
"navigating the object graph or looking up objects by identifier."
msgstr ""
-"アプリケーションと永続ストアとの対話を表す、 シングルスレッドで短命のオブジェ"
-"クト。 JDBCコネクションをラップします。 <literal>Transaction</literal> のファ"
-"クトリです。 永続オブジェクトの必須の(一次)キャッシュを保持します。 この"
-"キャッシュはオブジェクトグラフをナビゲーションする時や、 識別子でオブジェクト"
+"アプリケーションと永続ストアとの対話を表す、シングルスレッドで短命のオブジェ"
+"クト。 JDBC コネクションをラップします。 <literal>Transaction</literal> の"
+"ファクトリです。永続オブジェクトの必須の(一次)キャッシュを保持します。この"
+"キャッシュはオブジェクトグラフをナビゲーションする時や、識別子でオブジェクト"
"を検索する時に使われます。"
#. Tag: term
-#: architecture.xml:121
#, no-c-format
msgid "Persistent objects and collections"
msgstr "Persistent objects と Collections"
#. Tag: para
-#: architecture.xml:123
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Short-lived, single threaded objects containing persistent state and "
"business function. These can be ordinary JavaBeans/POJOs. They are "
@@ -146,43 +136,38 @@
"in any application layer (for example, directly as data transfer objects to "
"and from presentation)."
msgstr ""
-"永続化状態とビジネスメソッドを持つ、短命でシングルスレッドのオブジェクト。 こ"
-"れは通常のJavaBeans/POJOのこともありますが、特徴的なことは、 その時点での(た"
-"だ1つの) <literal>Session</literal> と関連していることです。 "
-"<literal>Session</literal> がクローズされるとすぐに、 それらは切り離されて他"
-"のアプリケーション層から自由に使うことができます。 (例えばデータ・トランス"
-"ファ・オブジェクトとして、 プレゼンテーション層から、またはプレゼンテーション"
-"層へ直接使用できます。)"
+"永続化状態とビジネス機能を持つ、短命でシングルスレッドのオブジェクト。これは"
+"通常の JavaBeans/POJO のこともありますが、特徴的なことは、その時点での(ただ1"
+"つの) <literal>Session</literal> と関連していることです。
<literal>Session</"
+"literal> がクローズされるとすぐに、それらは切り離されて他のアプリケーション層"
+"から自由に使うことができます(例えばデータトランスファオブジェクトとして、プ"
+"レゼンテーション層から、またはプレゼンテーション層へ直接使用できます)。"
#. Tag: term
-#: architecture.xml:133
#, no-c-format
msgid "Transient and detached objects and collections"
msgstr "Transient と detached な objects と Collections"
#. Tag: para
-#: architecture.xml:135
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Instances of persistent classes that are not currently associated with a "
"<literal>Session</literal>. They may have been instantiated by the
"
"application and not yet persisted, or they may have been instantiated by a "
"closed <literal>Session</literal>."
msgstr ""
-"現時点では <literal>Session</literal> と関連していない、 永続クラスのインスタ"
-"ンス。 すでにアプリケーション側でインスタンス化されていて、まだ永続化されてい"
-"ないか、 クローズされた <literal>Session</literal> でインスタンス化されたかの"
+"現時点では <literal>Session</literal> と関連していない、永続クラスのインスタ"
+"ンス。すでにアプリケーション側でインスタンス化されていて、まだ永続化されてい"
+"ないか、クローズされた <literal>Session</literal> でインスタンス化されたかの"
"どちらかです。"
#. Tag: term
-#: architecture.xml:144
#, no-c-format
msgid "Transaction (<literal>org.hibernate.Transaction</literal>)"
msgstr "Transaction
(<literal>org.hibernate.Transaction</literal>)"
#. Tag: para
-#: architecture.xml:146
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"(Optional) A single-threaded, short-lived object used by the application to "
"specify atomic units of work. It abstracts the application from the "
@@ -191,16 +176,15 @@
"transaction demarcation, either using the underlying API or "
"<literal>Transaction</literal>, is never optional."
msgstr ""
-"(オプション)原子性を持つ作業単位(Unit of Work)を指定するために、アプリケー"
-"ションが使用する、 シングルスレッドで短命なオブジェクト。 下に位置するJDBC、"
-"JTA、CORBAトランザクションからアプリケーションを抽象化します。 "
-"<literal>Session</literal> は、時には いくつかの
<literal>Transaction</"
-"literal> をまたがるかもしれません。 しかし、下の層のAPIを使うにせよ、 "
-"<literal>Transaction</literal> を使うにせよ、 トランザクション境界を設定する"
-"ことは、決してオプションではありません!。"
+"(オプション) 原子性を持つ作業単位 (Unit of Work) を指定するために、アプリケー"
+"ションが使用する、シングルスレッドで短命なオブジェクト。下に位置する JDBC 、 "
+"JTA 、 CORBA トランザクションからアプリケーションを抽象化します。 "
+"<literal>Session</literal> は、時にはいくつかの
<literal>Transaction</"
+"literal> をまたがるかもしれません。しかし、下の層の API を使うにせよ、 "
+"<literal>Transaction</literal> を使うにせよ、トランザクション境界を設定するこ"
+"とは、決してオプションではありません。"
#. Tag: term
-#: architecture.xml:157
#, no-c-format
msgid ""
"ConnectionProvider
(<literal>org.hibernate.connection.ConnectionProvider</"
@@ -210,21 +194,19 @@
"literal>)"
#. Tag: para
-#: architecture.xml:159
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"(Optional) A factory for, and pool of, JDBC connections. It abstracts the "
"application from underlying <literal>Datasource</literal> or "
"<literal>DriverManager</literal>. It is not exposed to application, but
it "
"can be extended and/or implemented by the developer."
msgstr ""
-"(オプション)JDBCコネクション(とそのプール)のファクトリ。 下の層に位置する "
+"(オプション) JDBC コネクション(とそのプール)のファクトリ。下の層に位置する "
"<literal>Datasource</literal> や
<literal>DriverManager</literal> からアプリ"
-"ケーションを抽象化します。 アプリケーションには公開されませんが、開発者が継承"
+"ケーションを抽象化します。アプリケーションには公開されませんが、開発者が継承"
"または実装することは可能です。"
#. Tag: term
-#: architecture.xml:167
#, no-c-format
msgid ""
"TransactionFactory
(<literal>org.hibernate.TransactionFactory</literal>)"
@@ -232,90 +214,80 @@
"TransactionFactory
(<literal>org.hibernate.TransactionFactory</literal>)"
#. Tag: para
-#: architecture.xml:169
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"(Optional) A factory for <literal>Transaction</literal> instances. It
is not "
"exposed to the application, but it can be extended and/or implemented by the
"
"developer."
msgstr ""
-"(オプション) <literal>Transaction</literal> インスタンスのファクトリ。 アプリ"
+"(オプション) <literal>Transaction</literal> インスタンスのファクトリ。アプリ"
"ケーションには公開されませんが、開発者が継承または実装することは可能です。"
-#. Tag: emphasis
-#: architecture.xml:176
+#. Tag: term
#, no-c-format
-msgid "Extension Interfaces"
-msgstr "Extension Interfaces"
+msgid "<emphasis>Extension Interfaces</emphasis>"
+msgstr "<emphasis>Extension Interfaces</emphasis>"
#. Tag: para
-#: architecture.xml:178
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate offers a range of optional extension interfaces you can implement "
"to customize the behavior of your persistence layer. See the API "
"documentation for details."
msgstr ""
-"Hibernateは、永続層の振る舞いをカスタマイズするために、 多くのオプション拡張"
-"インタフェースを用意しています。 詳細はAPIドキュメントを参照してください。"
+"Hibernate は、永続層の振る舞いをカスタマイズするために、多くのオプション拡張"
+"インタフェースを用意しています。詳細は API ドキュメントを参照してください。"
#. Tag: para
-#: architecture.xml:187
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Given a \"minimal\" architecture, the application bypasses the "
"<literal>Transaction</literal>/<literal>TransactionFactory</literal>
and/or "
"<literal>ConnectionProvider</literal> APIs to communicate with JTA or
JDBC "
"directly."
msgstr ""
-"「軽い」アーキテクチャでは、アプリケーションは直接JTAやJDBCと対話するため"
+"「軽い」アーキテクチャでは、アプリケーションは直接 JTA や JDBC と対話するため"
"に、 <literal>Transaction</literal> や
<literal>TransactionFactory</literal> "
-"や <literal>ConnectionProvider</literal> をバイパスします。"
+"や <literal>ConnectionProvider</literal> の API をバイパスします。"
#. Tag: title
-#: architecture.xml:195
#, no-c-format
msgid "Instance states"
msgstr "インスタンスの状態"
#. Tag: para
-#: architecture.xml:196
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An instance of a persistent class can be in one of three different states. "
"These states are defined in relation to a <emphasis>persistence
context</"
"emphasis>. The Hibernate <literal>Session</literal> object is the
"
"persistence context. The three different states are as follows:"
msgstr ""
-"永続クラスのインスタンスは、次の3つの異なる状態のどれかになります。 それ"
-"は、 <emphasis>永続コンテキスト</emphasis> によって決まります。 Hibernateの "
-"<literal>Session</literal> オブジェクトが、永続コンテキストになります。"
+"永続クラスのインスタンスは、次の3つの異なる状態のどれかになります。それは、 "
+"<emphasis>永続コンテキスト</emphasis> によって決まります。 Hibernate の "
+"<literal>Session</literal> オブジェクトが、永続コンテキストになります:"
#. Tag: term
-#: architecture.xml:204
#, no-c-format
msgid "transient"
msgstr "transient"
#. Tag: para
-#: architecture.xml:206
#, fuzzy, no-c-format
msgid ""
"The instance is not associated with any persistence context. It has no "
"persistent identity or primary key value."
msgstr ""
-"この状態のインスタンスは、現在もそして過去においても、 永続コンテキストに関連"
-"づいていません。また、永続ID(主キーの値)を 持っていません。"
+"この状態のインスタンスは、現在もそして過去においても、永続コンテキストに関連"
+"づいていません。また、永続 ID (主キーの値)を 持っていません。"
#. Tag: term
-#: architecture.xml:214
#, no-c-format
msgid "persistent"
msgstr "persistent"
#. Tag: para
-#: architecture.xml:216
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The instance is currently associated with a persistence context. It has a "
"persistent identity (primary key value) and can have a corresponding row in "
@@ -323,21 +295,19 @@
"<emphasis>guarantees</emphasis> that persistent identity is equivalent
to "
"Java identity in relation to the in-memory location of the object."
msgstr ""
-"この状態のインスタンスは、その時点で永続コンテキストに関連づいています。 ま"
-"た、永続ID(主キーの値)を持ち、 たいていはデータベースに対応する行を持ってい"
-"るでしょう。 個々の永続コンテキストのなかでは、永続IDが JavaのID(オブジェク"
-"トのメモリ上の位置)と同じであることを Hibernateが <emphasis>保証</emphasis> "
-"します。"
+"この状態のインスタンスは、その時点で永続コンテキストに関連づいています。ま"
+"た、永続 ID (主キーの値)を持ち、たいていはデータベースに対応する行を持って"
+"いるでしょう。特定の永続コンテキストのなかでは、永続 ID が Java の ID (オブ"
+"ジェクトのメモリ上の位置)と同じであることを Hibernate が <emphasis>保証</"
+"emphasis> します。"
#. Tag: term
-#: architecture.xml:228
#, no-c-format
msgid "detached"
msgstr "detached"
#. Tag: para
-#: architecture.xml:230
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The instance was once associated with a persistence context, but that "
"context was closed, or the instance was serialized to another process. It "
@@ -345,46 +315,43 @@
"For detached instances, Hibernate does not guarantee the relationship "
"between persistent identity and Java identity."
msgstr ""
-"この状態のインスタンスは、かつて永続コンテキストに関連づけられたが、 そのコン"
-"テキストがクローズされたか、あるいは、 他のプロセスにそのインスタンスがシリア"
-"ライズされたかです。 このインスタンスは、永続IDを持ち、たいていはデータベース"
-"に 対応する行を持っているでしょう。分離インスタンスに対しては、 永続IDとJava"
-"のIDとの関連は、Hibernateが保証しません。"
+"この状態のインスタンスは、かつて永続コンテキストに関連づけられたが、そのコン"
+"テキストがクローズされたか、あるいは、他のプロセスにそのインスタンスがシリア"
+"ライズされたかです。このインスタンスは、永続 ID を持ち、たいていはデータベー"
+"スに対応する行を持っているでしょう。分離インスタンスに対しては、永続 ID と "
+"Java の ID との関連は、 Hibernate が保証しません。"
#. Tag: title
-#: architecture.xml:245
#, no-c-format
msgid "JMX Integration"
-msgstr "JMXとの統合"
+msgstr "JMX との統合"
#. Tag: para
-#: architecture.xml:247
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"JMX is the J2EE standard for the management of Java components. Hibernate "
"can be managed via a JMX standard service. AN MBean implementation is "
"provided in the distribution:
<literal>org.hibernate.jmx.HibernateService</"
"literal>."
msgstr ""
-"JMXはJavaコンポーネント管理のJ2EE標準です。 JMX標準サービスを通して、"
-"Hibernateは管理されます。 ディストリビューションの中に <literal>org."
-"hibernate.jmx.HibernateService</literal> という MBean実装を用意しています。"
+"JMX は Java コンポーネント管理の J2EE 標準です。 JMX 標準サービスを通して、 "
+"Hibernate は管理されます。ディストリビューションの中に <literal>org."
+"hibernate.jmx.HibernateService</literal> という MBean 実装を用意しています。"
#. Tag: para
-#: architecture.xml:253
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For an example of how to deploy Hibernate as a JMX service on the JBoss "
"Application Server, please see the JBoss User Guide. JBoss AS also provides "
"these benefits if you deploy using JMX:"
msgstr ""
-"JBoss アプリケーションサーバー上にHibernateをJMXサービスとしてデプロイする方"
-"法の例としては、 JBoss ユーザガイドを参照してください。 JBoss アプリケーショ"
-"ンサーバーにおいて、 JMXを使ってデプロイすると、次のメリットが得られます。"
+"JBoss アプリケーションサーバー上に Hibernate を JMX サービスとしてデプロイす"
+"る方法の例としては、 JBoss ユーザーガイドを参照してください。 JBoss アプリ"
+"ケーションサーバーにおいて、 JMX を使ってデプロイすると、次のメリットが得られ"
+"ます:"
#. Tag: para
-#: architecture.xml:261
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Session Management</emphasis>: the Hibernate
<literal>Session</"
"literal>'s life cycle can be automatically bound to the scope of a JTA
"
@@ -396,19 +363,18 @@
"the <literal>HibernateContext</literal> to access a
<literal>Session</"
"literal>."
msgstr ""
-"<emphasis>セッション管理:</emphasis> Hibernateの
<literal>Session</literal> "
-"のライフサイクルは、 自動的にJTAトランザクションのスコープに結びつけられま"
+"<emphasis>セッション管理:</emphasis> Hibernate の
<literal>Session</literal> "
+"のライフサイクルは、自動的に JTA トランザクションのスコープに結びつけられま"
"す。これは、もはや手動で <literal>Session</literal> をオープンしたり、クロー"
-"ズしたりする必要がないことを意味します。 これは、JBoss EJB インターセプタの仕"
-"事になります。 また、コードのどこでトランザクション境界を設定するかについ"
-"て、 もはや悩む必要がありません(もちろん移植可能な永続層を書かかなくていいの"
-"ならば、 オプションのHibernateの <literal>Transaction</literal> を使用してく"
-"ださい。) <literal>Session</literal> にアクセスするためには、 "
-"<literal>HibernateContext</literal> を コールしてください。"
+"ズしたりする必要がないことを意味します。これは、 JBoss EJB インターセプタの仕"
+"事になります。また、コードのどこでトランザクション境界を設定するかについて、"
+"もはや悩む必要がありません(もちろん移植可能な永続層を書かかなくていいのなら"
+"ば、オプションの Hibernate の <literal>Transaction</literal> を使用してくださ"
+"い。) <literal>Session</literal> にアクセスするためには、 "
+"<literal>HibernateContext</literal> をコールしてください。"
#. Tag: para
-#: architecture.xml:273
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>HAR deployment</emphasis>: the Hibernate JMX service is
deployed "
"using a JBoss service deployment descriptor in an EAR and/or SAR file, as it
"
@@ -418,61 +384,55 @@
"deployment, JBoss will automatically detect all mapping files in your HAR "
"file."
msgstr ""
-"<emphasis>HAR デプロイ:</emphasis> 通常、(EAR または SAR ファイルにある)"
-"JBoss サービス デプロイメントディスクリプタを使って、Hibernate JMX サービスを"
-"デプロイします。 それは、Hibernateの <literal>SessionFactory</literal> の全て"
-"の一般的な設定オプションを サポートします。しかし依然としてデプロイメントディ"
-"スクリプタのなかにすべてのマッピングファイルの 名前を挙げる必要があります。 "
-"もし、オプションのHARデプロイメントを使うことを決めたなら、 JBossは自動的に"
-"HARファイルのなかの全てのマッピングファイルを検出します。"
+"<emphasis>HAR デプロイ:</emphasis> 通常、( EAR または SAR ファイルにある) "
+"JBoss サービスデプロイメントディスクリプタを使って、 Hibernate JMX サービスを"
+"デプロイします。それは、 Hibernate の <literal>SessionFactory</literal> の全"
+"ての一般的な設定オプションをサポートします。しかし依然としてデプロイメント"
+"ディスクリプタのなかにすべてのマッピングファイルの名前を挙げる必要がありま"
+"す。もし、オプションの HAR デプロイメントを使うことを決めたなら、 JBoss は自"
+"動的に HAR ファイルのなかの全てのマッピングファイルを検出します。"
#. Tag: para
-#: architecture.xml:284
#, no-c-format
msgid ""
"Consult the JBoss AS user guide for more information about these options."
msgstr ""
-"これらのオプションについての詳細な情報は、JBossアプリケーションサーバユーザガ"
-"イドを 参考にしてください。"
+"これらのオプションについての詳細な情報は、 JBoss アプリケーションサーバーユー"
+"ザーガイドを参考にしてください。"
#. Tag: para
-#: architecture.xml:288
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Another feature available as a JMX service is runtime Hibernate statistics. "
-"See <xref linkend=\"configuration-optional-statistics\"/> for more
"
+"See <xref linkend=\"configuration-optional-statistics\" /> for more
"
"information."
msgstr ""
-"JMXサービスとして利用可能な他の機能に、Hibernate実行時統計情報があります。 "
+"JMX サービスとして利用可能な他の機能に、 Hibernate 実行時統計情報があります。"
"<xref linkend=\"configuration-optional-statistics\"/>
を見てください。"
#. Tag: title
-#: architecture.xml:295
#, no-c-format
msgid "JCA Support"
msgstr "JCA サポート"
#. Tag: para
-#: architecture.xml:296
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate can also be configured as a JCA connector. Please see the website "
"for more information. Please note, however, that at this stage Hibernate JCA
"
"support is under development."
msgstr ""
-"Hibernate は JCA コネクタとしても設定できます。詳細については、Webサイトを見"
-"てください。 Hibernate JCA サポートは、今のところ実験段階として考えられている"
-"ことに注意してください。"
+"Hibernate は JCA コネクタとしても設定できます。詳細については、 Web サイトを"
+"見てください。 Hibernate JCA サポートは、今のところ実験段階として考えられてい"
+"ることに注意してください。"
#. Tag: title
-#: architecture.xml:303
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Contextual sessions"
msgstr "コンテキスト上のセッション"
#. Tag: para
-#: architecture.xml:304
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Most applications using Hibernate need some form of \"contextual\"
session, "
"where a given session is in effect throughout the scope of a given context. "
@@ -484,19 +444,18 @@
"utilized third-party frameworks, such as Spring or Pico, which provided "
"proxy/interception-based contextual sessions."
msgstr ""
-"Hibernate を使ったアプリケーションは、ほとんど、なんらかの形で\"コンテキスト"
-"上の\"セッションが必要になります。 「コンテキスト上のセッション」は、特定のコ"
-"ンテキストのスコープのなかで有効なセッションのことです。 しかし、通常アプリ"
-"ケーションごとにコンテキストを構成するものの定義は異なります。 しかも、異なる"
-"複数のコンテキストは、現時点に対して異なるスコープを定義します。 バージョン"
-"3.0より前の Hibernate では、自作の <literal>ThreadLocal</literal> ベースの"
-"「コンテキスト上のセッション」を 利用するか、 <literal>HibernateUtil</"
-"literal> のようなヘルパークラスを利用するか、 proxy/interception ベースの「コ"
-"ンテキスト上のセッション」を提供する (Spring や Pico のような)サードパー"
-"ティのフレームワークを利用するかのいずれかでした。"
+"Hibernate を使ったアプリケーションは、ほとんど、なんらかの形で「コンテキスト"
+"上の」セッションが必要になります。「コンテキスト上のセッション」は、特定のコ"
+"ンテキストのスコープのなかで有効なセッションのことです。しかし、通常アプリ"
+"ケーションごとにコンテキストを構成するものの定義は異なります。しかも、異なる"
+"複数のコンテキストは、現時点に対して異なるスコープを定義します。バージョン3.0"
+"より前の Hibernate では、自作の <literal>ThreadLocal</literal> ベースの「コン"
+"テキスト上のセッション」を利用するか、 <literal>HibernateUtil</literal> のよ"
+"うなヘルパークラスを利用するか、 proxy/interception ベースの「コンテキスト上"
+"のセッション」を提供する (Spring や Pico のような)サードパーティのフレーム"
+"ワークを利用するかのいずれかでした。"
#. Tag: para
-#: architecture.xml:313
#, fuzzy, no-c-format
msgid ""
"Starting with version 3.0.1, Hibernate added the
<literal>SessionFactory."
@@ -509,20 +468,19 @@
"deployed into a <literal>J2EE</literal> container. Based on that, the
"
"<literal>JTA</literal>-based contextual sessions are all you need to
use."
msgstr ""
-"バージョン 3.0.1 から、Hibernate には <literal>SessionFactory."
-"getCurrentSession()</literal> が 加わりました。 これは、 <literal>JTA</"
+"バージョン 3.0.1 から、 Hibernate には <literal>SessionFactory."
+"getCurrentSession()</literal> メソッドが加わりました。これは、 <literal>JTA</"
"literal> トランザクションの使用を前提にしています。 <literal>JTA</literal> ト"
"ランザクションは、現在のセッションのスコープとコンテキストの両方を定義しま"
-"す。 Hibernate チームは、次のことを主張します。 巨大なスタンドアロンの "
+"す。 Hibernate チームは、次のことを主張します。巨大なスタンドアロンの "
"<literal>JTA TransactionManager</literal> 実装が成熟したら、
<literal>J2EE</"
-"literal> コンテナ上にデプロイされるかどうかにかかわらず、 ほとんどの(すべて"
-"とは言わないが)アプリケーションが、 <literal>JTA</literal> トランザクション"
-"管理を使用すべきであると。 この考えに基づくと、 <literal>JTA</literal> ベース"
-"の「コンテキスト上のセッション」を 使うしかないでしょう。"
+"literal> コンテナ上にデプロイされるかどうかにかかわらず、ほとんどの(すべてと"
+"は言わないが)アプリケーションが、 <literal>JTA</literal> トランザクション管"
+"理を使用すべきであると。この考えに基づくと、 <literal>JTA</literal> ベースの"
+"「コンテキスト上のセッション」を使うしかないでしょう。"
#. Tag: para
-#: architecture.xml:323
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"However, as of version 3.1, the processing behind
<literal>SessionFactory."
"getCurrentSession()</literal> is now pluggable. To that end, a new extension
"
@@ -532,14 +490,13 @@
"pluggability of the scope and context of defining current sessions."
msgstr ""
"しかし、バージョン 3.1 からは、 <literal>SessionFactory.getCurrentSession()</"
-"literal> の後の処理が、 プラガブルになりました。 これを受けて、現在のセッショ"
-"ンを定義するスコープとコンテキストのプラガビリティを可能にするために、 新しい"
-"拡張インタフェース ( <literal>org.hibernate.context.CurrentSessionContext</"
-"literal> ) と 新しい構成パラメータ ( <literal>hibernate."
+"literal> の後の処理が、プラガブルになりました。これを受けて、現在のセッション"
+"を定義するスコープとコンテキストのプラガビリティを可能にするために、新しい拡"
+"張インタフェース ( <literal>org.hibernate.context.CurrentSessionContext</"
+"literal> ) と新しい構成パラメータ ( <literal>hibernate."
"current_session_context_class</literal> ) が追加されました。"
#. Tag: para
-#: architecture.xml:330
#, fuzzy, no-c-format
msgid ""
"See the Javadocs for the <literal>org.hibernate.context."
@@ -550,15 +507,14 @@
"implementations of this interface:"
msgstr ""
"<literal>org.hibernate.context.CurrentSessionContext</literal>
インタフェース"
-"の規約についての 詳細な内容は Javadoc を参照してください。 それには、 "
-"<literal>currentSession()</literal> という1つのメソッドが定義されており、 そ"
-"の実装は、現在の「コンテキスト上のセッション」を追跡することに責任を持ちま"
-"す。 そのまま使えるように、Hibernateはこのインタフェースの実装を2つ提供してい"
-"ます。"
+"の規約についての詳細な内容は Javadoc を参照してください。それには、 "
+"<literal>currentSession()</literal> という1つのメソッドが定義されており、その"
+"実装は、現在の「コンテキスト上のセッション」を追跡することに責任を持ちます。"
+"そのまま使えるように、 Hibernate はこのインタフェースの実装を2つ提供していま"
+"す。"
#. Tag: para
-#: architecture.xml:340
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>org.hibernate.context.JTASessionContext</literal>: current
sessions "
"are tracked and scoped by a <literal>JTA</literal> transaction. The
"
@@ -566,24 +522,22 @@
"the Javadocs for details."
msgstr ""
"<literal>org.hibernate.context.JTASessionContext</literal> -
<literal>JTA</"
-"literal> トランザクションによって、現在のセッションが追跡され、 スコープを決"
-"められます。この処理は、古いJTAだけのアプローチとまったく同じです。 詳細は"
-"Javadocを参照してください。"
+"literal> トランザクションによって、現在のセッションが追跡され、スコープを決め"
+"られます。この処理は、古い JTA だけのアプローチとまったく同じです。詳細は "
+"Javadoc を参照してください。"
#. Tag: para
-#: architecture.xml:348
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>org.hibernate.context.ThreadLocalSessionContext</literal>:current
"
"sessions are tracked by thread of execution. See the Javadocs for details."
msgstr ""
"<literal>org.hibernate.context.ThreadLocalSessionContext</literal> -
スレッド"
-"の実行によって、現在のセッションが追跡されます。 詳細はJavadocを参照してくだ"
+"の実行によって、現在のセッションが追跡されます。詳細は Javadoc を参照してくだ"
"さい。"
#. Tag: para
-#: architecture.xml:354
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>org.hibernate.context.ManagedSessionContext</literal>: current
"
"sessions are tracked by thread of execution. However, you are responsible to
"
@@ -591,14 +545,13 @@
"this class: it does not open, flush, or close a
<literal>Session</literal>."
msgstr ""
"<literal>org.hibernate.context.ManagedSessionContext</literal> -
スレッドの実"
-"行によって、現在のセッションが追跡されます。 しかし、このクラスのstaticメソッ"
-"ドで <literal>Session</literal> インスタンスを バインド/アンバインドする責任"
-"はあなたにあります。 これは決して <literal>Session</literal> をオープン、フ"
+"行によって、現在のセッションが追跡されます。しかし、このクラスの static メ"
+"ソッドで <literal>Session</literal> インスタンスをバインド/アンバインドする責"
+"任はあなたにあります。これは決して <literal>Session</literal> をオープン、フ"
"ラッシュ、クローズしません。"
#. Tag: para
-#: architecture.xml:363
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The first two implementations provide a \"one session - one database "
"transaction\" programming model. This is also also known and used as "
@@ -610,25 +563,24 @@
"utilize the JTA interfaces to demarcate transactions. If you execute in an "
"EJB container that supports CMT, transaction boundaries are defined "
"declaratively and you do not need any transaction or session demarcation "
-"operations in your code. Refer to <xref linkend=\"transactions\"/>
for more "
+"operations in your code. Refer to <xref linkend=\"transactions\" />
for more "
"information and code examples."
msgstr ""
-"始めの2つの実装は、\"1セッション - 1データベーストランザクション\" プログラミ"
-"ングモデルを提供します。 これは <emphasis>リクエストごとのセッション"
+"はじめの2つの実装は、「1セッション - 1データベーストランザクション」プログラ"
+"ミングモデルを提供します。これは <emphasis>リクエストごとのセッション"
"(session-per-request)</emphasis> としても知られており、使われています。 "
"Hibernate セッションの開始と終了は、データベーストランザクションの期間で決ま"
-"ります。 JTAを使わない普通のJSEで、プログラム上のトランザクション境界設定を行"
-"うなら、 コードから基礎のトランザクションシステムを隠蔽するために、 "
-"Hibernate <literal>Transaction</literal> APIを使うとよいでしょう。 JTAを使う"
-"なら、トランザクションの境界設定には、JTAインターフェイスを使ってください。 "
-"CMTをサポートするEJBコンテナで実行するつもりなら、トランザクション境界は宣言"
-"的に定義できるため、 コード上でトランザクションやセッションの境界を設定する必"
-"要はありません。 さらに詳細な情報やコードの例は、 <xref linkend="
+"ります。 JTA を使わない普通の JSE で、プログラム上のトランザクション境界設定"
+"を行うなら、コードから基礎のトランザクションシステムを隠蔽するために、 "
+"Hibernate <literal>Transaction</literal> API を使うとよいでしょう。 JTA を使"
+"うなら、トランザクションの境界設定には、 JTA インターフェースを使ってくださ"
+"い。 CMT をサポートする EJB コンテナで実行するつもりなら、トランザクション境"
+"界は宣言的に定義できるため、コード上でトランザクションやセッションの境界を設"
+"定する必要はありません。さらに詳細な情報やコードの例は、 <xref linkend="
"\"transactions\"/> を参照してください。"
#. Tag: para
-#: architecture.xml:375
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>hibernate.current_session_context_class</literal>
configuration "
"parameter defines which <literal>org.hibernate.context."
@@ -643,10 +595,9 @@
msgstr ""
"<literal>hibernate.current_session_context_class</literal>
設定パラメータ"
"は、 <literal>org.hibernate.context.CurrentSessionContext</literal>
のどの実"
-"装を使うかを指定します。 下位互換性のため、このパラメータが設定されず "
+"装を使うかを指定します。下位互換性のため、このパラメータが設定されず "
"<literal>org.hibernate.transaction.TransactionManagerLookup</literal>
が設定"
-"されていた場合、 Hibernateは <literal>org.hibernate.context."
-"JTASessionContext</literal> を使うことに注意してください。 通常このパラメータ"
-"の値には、3つの実装の中から使用する実装クラスの名前を直接指定します。 しか"
-"し、\"jta\", \"thread\",
\"managed\"というそれぞれの省略名も用意されていま"
-"す。"
+"されていた場合、 Hibernate は <literal>org.hibernate.context."
+"JTASessionContext</literal> を使うことに注意してください。通常このパラメータ"
+"の値には、3つの実装の中から使用する実装クラスの名前を直接指定します。しかし、"
+"\"jta\"、 \"thread\"、
\"managed\"というそれぞれの省略名も用意されています。"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/association_mapping.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/association_mapping.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/association_mapping.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,30 +1,30 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:25\n"
+"PO-Revision-Date: 2010-01-06 17:26+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: association_mapping.xml:30
#, no-c-format
msgid "Association Mappings"
msgstr "関連マッピング"
#. Tag: title
-#: association_mapping.xml:33
#, no-c-format
msgid "Introduction"
msgstr "イントロダクション"
#. Tag: para
-#: association_mapping.xml:35
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Association mappings are often the most difficult thing to implement "
"correctly. In this section we examine some canonical cases one by one, "
@@ -32,47 +32,44 @@
"use <literal>Person</literal> and
<literal>Address</literal> in all the "
"examples."
msgstr ""
-"関連マッピングはしばしば理解が最も難しいものになります。 この章では、基本的な"
-"一つ一つのケースについて述べます。 単方向のマッピングから始め、それから双方向"
-"のケースについて考えていきます。 例として、<literal>Person</literal> と "
+"関連マッピングはしばしば理解が最も難しいものになります。この章では、基本的な"
+"一つ一つのケースについて述べます。単方向のマッピングから始め、それから双方向"
+"のケースについて考えていきます。例として、 <literal>Person</literal> と "
"<literal>Address</literal> を用います。"
#. Tag: para
-#: association_mapping.xml:43
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Associations will be classified by multiplicity and whether or not they map "
"to an intervening join table."
msgstr ""
-"関連は、結合テーブルを入れるかかどうかと、 多重度によって分類することにしま"
+"関連は、結合テーブルを入れるかかどうかと、多重度によって分類することにしま"
"す。"
#. Tag: para
-#: association_mapping.xml:48
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Nullable foreign keys are not considered to be good practice in traditional "
"data modelling, so our examples do not use nullable foreign keys. This is "
"not a requirement of Hibernate, and the mappings will work if you drop the "
"nullability constraints."
msgstr ""
-"すべての例でnot nullの外部キーを使用します。 これはHibernateの要件ではありま"
-"せん。 not null制約を外したとしても、マッピングは問題なく動作します。"
+"null 可能な外部キーは従来型データモデリングの中では良い習慣と見なされていない"
+"ため、すべての例で not null の外部キーを使用します。これは Hibernate の要件で"
+"はありません。 not null 制約を外したとしても、マッピングは問題なく動作しま"
+"す。"
#. Tag: title
-#: association_mapping.xml:58
#, no-c-format
msgid "Unidirectional associations"
msgstr "単方向関連"
#. Tag: title
-#: association_mapping.xml:61 association_mapping.xml:132
#, fuzzy, no-c-format
msgid "Many-to-one"
-msgstr "多対一"
+msgstr "many-to-one"
#. Tag: para
-#: association_mapping.xml:63
#, no-c-format
msgid ""
"A <emphasis>unidirectional many-to-one association</emphasis> is the
most "
@@ -81,192 +78,57 @@
"<emphasis>単方向多対一関連</emphasis> は単方向関連の中で最も一般的なもので"
"す。"
-#. Tag: programlisting
-#: association_mapping.xml:68
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <many-to-one name=\"address\" \n"
-" column=\"addressId\"\n"
-" not-null=\"true\"/>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: association_mapping.xml:69 association_mapping.xml:185
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"create table Person ( personId bigint not null primary key, addressId bigint
"
-"not null )\n"
-"create table Address ( addressId bigint not null primary key )\n"
-" ]]>"
-msgstr ""
-
#. Tag: title
-#: association_mapping.xml:74 association_mapping.xml:145
-#: association_mapping.xml:210
#, fuzzy, no-c-format
msgid "One-to-one"
-msgstr "一対一"
+msgstr "one-to-one"
#. Tag: para
-#: association_mapping.xml:76
#, no-c-format
msgid ""
"A <emphasis>unidirectional one-to-one association on a foreign
key</"
"emphasis> is almost identical. The only difference is the column unique "
"constraint."
msgstr ""
-"<emphasis>外部キーの単方向一対一関連</emphasis> はほとんど同じものです。 唯一"
+"<emphasis>外部キーの単方向一対一関連</emphasis> はほとんど同じものです。唯一"
"違うのは、カラムのユニークな制約です。"
-#. Tag: programlisting
-#: association_mapping.xml:81
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <many-to-one name=\"address\" \n"
-" column=\"addressId\" \n"
-" unique=\"true\"\n"
-" not-null=\"true\"/>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: association_mapping.xml:82 association_mapping.xml:218
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"create table Person ( personId bigint not null primary key, addressId bigint
"
-"not null unique )\n"
-"create table Address ( addressId bigint not null primary key )\n"
-" ]]>"
-msgstr ""
-
-#. Tag: para
-#: association_mapping.xml:84
-#, fuzzy, no-c-format
-msgid ""
"A <emphasis>unidirectional one-to-one association on a primary
key</"
"emphasis> usually uses a special id generator In this example, however, we
"
"have reversed the direction of the association:"
msgstr ""
-"<emphasis>主キーの単方向一対一関連</emphasis> は通常、特別なIDジェネレータを"
-"使います。 (この例では関連の方向が逆になっていることに注意してください)"
+"<emphasis>主キーの単方向一対一関連</emphasis> は通常、特別な ID ジェネレータ"
+"を使います。 (この例では関連の方向が逆になっていることに注意してください)"
-#. Tag: programlisting
-#: association_mapping.xml:90
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"foreign\">\n"
-" <param name=\"property\">person</param>\n"
-" </generator>\n"
-" </id>\n"
-" <one-to-one name=\"person\"
constrained=\"true\"/>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: association_mapping.xml:91 association_mapping.xml:226
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"create table Person ( personId bigint not null primary key )\n"
-"create table Address ( personId bigint not null primary key )\n"
-" ]]>"
-msgstr ""
-
#. Tag: title
-#: association_mapping.xml:96 association_mapping.xml:118
#, fuzzy, no-c-format
msgid "One-to-many"
-msgstr "一対多"
+msgstr "one-to-many"
#. Tag: para
-#: association_mapping.xml:98
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <emphasis>unidirectional one-to-many association on a foreign
key</"
"emphasis> is an unusual case, and is not recommended."
msgstr ""
-"<emphasis>外部キーの単方向一対多関連</emphasis> はとても特殊なケースで、 あま"
+"<emphasis>外部キーの単方向一対多関連</emphasis> はとても特殊なケースで、あま"
"り推奨されていません。"
-#. Tag: programlisting
-#: association_mapping.xml:103
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <set name=\"addresses\">\n"
-" <key column=\"personId\" \n"
-" not-null=\"true\"/>\n"
-" <one-to-many class=\"Address\"/>\n"
-" </set>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: association_mapping.xml:104
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"create table Person ( personId bigint not null primary key )\n"
-"create table Address ( addressId bigint not null primary key, personId "
-"bigint not null )\n"
-" ]]>"
-msgstr ""
-
-#. Tag: para
-#: association_mapping.xml:106
-#, fuzzy, no-c-format
msgid "You should instead use a join table for this kind of association."
msgstr "このような関連のために結合テーブルを使うことをお薦めします。"
#. Tag: title
-#: association_mapping.xml:115
#, no-c-format
msgid "Unidirectional associations with join tables"
msgstr "結合テーブルを使った単方向関連"
#. Tag: para
-#: association_mapping.xml:120
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <emphasis>unidirectional one-to-many association on a join
table</"
"emphasis> is the preferred option. Specifying
<literal>unique=\"true\"</"
@@ -274,200 +136,50 @@
msgstr ""
"<emphasis>結合テーブルを使った単方向一対多関連</emphasis> はより好ましいで"
"す。 <literal>unique=\"true\"</literal>
の指定により、多重度が多対多から一対"
-"多 に変わったことに注意して下さい。"
+"多に変わったことに注意して下さい。"
-#. Tag: programlisting
-#: association_mapping.xml:126
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <set name=\"addresses\"
table=\"PersonAddress\">\n"
-" <key column=\"personId\"/>\n"
-" <many-to-many column=\"addressId\"\n"
-" unique=\"true\"\n"
-" class=\"Address\"/>\n"
-" </set>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: association_mapping.xml:127
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"create table Person ( personId bigint not null primary key )\n"
-"create table PersonAddress ( personId not null, addressId bigint not null "
-"primary key )\n"
-"create table Address ( addressId bigint not null primary key )\n"
-" ]]>"
-msgstr ""
-
-#. Tag: para
-#: association_mapping.xml:134
-#, fuzzy, no-c-format
-msgid ""
"A <emphasis>unidirectional many-to-one association on a join
table</"
"emphasis> is common when the association is optional. For example:"
msgstr ""
-"<emphasis>結合テーブルの単方向多対一関連</emphasis> は 関連が任意であるときに"
+"<emphasis>結合テーブルの単方向多対一関連</emphasis> は関連が任意であるときに"
"非常に一般的なものです。"
-#. Tag: programlisting
-#: association_mapping.xml:139
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <join table=\"PersonAddress\" \n"
-" optional=\"true\">\n"
-" <key column=\"personId\"
unique=\"true\"/>\n"
-" <many-to-one name=\"address\"\n"
-" column=\"addressId\" \n"
-" not-null=\"true\"/>\n"
-" </join>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: association_mapping.xml:140
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"create table Person ( personId bigint not null primary key )\n"
-"create table PersonAddress ( personId bigint not null primary key, addressId
"
-"bigint not null )\n"
-"create table Address ( addressId bigint not null primary key )\n"
-" ]]>"
-msgstr ""
-
-#. Tag: para
-#: association_mapping.xml:147
-#, fuzzy, no-c-format
-msgid ""
"A <emphasis>unidirectional one-to-one association on a join
table</emphasis> "
"is possible, but extremely unusual."
msgstr ""
-"<emphasis>結合テーブルの単方向一対一関連</emphasis> は、本当に特殊ですが 不可"
+"<emphasis>結合テーブルの単方向一対一関連</emphasis> は、非常に特殊ですが不可"
"能ではありません。"
-#. Tag: programlisting
-#: association_mapping.xml:152
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <join table=\"PersonAddress\" \n"
-" optional=\"true\">\n"
-" <key column=\"personId\" \n"
-" unique=\"true\"/>\n"
-" <many-to-one name=\"address\"\n"
-" column=\"addressId\" \n"
-" not-null=\"true\"\n"
-" unique=\"true\"/>\n"
-" </join>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: association_mapping.xml:153 association_mapping.xml:258
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"create table Person ( personId bigint not null primary key )\n"
-"create table PersonAddress ( personId bigint not null primary key, addressId
"
-"bigint not null unique )\n"
-"create table Address ( addressId bigint not null primary key )\n"
-" ]]>"
-msgstr ""
-
#. Tag: title
-#: association_mapping.xml:158 association_mapping.xml:263
#, fuzzy, no-c-format
msgid "Many-to-many"
-msgstr "多対多"
+msgstr "many-to-many"
#. Tag: para
-#: association_mapping.xml:160
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Finally, here is an example of a <emphasis>unidirectional many-to-many
"
"association</emphasis>."
-msgstr "最後に、<emphasis>単方向多対多関連</emphasis> を示します。"
+msgstr "最後に、 <emphasis>単方向多対多関連</emphasis> を示します。"
-#. Tag: programlisting
-#: association_mapping.xml:164
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <set name=\"addresses\"
table=\"PersonAddress\">\n"
-" <key column=\"personId\"/>\n"
-" <many-to-many column=\"addressId\"\n"
-" class=\"Address\"/>\n"
-" </set>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: association_mapping.xml:165 association_mapping.xml:271
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"create table Person ( personId bigint not null primary key )\n"
-"create table PersonAddress ( personId bigint not null, addressId bigint not "
-"null, primary key (personId, addressId) )\n"
-"create table Address ( addressId bigint not null primary key )\n"
-" ]]>"
-msgstr ""
-
#. Tag: title
-#: association_mapping.xml:172
#, no-c-format
msgid "Bidirectional associations"
msgstr "双方向関連"
#. Tag: title
-#: association_mapping.xml:175 association_mapping.xml:236
-#, fuzzy, no-c-format
+#, no-c-format
msgid "one-to-many / many-to-one"
msgstr "一対多/多対一"
#. Tag: para
-#: association_mapping.xml:177
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <emphasis>bidirectional many-to-one association</emphasis> is the
most "
"common kind of association. The following example illustrates the standard "
@@ -476,34 +188,9 @@
"<emphasis>双方向多対一関連</emphasis> は最も一般的な関連です。 (標準的な親子"
"関係です)"
-#. Tag: programlisting
-#: association_mapping.xml:183
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <many-to-one name=\"address\" \n"
-" column=\"addressId\"\n"
-" not-null=\"true\"/>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <set name=\"people\" inverse=\"true\">\n"
-" <key column=\"addressId\"/>\n"
-" <one-to-many class=\"Person\"/>\n"
-" </set>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: association_mapping.xml:187
-#, fuzzy, no-c-format
-msgid ""
"If you use a <literal>List</literal>, or other indexed collection, set
the "
"<literal>key</literal> column of the foreign key to <literal>not
null</"
"literal>. Hibernate will manage the association from the collections side to
"
@@ -512,39 +199,13 @@
"\"</literal>:"
msgstr ""
"<literal>List</literal> (または他のインデックス付きのコレクション)を使うな"
-"ら、 外部キーの <literal>key</literal> カラムを <literal>not
null</literal> "
-"に設定し、 コレクション側が各要素のインデックスをメンテナンスするように、 関"
-"連を扱う必要があります (<literal>update=\"false\"</literal> かつ "
-"<literal>insert=\"false\"</literal>
と設定して、反対側を仮想的にinverseにしま"
-"す):"
+"ら、外部キーの <literal>key</literal> カラムを <literal>not
null</literal> に"
+"設定し、コレクション側が各要素のインデックスをメンテナンスするように、関連を"
+"扱う必要があります (<literal>update=\"false\"</literal> かつ "
+"<literal>insert=\"false\"</literal> と設定して、反対側を仮想的に inverse
にし"
+"ます):"
-#. Tag: programlisting
-#: association_mapping.xml:195
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\"/>\n"
-" ...\n"
-" <many-to-one name=\"address\"\n"
-" column=\"addressId\"\n"
-" not-null=\"true\"\n"
-" insert=\"false\"\n"
-" update=\"false\"/>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\"/>\n"
-" ...\n"
-" <list name=\"people\">\n"
-" <key column=\"addressId\"
not-null=\"true\"/>\n"
-" <list-index column=\"peopleIdx\"/>\n"
-" <one-to-many class=\"Person\"/>\n"
-" </list>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: association_mapping.xml:197
#, fuzzy, no-c-format
msgid ""
"If the underlying foreign key column is <literal>NOT NULL</literal>, it
is "
@@ -554,84 +215,35 @@
"<literal><column></literal> element, but on the
<literal><key></"
"literal> element."
msgstr ""
-"もし外部キーカラムが <literal>NOT NULL</literal> であるならば、 コレクション"
+"もし外部キーカラムが <literal>NOT NULL</literal> であるならば、コレクション"
"マッピングの <literal><key></literal> 要素を
<literal>not-null=\"true"
-"\"</literal> にすることは重要です。 入れ子になった
<literal><column></"
+"\"</literal> にすることは重要です。入れ子になった
<literal><column></"
"literal> 要素だけではなく、 <literal><key></literal> 要素も
"
"<literal>not-null=\"true\"</literal> と定義しないようにしてください。"
#. Tag: para
-#: association_mapping.xml:212
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <emphasis>bidirectional one-to-one association on a foreign
key</emphasis> "
"is common:"
msgstr "<emphasis>外部キーの双方向一対一関連</emphasis> は非常に一般的です。"
-#. Tag: programlisting
-#: association_mapping.xml:217
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <many-to-one name=\"address\" \n"
-" column=\"addressId\" \n"
-" unique=\"true\"\n"
-" not-null=\"true\"/>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <one-to-one name=\"person\" \n"
-" property-ref=\"address\"/>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: association_mapping.xml:220
-#, fuzzy, no-c-format
-msgid ""
"A <emphasis>bidirectional one-to-one association on a primary
key</emphasis> "
"uses the special id generator:"
msgstr ""
-"<emphasis>主キーの双方向一対一関連</emphasis> は特殊なIDジェネレータを使いま"
-"す。"
+"<emphasis>主キーの双方向一対一関連</emphasis> は特殊な ID ジェネレータを使い"
+"ます。"
-#. Tag: programlisting
-#: association_mapping.xml:225
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <one-to-one name=\"address\"/>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"foreign\">\n"
-" <param name=\"property\">person</param>\n"
-" </generator>\n"
-" </id>\n"
-" <one-to-one name=\"person\" \n"
-" constrained=\"true\"/>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: association_mapping.xml:233
#, no-c-format
msgid "Bidirectional associations with join tables"
msgstr "結合テーブルを使った双方向関連"
#. Tag: para
-#: association_mapping.xml:238
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following is an example of a <emphasis>bidirectional one-to-many "
"association on a join table</emphasis>. The
<literal>inverse=\"true\"</"
@@ -639,62 +251,16 @@
"the join."
msgstr ""
"<emphasis>結合テーブルの双方向一対多関連</emphasis> です。 <literal>inverse="
-"\"true\"</literal> が関連端、コレクション、結合のいずれかに 設定できることに"
-"注意してください。"
+"\"true\"</literal> が関連端、コレクション、結合のいずれかに設定できることに注"
+"意してください。"
-#. Tag: programlisting
-#: association_mapping.xml:244
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <set name=\"addresses\" \n"
-" table=\"PersonAddress\">\n"
-" <key column=\"personId\"/>\n"
-" <many-to-many column=\"addressId\"\n"
-" unique=\"true\"\n"
-" class=\"Address\"/>\n"
-" </set>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <join table=\"PersonAddress\" \n"
-" inverse=\"true\" \n"
-" optional=\"true\">\n"
-" <key column=\"addressId\"/>\n"
-" <many-to-one name=\"person\"\n"
-" column=\"personId\"\n"
-" not-null=\"true\"/>\n"
-" </join>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: association_mapping.xml:245
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"create table Person ( personId bigint not null primary key )\n"
-"create table PersonAddress ( personId bigint not null, addressId bigint not "
-"null primary key )\n"
-"create table Address ( addressId bigint not null primary key )\n"
-" ]]>"
-msgstr ""
-
#. Tag: title
-#: association_mapping.xml:250
#, no-c-format
msgid "one to one"
msgstr "一対一"
#. Tag: para
-#: association_mapping.xml:252
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <emphasis>bidirectional one-to-one association on a join
table</emphasis> "
"is possible, but extremely unusual."
@@ -702,86 +268,20 @@
"<emphasis>結合テーブルの双方向一対一関連</emphasis> は非常に特殊ですが、可能"
"です。"
-#. Tag: programlisting
-#: association_mapping.xml:257
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <join table=\"PersonAddress\" \n"
-" optional=\"true\">\n"
-" <key column=\"personId\" \n"
-" unique=\"true\"/>\n"
-" <many-to-one name=\"address\"\n"
-" column=\"addressId\" \n"
-" not-null=\"true\"\n"
-" unique=\"true\"/>\n"
-" </join>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <join table=\"PersonAddress\" \n"
-" optional=\"true\"\n"
-" inverse=\"true\">\n"
-" <key column=\"addressId\" \n"
-" unique=\"true\"/>\n"
-" <many-to-one name=\"person\"\n"
-" column=\"personId\" \n"
-" not-null=\"true\"\n"
-" unique=\"true\"/>\n"
-" </join>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: association_mapping.xml:265
-#, fuzzy, no-c-format
-msgid ""
"Here is an example of a <emphasis>bidirectional many-to-many
association</"
"emphasis>."
-msgstr "最後に、<emphasis>双方向多対多関連</emphasis> を示します。"
+msgstr "最後に、 <emphasis>双方向多対多関連</emphasis> を示します。"
-#. Tag: programlisting
-#: association_mapping.xml:269
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\" column=\"personId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <set name=\"addresses\"
table=\"PersonAddress\">\n"
-" <key column=\"personId\"/>\n"
-" <many-to-many column=\"addressId\"\n"
-" class=\"Address\"/>\n"
-" </set>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-" <id name=\"id\" column=\"addressId\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <set name=\"people\" inverse=\"true\"
table=\"PersonAddress\">\n"
-" <key column=\"addressId\"/>\n"
-" <many-to-many column=\"personId\"\n"
-" class=\"Person\"/>\n"
-" </set>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: association_mapping.xml:278
#, no-c-format
msgid "More complex association mappings"
msgstr "より複雑な関連マッピング"
#. Tag: para
-#: association_mapping.xml:280
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"More complex association joins are <emphasis>extremely</emphasis> rare.
"
"Hibernate handles more complex situations by using SQL fragments embedded in
"
@@ -790,54 +290,25 @@
"<literal>effectiveEndDate</literal> and
<literal>effectiveStartDate</"
"literal>columns, it would be mapped as follows:"
msgstr ""
-"より複雑な関連結合は <emphasis>極めて</emphasis> 稀です。 マッピングドキュメ"
-"ントにSQL文を埋め込むことで、 さらに複雑な状況を扱うことができます。 例えば、"
-"<literal>accountNumber</literal>,
<literal>effectiveEndDate</literal>, "
-"<literal>effectiveStartDate</literal> カラムを持つaccount(口座)情報の履歴を"
-"扱うテーブルは、 以下のようにマッピングします。"
+"より複雑な関連結合は <emphasis>極めて</emphasis> 稀です。マッピングドキュメン"
+"トに SQL 文を埋め込むことで、さらに複雑な状況を扱うことができます。例えば、 "
+"<literal>accountNumber</literal> 、
<literal>effectiveEndDate</literal> 、 "
+"<literal>effectiveStartDate</literal> カラムを持つ account (口座)情報の履歴"
+"を扱うテーブルは、以下のようにマッピングします。"
-#. Tag: programlisting
-#: association_mapping.xml:289
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<properties name=\"currentAccountKey\">\n"
-" <property name=\"accountNumber\" type=\"string\"
not-null=\"true\"/>\n"
-" <property name=\"currentAccount\"
type=\"boolean\">\n"
-" <formula>case when effectiveEndDate is null then 1 else 0
end</"
-"formula>\n"
-" </property>\n"
-"</properties>\n"
-"<property name=\"effectiveEndDate\"
type=\"date\"/>\n"
-"<property name=\"effectiveStateDate\" type=\"date\"
not-null=\"true\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: association_mapping.xml:291
-#, fuzzy, no-c-format
-msgid ""
"You can then map an association to the <emphasis>current</emphasis>
"
"instance, the one with null <literal>effectiveEndDate</literal>, by
using:"
msgstr ""
"そして、関連を <emphasis>現時点の</emphasis> インスタンス "
-"(<literal>effectiveEndDate</literal> がnullであるもの)にマッピングします。 "
-"以下のようになります:"
+"(<literal>effectiveEndDate</literal> が null であるもの)にマッピングしま"
+"す。以下のようになります:"
-#. Tag: programlisting
-#: association_mapping.xml:296
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<many-to-one name=\"currentAccountInfo\" \n"
-" property-ref=\"currentAccountKey\"\n"
-" class=\"AccountInfo\">\n"
-" <column name=\"accountNumber\"/>\n"
-" <formula>'1'</formula>\n"
-"</many-to-one>]]>"
-msgstr ""
-
-#. Tag: para
-#: association_mapping.xml:298
-#, fuzzy, no-c-format
-msgid ""
"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
"
@@ -845,37 +316,818 @@
"emphasis> employer, the one with the most recent
<literal>startDate</"
"literal>, could be mapped in the following way:"
msgstr ""
-"さらに複雑な例では、<literal>Employee(従業員)</literal> と "
+"さらに複雑な例では、 <literal>Employee(従業員)</literal> と "
"<literal>Organization(組織)</literal> 間の関連が
<literal>Employment(雇"
-"用)</literal> テーブルで保持される場合を想像してください。 このテーブルには"
-"雇用データの履歴がすべて含まれます。 すると従業員の <emphasis>最も最近の</"
+"用)</literal> テーブルで保持される場合を想像してください。このテーブルには雇"
+"用データの履歴がすべて含まれます。すると従業員の <emphasis>最も最近の</"
"emphasis> 雇用者を表す関連 (最も最近の <literal>startDate</literal> を持つも"
"の)は、このようにマッピングできます:"
-#. Tag: programlisting
-#: association_mapping.xml:306
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<join>\n"
-" <key column=\"employeeId\"/>\n"
-" <subselect>\n"
-" select employeeId, orgId \n"
-" from Employments \n"
-" group by orgId \n"
-" having startDate = max(startDate)\n"
-" </subselect>\n"
-" <many-to-one name=\"mostRecentEmployer\" \n"
-" class=\"Organization\" \n"
-" column=\"orgId\"/>\n"
-"</join>]]>"
-msgstr ""
-
-#. Tag: para
-#: association_mapping.xml:308
-#, fuzzy, no-c-format
-msgid ""
"This functionality allows a degree of creativity and flexibility, but it is "
"more practical to handle these kinds of cases using HQL or a criteria query."
msgstr ""
-"この機能は非常に強力です。 しかしこのような場合、普通はHQLやcriteriaクエリを"
-"使う方がより実践的です。"
+"この機能は非常に強力です。しかしこのような場合、普通は HQL や criteria クエリ"
+"を使う方がより実践的です。"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <many-to-one name=\"address\" \n"
+#~ " column=\"addressId\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <many-to-one name=\"address\" \n"
+#~ " column=\"addressId\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "create table Person ( personId bigint not null primary key, addressId "
+#~ "bigint not null )\n"
+#~ "create table Address ( addressId bigint not null primary key )\n"
+#~ " ]]>"
+#~ msgstr ""
+#~ "create table Person ( personId bigint not null primary key, addressId "
+#~ "bigint not null )\n"
+#~ "create table Address ( addressId bigint not null primary key )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <many-to-one name=\"address\" \n"
+#~ " column=\"addressId\" \n"
+#~ " unique=\"true\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <many-to-one name=\"address\" \n"
+#~ " column=\"addressId\" \n"
+#~ " unique=\"true\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "create table Person ( personId bigint not null primary key, addressId "
+#~ "bigint not null unique )\n"
+#~ "create table Address ( addressId bigint not null primary key )\n"
+#~ " ]]>"
+#~ msgstr ""
+#~ "create table Person ( personId bigint not null primary key, addressId "
+#~ "bigint not null unique )\n"
+#~ "create table Address ( addressId bigint not null primary key )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"foreign\">\n"
+#~ " <param
name=\"property\">person</param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " <one-to-one name=\"person\"
constrained=\"true\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"foreign\">\n"
+#~ " <param
name=\"property\">person</param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " <one-to-one name=\"person\"
constrained=\"true\"/>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table Address ( personId bigint not null primary key )\n"
+#~ " ]]>"
+#~ msgstr ""
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table Address ( personId bigint not null primary key )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"addresses\">\n"
+#~ " <key column=\"personId\" \n"
+#~ " not-null=\"true\"/>\n"
+#~ " <one-to-many class=\"Address\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"addresses\">\n"
+#~ " <key column=\"personId\" \n"
+#~ " not-null=\"true\"/>\n"
+#~ " <one-to-many class=\"Address\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table Address ( addressId bigint not null primary key, personId "
+#~ "bigint not null )\n"
+#~ " ]]>"
+#~ msgstr ""
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table Address ( addressId bigint not null primary key, personId "
+#~ "bigint not null )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"addresses\"
table=\"PersonAddress\">\n"
+#~ " <key column=\"personId\"/>\n"
+#~ " <many-to-many column=\"addressId\"\n"
+#~ " unique=\"true\"\n"
+#~ " class=\"Address\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"addresses\"
table=\"PersonAddress\">\n"
+#~ " <key column=\"personId\"/>\n"
+#~ " <many-to-many column=\"addressId\"\n"
+#~ " unique=\"true\"\n"
+#~ " class=\"Address\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table PersonAddress ( personId not null, addressId bigint not null
"
+#~ "primary key )\n"
+#~ "create table Address ( addressId bigint not null primary key )\n"
+#~ " ]]>"
+#~ msgstr ""
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table PersonAddress ( personId not null, addressId bigint \n"
+#~ " not null primary key )\n"
+#~ "create table Address ( addressId bigint not null primary key )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <join table=\"PersonAddress\" \n"
+#~ " optional=\"true\">\n"
+#~ " <key column=\"personId\"
unique=\"true\"/>\n"
+#~ " <many-to-one name=\"address\"\n"
+#~ " column=\"addressId\" \n"
+#~ " not-null=\"true\"/>\n"
+#~ " </join>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <join table=\"PersonAddress\" \n"
+#~ " optional=\"true\">\n"
+#~ " <key column=\"personId\"
unique=\"true\"/>\n"
+#~ " <many-to-one name=\"address\"\n"
+#~ " column=\"addressId\" \n"
+#~ " not-null=\"true\"/>\n"
+#~ " </join>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table PersonAddress ( personId bigint not null primary key, "
+#~ "addressId bigint not null )\n"
+#~ "create table Address ( addressId bigint not null primary key )\n"
+#~ " ]]>"
+#~ msgstr ""
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table PersonAddress ( personId bigint not null primary key, "
+#~ "addressId bigint not null )\n"
+#~ "create table Address ( addressId bigint not null primary key )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <join table=\"PersonAddress\" \n"
+#~ " optional=\"true\">\n"
+#~ " <key column=\"personId\" \n"
+#~ " unique=\"true\"/>\n"
+#~ " <many-to-one name=\"address\"\n"
+#~ " column=\"addressId\" \n"
+#~ " not-null=\"true\"\n"
+#~ " unique=\"true\"/>\n"
+#~ " </join>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <join table=\"PersonAddress\" \n"
+#~ " optional=\"true\">\n"
+#~ " <key column=\"personId\" \n"
+#~ " unique=\"true\"/>\n"
+#~ " <many-to-one name=\"address\"\n"
+#~ " column=\"addressId\" \n"
+#~ " not-null=\"true\"\n"
+#~ " unique=\"true\"/>\n"
+#~ " </join>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table PersonAddress ( personId bigint not null primary key, "
+#~ "addressId bigint not null unique )\n"
+#~ "create table Address ( addressId bigint not null primary key )\n"
+#~ " ]]>"
+#~ msgstr ""
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table PersonAddress ( personId bigint not null primary key, "
+#~ "addressId bigint\n"
+#~ " not null unique )\n"
+#~ "create table Address ( addressId bigint not null primary key )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"addresses\"
table=\"PersonAddress\">\n"
+#~ " <key column=\"personId\"/>\n"
+#~ " <many-to-many column=\"addressId\"\n"
+#~ " class=\"Address\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"addresses\"
table=\"PersonAddress\">\n"
+#~ " <key column=\"personId\"/>\n"
+#~ " <many-to-many column=\"addressId\"\n"
+#~ " class=\"Address\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table PersonAddress ( personId bigint not null, addressId bigint "
+#~ "not null, primary key (personId, addressId) )\n"
+#~ "create table Address ( addressId bigint not null primary key )\n"
+#~ " ]]>"
+#~ msgstr ""
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table PersonAddress ( personId bigint not null, addressId bigint "
+#~ "not null, \n"
+#~ " primary key (personId, addressId) )\n"
+#~ "create table Address ( addressId bigint not null primary key )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <many-to-one name=\"address\" \n"
+#~ " column=\"addressId\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"people\" inverse=\"true\">\n"
+#~ " <key column=\"addressId\"/>\n"
+#~ " <one-to-many class=\"Person\"/>\n"
+#~ " </set>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <many-to-one name=\"address\" \n"
+#~ " column=\"addressId\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"people\"
inverse=\"true\">\n"
+#~ " <key column=\"addressId\"/>\n"
+#~ " <one-to-many class=\"Person\"/>\n"
+#~ " </set>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\"/>\n"
+#~ " ...\n"
+#~ " <many-to-one name=\"address\"\n"
+#~ " column=\"addressId\"\n"
+#~ " not-null=\"true\"\n"
+#~ " insert=\"false\"\n"
+#~ " update=\"false\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"/>\n"
+#~ " ...\n"
+#~ " <list name=\"people\">\n"
+#~ " <key column=\"addressId\"
not-null=\"true\"/>\n"
+#~ " <list-index column=\"peopleIdx\"/>\n"
+#~ " <one-to-many class=\"Person\"/>\n"
+#~ " </list>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"/>\n"
+#~ " ...\n"
+#~ " <many-to-one name=\"address\"\n"
+#~ " column=\"addressId\"\n"
+#~ " not-null=\"true\"\n"
+#~ " insert=\"false\"\n"
+#~ " update=\"false\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"/>\n"
+#~ " ...\n"
+#~ " <list name=\"people\">\n"
+#~ " <key column=\"addressId\"
not-null=\"true\"/>\n"
+#~ " <list-index column=\"peopleIdx\"/>\n"
+#~ " <one-to-many class=\"Person\"/>\n"
+#~ " </list>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <many-to-one name=\"address\" \n"
+#~ " column=\"addressId\" \n"
+#~ " unique=\"true\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <one-to-one name=\"person\" \n"
+#~ " property-ref=\"address\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <many-to-one name=\"address\" \n"
+#~ " column=\"addressId\" \n"
+#~ " unique=\"true\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <one-to-one name=\"person\" \n"
+#~ " property-ref=\"address\"/>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <one-to-one name=\"address\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"foreign\">\n"
+#~ " <param
name=\"property\">person</param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " <one-to-one name=\"person\" \n"
+#~ " constrained=\"true\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <one-to-one name=\"address\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"foreign\">\n"
+#~ " <param
name=\"property\">person</param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " <one-to-one name=\"person\" \n"
+#~ " constrained=\"true\"/>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"addresses\" \n"
+#~ " table=\"PersonAddress\">\n"
+#~ " <key column=\"personId\"/>\n"
+#~ " <many-to-many column=\"addressId\"\n"
+#~ " unique=\"true\"\n"
+#~ " class=\"Address\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <join table=\"PersonAddress\" \n"
+#~ " inverse=\"true\" \n"
+#~ " optional=\"true\">\n"
+#~ " <key column=\"addressId\"/>\n"
+#~ " <many-to-one name=\"person\"\n"
+#~ " column=\"personId\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ " </join>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"addresses\" \n"
+#~ " table=\"PersonAddress\">\n"
+#~ " <key column=\"personId\"/>\n"
+#~ " <many-to-many column=\"addressId\"\n"
+#~ " unique=\"true\"\n"
+#~ " class=\"Address\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <join table=\"PersonAddress\" \n"
+#~ " inverse=\"true\" \n"
+#~ " optional=\"true\">\n"
+#~ " <key column=\"addressId\"/>\n"
+#~ " <many-to-one name=\"person\"\n"
+#~ " column=\"personId\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ " </join>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table PersonAddress ( personId bigint not null, addressId bigint "
+#~ "not null primary key )\n"
+#~ "create table Address ( addressId bigint not null primary key )\n"
+#~ " ]]>"
+#~ msgstr ""
+#~ "create table Person ( personId bigint not null primary key )\n"
+#~ "create table PersonAddress ( personId bigint not null, addressId bigint "
+#~ "not null primary key )\n"
+#~ "create table Address ( addressId bigint not null primary key )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <join table=\"PersonAddress\" \n"
+#~ " optional=\"true\">\n"
+#~ " <key column=\"personId\" \n"
+#~ " unique=\"true\"/>\n"
+#~ " <many-to-one name=\"address\"\n"
+#~ " column=\"addressId\" \n"
+#~ " not-null=\"true\"\n"
+#~ " unique=\"true\"/>\n"
+#~ " </join>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <join table=\"PersonAddress\" \n"
+#~ " optional=\"true\"\n"
+#~ " inverse=\"true\">\n"
+#~ " <key column=\"addressId\" \n"
+#~ " unique=\"true\"/>\n"
+#~ " <many-to-one name=\"person\"\n"
+#~ " column=\"personId\" \n"
+#~ " not-null=\"true\"\n"
+#~ " unique=\"true\"/>\n"
+#~ " </join>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <join table=\"PersonAddress\" \n"
+#~ " optional=\"true\">\n"
+#~ " <key column=\"personId\" \n"
+#~ " unique=\"true\"/>\n"
+#~ " <many-to-one name=\"address\"\n"
+#~ " column=\"addressId\" \n"
+#~ " not-null=\"true\"\n"
+#~ " unique=\"true\"/>\n"
+#~ " </join>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <join table=\"PersonAddress\" \n"
+#~ " optional=\"true\"\n"
+#~ " inverse=\"true\">\n"
+#~ " <key column=\"addressId\" \n"
+#~ " unique=\"true\"/>\n"
+#~ " <many-to-one name=\"person\"\n"
+#~ " column=\"personId\" \n"
+#~ " not-null=\"true\"\n"
+#~ " unique=\"true\"/>\n"
+#~ " </join>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\" column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"addresses\"
table=\"PersonAddress\">\n"
+#~ " <key column=\"personId\"/>\n"
+#~ " <many-to-many column=\"addressId\"\n"
+#~ " class=\"Address\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\" column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"people\" inverse=\"true\"
table=\"PersonAddress\">\n"
+#~ " <key column=\"addressId\"/>\n"
+#~ " <many-to-many column=\"personId\"\n"
+#~ " class=\"Person\"/>\n"
+#~ " </set>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\"
column=\"personId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"addresses\"
table=\"PersonAddress\">\n"
+#~ " <key column=\"personId\"/>\n"
+#~ " <many-to-many column=\"addressId\"\n"
+#~ " class=\"Address\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ " <id name=\"id\"
column=\"addressId\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"people\" inverse=\"true\"
table=\"PersonAddress\">\n"
+#~ " <key column=\"addressId\"/>\n"
+#~ " <many-to-many column=\"personId\"\n"
+#~ " class=\"Person\"/>\n"
+#~ " </set>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<properties name=\"currentAccountKey\">\n"
+#~ " <property name=\"accountNumber\" type=\"string\"
not-null=\"true\"/>\n"
+#~ " <property name=\"currentAccount\"
type=\"boolean\">\n"
+#~ " <formula>case when effectiveEndDate is null then 1 else 0
end</"
+#~ "formula>\n"
+#~ " </property>\n"
+#~ "</properties>\n"
+#~ "<property name=\"effectiveEndDate\"
type=\"date\"/>\n"
+#~ "<property name=\"effectiveStateDate\" type=\"date\"
not-null=\"true\"/>]]>"
+#~ msgstr ""
+#~ "<properties name=\"currentAccountKey\">\n"
+#~ " <property name=\"accountNumber\" type=\"string\"
not-null=\"true\"/"
+#~ ">\n"
+#~ " <property name=\"currentAccount\"
type=\"boolean\">\n"
+#~ " <formula>case when effectiveEndDate is null then 1 else 0
"
+#~ "end</formula>\n"
+#~ " </property>\n"
+#~ "</properties>\n"
+#~ "<property name=\"effectiveEndDate\"
type=\"date\"/>\n"
+#~ "<property name=\"effectiveStateDate\" type=\"date\"
not-null=\"true\"/"
+#~ ">"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"currentAccountInfo\" \n"
+#~ " property-ref=\"currentAccountKey\"\n"
+#~ " class=\"AccountInfo\">\n"
+#~ " <column name=\"accountNumber\"/>\n"
+#~ " <formula>'1'</formula>\n"
+#~ "</many-to-one>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"currentAccountInfo\" \n"
+#~ " property-ref=\"currentAccountKey\"\n"
+#~ " class=\"AccountInfo\">\n"
+#~ " <column name=\"accountNumber\"/>\n"
+#~ " <formula>'1'</formula>\n"
+#~ "</many-to-one>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<join>\n"
+#~ " <key column=\"employeeId\"/>\n"
+#~ " <subselect>\n"
+#~ " select employeeId, orgId \n"
+#~ " from Employments \n"
+#~ " group by orgId \n"
+#~ " having startDate = max(startDate)\n"
+#~ " </subselect>\n"
+#~ " <many-to-one name=\"mostRecentEmployer\" \n"
+#~ " class=\"Organization\" \n"
+#~ " column=\"orgId\"/>\n"
+#~ "</join>]]>"
+#~ msgstr ""
+#~ "<join>\n"
+#~ " <key column=\"employeeId\"/>\n"
+#~ " <subselect>\n"
+#~ " select employeeId, orgId \n"
+#~ " from Employments \n"
+#~ " group by orgId \n"
+#~ " having startDate = max(startDate)\n"
+#~ " </subselect>\n"
+#~ " <many-to-one name=\"mostRecentEmployer\" \n"
+#~ " class=\"Organization\" \n"
+#~ " column=\"orgId\"/>\n"
+#~ "</join>"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/basic_mapping.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/basic_mapping.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/basic_mapping.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,154 +1,79 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-23T01:43:44\n"
+"PO-Revision-Date: 2010-01-06 10:49+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: basic_mapping.xml:29
#, no-c-format
msgid "Basic O/R Mapping"
-msgstr "基本的なO/Rマッピング"
+msgstr "基本的な O/R マッピング"
#. Tag: title
-#: basic_mapping.xml:32
#, no-c-format
msgid "Mapping declaration"
msgstr "マッピング定義"
#. Tag: para
-#: basic_mapping.xml:34
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Object/relational mappings are usually defined in an XML document. The "
"mapping document is designed to be readable and hand-editable. The mapping "
"language is Java-centric, meaning that mappings are constructed around "
"persistent class declarations and not table declarations."
msgstr ""
-"オブジェクト/リレーショナルマッピングは通常XMLドキュメントで定義します。 マッ"
-"ピングドキュメントは、読みやすく手作業で編集しやすいようにデザインされていま"
-"す。 マッピング言語はJava中心、つまりテーブル定義ではなく永続クラスの定義に基"
-"づいて構築されています。"
+"オブジェクト/リレーショナルマッピングは通常 XML ドキュメントで定義します。"
+"マッピングドキュメントは、読みやすく手作業で編集しやすいようにデザインされて"
+"います。マッピング言語は Java 中心、つまりテーブル定義ではなく永続クラスの定"
+"義に基づいて構築されています。"
#. Tag: para
-#: basic_mapping.xml:41
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Please note that even though many Hibernate users choose to write the XML by
"
"hand, a number of tools exist to generate the mapping document. These "
"include XDoclet, Middlegen and AndroMDA."
msgstr ""
-"多くのHibernateユーザはXMLマッピングの記述を手作業で行いますが、 XDoclet, "
-"Middlegen, AndroMDAというようなマッピングドキュメントを生成するツールが いく"
-"つか存在します。"
+"多くの Hibernate ユーザーは XML マッピングの記述を手作業で行いますが、 "
+"XDoclet, Middlegen, AndroMDA というようなマッピングドキュメントを生成するツー"
+"ルがいくつか存在することを覚えておいてください。"
#. Tag: para
-#: basic_mapping.xml:47
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Here is an example mapping:"
msgstr "サンプルのマッピングから始めましょう:"
-#. Tag: programlisting
-#: basic_mapping.xml:51
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<?xml version=\"1.0\"?>\n"
-"<!DOCTYPE hibernate-mapping PUBLIC\n"
-" \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
-"
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
-"\n"
-"<hibernate-mapping package=\"eg\">\n"
-"\n"
-" <class name=\"Cat\"\n"
-" table=\"cats\"\n"
-" discriminator-value=\"C\">\n"
-"\n"
-" <id name=\"id\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-"\n"
-" <discriminator column=\"subclass\"\n"
-" type=\"character\"/>\n"
-"\n"
-" <property name=\"weight\"/>\n"
-"\n"
-" <property name=\"birthdate\"\n"
-" type=\"date\"\n"
-" not-null=\"true\"\n"
-" update=\"false\"/>\n"
-"\n"
-" <property name=\"color\"\n"
-" type=\"eg.types.ColorUserType\"\n"
-" not-null=\"true\"\n"
-" update=\"false\"/>\n"
-"\n"
-" <property name=\"sex\"\n"
-" not-null=\"true\"\n"
-" update=\"false\"/>\n"
-"\n"
-" <property name=\"litterId\"\n"
-" column=\"litterId\"\n"
-" update=\"false\"/>\n"
-"\n"
-" <many-to-one name=\"mother\"\n"
-" column=\"mother_id\"\n"
-" update=\"false\"/>\n"
-"\n"
-" <set name=\"kittens\"\n"
-" inverse=\"true\"\n"
-" order-by=\"litter_id\">\n"
-" <key column=\"mother_id\"/>\n"
-" <one-to-many class=\"Cat\"/>\n"
-" </set>\n"
-"\n"
-" <subclass name=\"DomesticCat\"\n"
-" discriminator-value=\"D\">\n"
-"\n"
-" <property name=\"name\"\n"
-" type=\"string\"/>\n"
-"\n"
-" </subclass>\n"
-"\n"
-" </class>\n"
-"\n"
-" <class name=\"Dog\">\n"
-" <!-- mapping for Dog could go here -->\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:53
-#, fuzzy, no-c-format
-msgid ""
"We will now discuss the content of the mapping document. We will only "
"describe, however, the document elements and attributes that are used by "
"Hibernate at runtime. The mapping document also contains some extra optional
"
"attributes and elements that affect the database schemas exported by the "
"schema export tool (for example, the <literal> not-null</literal>
attribute)."
msgstr ""
-"マッピングドキュメントの内容を説明します。。 ただし、ここではHibernateが実行"
-"時に使うドキュメント要素と属性についてのみ説明します。 マッピングドキュメント"
+"マッピングドキュメントの内容を説明します。ただし、ここでは Hibernate が実行時"
+"に使うドキュメント要素と属性についてのみ説明します。マッピングドキュメント"
"は、いくつかのオプション属性と要素を含んでいます(例えば <literal>not-null</"
-"literal> 属性)。 それらはスキーマエクスポートツールが出力するデータベースス"
+"literal> 属性)。それらはスキーマエクスポートツールが出力するデータベースス"
"キーマに影響を与えるものです。"
#. Tag: title
-#: basic_mapping.xml:64
#, no-c-format
msgid "Doctype"
msgstr "Doctype"
#. Tag: para
-#: basic_mapping.xml:66
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"All XML mappings should declare the doctype shown. The actual DTD can be "
"found at the URL above, in the directory
<literal>hibernate-x.x.x/src/org/"
@@ -157,22 +82,20 @@
"lookups of the DTD using an Internet connection, check the DTD declaration "
"against the contents of your classpath."
msgstr ""
-"XMLマッピングでは、お見せしたようなドキュメント型を必ず定義すべきです。 実際"
-"のDTDは、上記のURLの <literal>hibernate-x.x.x/src/org/hibernate</literal>
"
-"ディレクトリ、 または <literal>hibernate.jar</literal> 内にあります。 "
-"Hibernateは常に、そのクラスパス内でDTDを探し始めます。 インターネットにある"
-"DTDファイルを探そうとしたなら、 クラスパスの内容を見て、DTD宣言を確認してくだ"
-"さい。"
+"XML マッピングでは、お見せしたようなドキュメント型を必ず定義すべきです。実際"
+"の DTD は、上記の URL の <literal>hibernate-x.x.x/src/org/hibernate</"
+"literal> ディレクトリ、または <literal>hibernate.jar</literal> 内にありま"
+"す。 Hibernate は常に、そのクラスパス内で DTD を探し始めます。インターネット"
+"にある DTD ファイルを探そうとしたなら、クラスパスの内容を見て、 DTD 宣言を確"
+"認してください。"
#. Tag: title
-#: basic_mapping.xml:76
#, no-c-format
msgid "EntityResolver"
-msgstr "エンティティ・リゾルバ"
+msgstr "エンティティリゾルバ"
#. Tag: para
-#: basic_mapping.xml:77
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate will first attempt to resolve DTDs in its classpath. It does this "
"is by registering a custom
<literal>org.xml.sax.EntityResolver</literal> "
@@ -180,29 +103,27 @@
"custom <literal>EntityResolver</literal> recognizes two different
systemId "
"namespaces:"
msgstr ""
-"前述したように、Hibernateはまずクラスパス内でDTDを解決しようとします。 "
-"<literal>org.xml.sax.EntityResolver</literal> のカスタム実装を XMLファイルを"
-"読み込むためのSAXReaderに登録することによって、DTDを解決します。 このカスタム"
-"の <literal>EntityResolver</literal> は2つの異なるシステムID名前空間を認識し"
-"ます。"
+"前述したように、 Hibernate はまずクラスパス内で DTD を解決しようとします。 "
+"<literal>org.xml.sax.EntityResolver</literal> のカスタム実装を XML ファイルを"
+"読み込むための SAXReader に登録することによって、 DTD を解決します。このカス"
+"タムの <literal>EntityResolver</literal> は2つの異なるシステム ID 名前空間を"
+"認識します。"
#. Tag: para
-#: basic_mapping.xml:85
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"a <literal>hibernate namespace</literal> is recognized whenever the
resolver "
"encounters a systemId starting with
<literal>http://hibernate.sourceforge."
"net/</literal>. The resolver attempts to resolve these entities via the
"
"classloader which loaded the Hibernate classes."
msgstr ""
-"<literal>Hibernate名前空間</literal> は、リゾルバが <literal>http://"
-"hibernate.sourceforge.net/</literal> で始まるシステムIDに到達したときに、 認"
-"識されます。 そしてリゾルバは、Hibernateのクラスをロードしたクラスローダを用"
-"いて、 これらのエンティティを解決しようとします。"
+"<literal>hibernate namespace</literal> は、リゾルバが
<literal>http://"
+"hibernate.sourceforge.net/</literal> で始まるシステム ID に到達したときに認識"
+"されます。そしてリゾルバは、 Hibernate のクラスをロードしたクラスローダを用い"
+"て、これらのエンティティを解決しようとします。"
#. Tag: para
-#: basic_mapping.xml:94
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"a <literal>user namespace</literal> is recognized whenever the resolver
"
"encounters a systemId using a <literal>classpath://</literal> URL
protocol. "
@@ -210,60 +131,35 @@
"thread context classloader and (2) the classloader which loaded the "
"Hibernate classes."
msgstr ""
-"<literal>ユーザ名前空間</literal> は、リゾルバが URLプロトコルの "
-"<literal>classpath://</literal> を使ったシステムIDに到達したときに、 認識され"
-"ます。そしてリゾルバは、(1)カレントスレッドのコンテキストクラスローダー、 ま"
-"たは(2)Hibernateのクラスをロードしたクラスローダを使って、 これらのエンティ"
-"ティを解決しようとします。"
+"<literal>user namespace</literal> は、リゾルバが URL プロトコルの "
+"<literal>classpath://</literal> を使ったシステム ID に到達したときに、認識さ"
+"れます。そしてリゾルバは、 (1) カレントスレッドのコンテキストクラスローダー、"
+"または (2) Hibernate のクラスをロードしたクラスローダを使って、これらのエン"
+"ティティを解決しようとします。"
#. Tag: para
-#: basic_mapping.xml:103
-#, fuzzy, no-c-format
+#, no-c-format
msgid "The following is an example of utilizing user namespacing:"
-msgstr "下記は、ユーザ名前空間を使った例です:"
+msgstr "下記は、ユーザー名前空間を使った例です:"
-#. Tag: programlisting
-#: basic_mapping.xml:106
-#, no-c-format
-msgid ""
-"<![CDATA[<?xml version=\"1.0\"?>\n"
-"<!DOCTYPE hibernate-mapping PUBLIC\n"
-" \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
-" \"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\"
[\n"
-" <!ENTITY types SYSTEM
\"classpath://your/domain/types.xml\">\n"
-"]>\n"
-"\n"
-"<hibernate-mapping package=\"your.domain\">\n"
-" <class name=\"MyEntity\">\n"
-" <id name=\"id\"
type=\"my-custom-id-type\">\n"
-" ...\n"
-" </id>\n"
-" <class>\n"
-" &types;\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:107
#, no-c-format
msgid ""
"Where <literal>types.xml</literal> is a resource in the
<literal>your."
-"domain</literal> package and contains a custom <link
linkend=\"mapping-types-"
-"custom\">typedef</link>."
+"domain</literal> package and contains a custom typedef (see <xref
linkend="
+"\"mapping-types-custom\" />)."
msgstr ""
"ここで <literal>types.xml</literal> は
<literal>your.domain</literal> パッ"
-"ケージ内のリソースであり、 カスタム <xref linkend=\"mapping-types-custom"
-"\">typedef</xref> を含むます。"
+"ケージ内のリソースであり、カスタム型定義 <xref linkend=\"mapping-types-custom"
+"\"/> を含みます。"
#. Tag: title
-#: basic_mapping.xml:115
#, fuzzy, no-c-format
msgid "Hibernate-mapping"
msgstr "hibernate-mapping"
#. Tag: para
-#: basic_mapping.xml:117
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This element has several optional attributes. The
<literal>schema</literal> "
"and <literal>catalog</literal> attributes specify that tables referred
to in "
@@ -276,47 +172,29 @@
"literal> attribute allows you to use unqualified class names in the query
"
"language."
msgstr ""
-"この要素にはいくつかオプション属性があります。<literal>schema</literal> 属性"
-"と <literal>catalog</literal> 属性は、 このマッピングが参照するテーブルが、こ"
-"の属性によって指定されたスキーマと(または)カタログに属することを指定します。 "
+"この要素にはいくつかオプション属性があります。 <literal>schema</literal> 属性"
+"と <literal>catalog</literal> 属性は、このマッピングが参照するテーブルが、こ"
+"の属性によって指定されたスキーマと(または)カタログに属することを指定します。"
"この属性が指定されると、テーブル名は与えられたスキーマ名とカタログ名で修飾さ"
-"れます。これらの属性が指定されていなければ、 テーブル名は修飾されません。"
+"れます。これらの属性が指定されていなければ、テーブル名は修飾されません。 "
"<literal>default-cascade</literal> 属性は、
<literal>cascade</literal> 属性を"
-"指定していないプロパティやコレクションに、 どのカスケードスタイルを割り当てる"
-"かを指定します。 <literal>auto-import</literal> 属性は、 クエリ言語内で修飾さ"
+"指定していないプロパティやコレクションに、どのカスケードスタイルを割り当てる"
+"かを指定します。 <literal>auto-import</literal> 属性は、クエリ言語内で修飾さ"
"れていないクラス名を、デフォルトで使えるようにします。"
-#. Tag: programlisting
-#: basic_mapping.xml:138
-#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-mapping\n"
-" schema=\"schemaName\"\n"
-" catalog=\"catalogName\"\n"
-" default-cascade=\"cascade_style\"\n"
-" default-access=\"field|property|ClassName\"\n"
-" default-lazy=\"true|false\"\n"
-" auto-import=\"true|false\"\n"
-" package=\"package.name\"\n"
-" />]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:141
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>schema</literal> (optional): the name of a database
schema."
msgstr "<literal>schema</literal>(オプション):データベーススキーマの名前。"
#. Tag: para
-#: basic_mapping.xml:146
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>catalog</literal> (optional): the name of a database
catalog."
msgstr ""
"<literal>catalog</literal> (オプション):データベースカタログの名前。"
#. Tag: para
-#: basic_mapping.xml:151
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>default-cascade</literal> (optional - defaults to
<literal>none</"
"literal>): a default cascade style."
@@ -325,21 +203,19 @@
"<literal>none</literal>): デフォルトのカスケードスタイル。"
#. Tag: para
-#: basic_mapping.xml:157
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>default-access</literal> (optional - defaults to
<literal>property</"
"literal>): the strategy Hibernate should use for accessing all properties.
"
"It can be a custom implementation of
<literal>PropertyAccessor</literal>."
msgstr ""
"<literal>default-access</literal> (オプション - デフォルトは "
-"<literal>property</literal> ): Hibernateがプロパティにアクセスする際に採る"
+"<literal>property</literal> ): Hibernate がプロパティにアクセスする際に取る"
"べき戦略。 <literal>PropertyAccessor</literal> を実装することでカスタマイズ可"
"能。"
#. Tag: para
-#: basic_mapping.xml:164
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>default-lazy</literal> (optional - defaults to
<literal>true</"
"literal>): the default value for unspecified <literal>lazy</literal>
"
@@ -350,42 +226,38 @@
"ンマッピングに対するデフォルト値。"
#. Tag: para
-#: basic_mapping.xml:171
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>auto-import</literal> (optional - defaults to
<literal>true</"
"literal>): specifies whether we can use unqualified class names of classes
"
"in this mapping in the query language."
msgstr ""
"<literal>auto-import</literal> (オプション - デフォルトは
<literal>true</"
-"literal>): クエリ言語内で、(このマッピング内のクラスの)修飾されていないク"
+"literal>):クエリ言語内で、(このマッピング内のクラスの)修飾されていないク"
"ラス名を使えるかどうかを指定します。"
#. Tag: para
-#: basic_mapping.xml:178
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>package</literal> (optional): specifies a package prefix to
use for "
"unqualified class names in the mapping document."
msgstr ""
"<literal>package</literal> (オプション): マッピングドキュメント内で修飾されて"
-"いないクラス名に対して割り当てる、 パッケージの接頭辞(prefix)を指定します。"
+"いないクラス名に対して割り当てる、パッケージの接頭辞 (prefix) を指定します。"
#. Tag: para
-#: basic_mapping.xml:186
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you have two persistent classes with the same unqualified name, you "
"should set <literal>auto-import=\"false\"</literal>. An
exception will "
"result if you attempt to assign two classes to the same \"imported\"
name."
msgstr ""
"(修飾されていない)同じ名前の永続クラスが2つあるなら、 <literal>auto-import="
-"\"false\"</literal> を設定すべきです。 2つのクラスに”インポートされた”同じ名"
-"前を割り当てようとすると、Hibernateは例外を投げます。"
+"\"false\"</literal>
を設定すべきです。2つのクラスに\"インポートされた\"同じ名"
+"前を割り当てようとすると、 Hibernate は例外を送出します。"
#. Tag: para
-#: basic_mapping.xml:192
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>hibernate-mapping</literal> element allows you to nest
several "
"persistent <literal><class></literal> mappings, as shown
above. It is, "
@@ -396,82 +268,47 @@
"<literal>Animal.hbm.xml</literal>."
msgstr ""
"<literal>hibernate-mapping</literal> 要素は、最初の例で示したようにいくつかの"
-"永続 <literal><class></literal> マッピングをネストできます。 しかし、1"
+"永続 <literal><class></literal> マッピングをネストできます。しかし、1"
"つのマッピングファイルではただひとつの永続クラス(またはひとつのクラス階層)に"
-"マッピングするようにし、 さらに永続スーパークラスの後で指定するべきでしょう"
-"(いくつかのツールはこのようなマッピングファイルを想定しています)。 例えば次の"
-"ようになります。: <literal>Cat.hbm.xml</literal> ,
<literal>Dog.hbm.xml</"
+"マッピングするようにし、さらに永続スーパークラスの後で指定するべきでしょう(い"
+"くつかのツールはこのようなマッピングファイルを想定しています)。例えば次のよう"
+"になります。: <literal>Cat.hbm.xml</literal> ,
<literal>Dog.hbm.xml</"
"literal> , または継承を使うなら <literal>Animal.hbm.xml</literal> 。"
#. Tag: title
-#: basic_mapping.xml:205
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Class"
-msgstr "class"
+msgstr "Class"
#. Tag: para
-#: basic_mapping.xml:207
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can declare a persistent class using the <literal>class</literal>
"
"element. For example:"
-msgstr "<literal>class</literal> 要素を使って、永続クラスを宣言できます。"
+msgstr "<literal>class</literal> 要素を使って、永続クラスを宣言できます:"
-#. Tag: programlisting
-#: basic_mapping.xml:235
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class\n"
-" name=\"ClassName\"\n"
-" table=\"tableName\"\n"
-" discriminator-value=\"discriminator_value\"\n"
-" mutable=\"true|false\"\n"
-" schema=\"owner\"\n"
-" catalog=\"catalog\"\n"
-" proxy=\"ProxyInterface\"\n"
-" dynamic-update=\"true|false\"\n"
-" dynamic-insert=\"true|false\"\n"
-" select-before-update=\"true|false\"\n"
-" polymorphism=\"implicit|explicit\"\n"
-" where=\"arbitrary sql where condition\"\n"
-" persister=\"PersisterClass\"\n"
-" batch-size=\"N\"\n"
-" optimistic-lock=\"none|version|dirty|all\"\n"
-" lazy=\"true|false\"\n"
-" entity-name=\"EntityName\"\n"
-" check=\"arbitrary sql check condition\"\n"
-" rowid=\"rowid\"\n"
-" subselect=\"SQL expression\"\n"
-" abstract=\"true|false\"\n"
-" node=\"element-name\"\n"
-"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:238
-#, fuzzy, no-c-format
-msgid ""
"<literal>name</literal> (optional): the fully qualified Java class name
of "
"the persistent class or interface. If this attribute is missing, it is "
"assumed that the mapping is for a non-POJO entity."
msgstr ""
-"<literal>name</literal> (オプション):永続クラス(またはインターフェイス)の"
-"完全修飾Javaクラス名。 もしこの属性を指定しなければ、POJOではないエンティティ"
-"に対するマッピングとして扱われます。"
+"<literal>name</literal> (オプション):永続クラス(またはインターフェース)の"
+"完全修飾 Java クラス名。もしこの属性が欠落している場合、 POJO ではないエン"
+"ティティに対するマッピングとして扱われます。"
#. Tag: para
-#: basic_mapping.xml:245
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>table</literal> (optional - defaults to the unqualified class
"
"name): the name of its database table."
msgstr ""
"<literal>table</literal> (オプション - デフォルトは修飾されていないクラス"
-"名):データベーステーブルの名前"
+"名):データベーステーブルの名前。"
#. Tag: para
-#: basic_mapping.xml:251
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>discriminator-value</literal> (optional - defaults to the
class "
"name): a value that distinguishes individual subclasses that is used for "
@@ -479,86 +316,70 @@
"<literal>not null</literal>."
msgstr ""
"<literal>discriminator-value</literal> (オプション - デフォルトはクラス名): "
-"ポリモーフィックな振る舞いに使われる個々のサブクラスを識別するための値。 値"
-"は <literal>null</literal> か <literal>not null</literal>
のいずれかを取りま"
-"す。"
+"ポリモーフィックな振る舞いに使われる個々のサブクラスを識別するための値。値は "
+"<literal>null</literal> か <literal>not null</literal>
のいずれかを取ります。"
#. Tag: para
-#: basic_mapping.xml:258
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>mutable</literal> (optional - defaults to
<literal>true</literal>): "
"specifies that instances of the class are (not) mutable."
msgstr ""
-"<literal>mutable</literal> (オプション、 デフォルトは
<literal>true</"
+"<literal>mutable</literal> (オプション、デフォルトは
<literal>true</"
"literal> ): そのクラスのインスタンスが更新可能(または不可能)であることを指"
"定します。"
#. Tag: para
-#: basic_mapping.xml:264 basic_mapping.xml:2231
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>schema</literal> (optional): overrides the schema name
specified by "
"the root <literal><hibernate-mapping></literal>
element."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>schema</literal> (オプション): ルートの
<literal><hibernate-"
-"mapping></literal> 要素で指定されたスキーマ名をオーバーライドします。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"<literal>schema</literal> (オプション): ルートの
<literal><hibernate-"
-"mapping></literal> 要素で指定したスキーマ名を オーバーライドします。"
+"mapping></literal> 要素で指定したスキーマ名をオーバーライドします。"
#. Tag: para
-#: basic_mapping.xml:270 basic_mapping.xml:2237
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>catalog</literal> (optional): overrides the catalog name
specified "
"by the root <literal><hibernate-mapping></literal>
element."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>catalog</literal> (オプション):ルートの
<literal><hibernate-"
-"mapping></literal> 要素で指定されたカタログ名をオーバーライドします。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"<literal>catalog</literal> (オプション): ルートの
<literal><hibernate-"
-"mapping></literal> 要素で指定したカタログ名を オーバーライドします。"
+"mapping></literal> 要素で指定したカタログ名をオーバーライドします。"
#. Tag: para
-#: basic_mapping.xml:276
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>proxy</literal> (optional): specifies an interface to use for
lazy "
"initializing proxies. You can specify the name of the class itself."
msgstr ""
-"<literal>proxy</literal> (オプション):遅延初期化プロキシに使うインターフェ"
-"イスを指定します。 永続化するクラス名そのものを指定することも可能です。"
+"<literal>proxy</literal> (オプション):遅延初期化プロキシに使うインター"
+"フェースを指定します。永続化するクラス名そのものを指定することも可能です。"
#. Tag: para
-#: basic_mapping.xml:282
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>dynamic-update</literal> (optional - defaults to
<literal>false</"
"literal>): specifies that <literal>UPDATE</literal> SQL should be
generated "
"at runtime and can contain only those columns whose values have changed."
msgstr ""
"<literal>dynamic-update</literal> (オプション、 デフォルトは "
-"<literal>false</literal> ): 値が変更されたカラムだけを含むSQLの "
+"<literal>false</literal> ):値が変更されたカラムだけを含む SQL の "
"<literal>UPDATE</literal> 文を、実行時に生成することを指定します。"
#. Tag: para
-#: basic_mapping.xml:289
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>dynamic-insert</literal> (optional - defaults to
<literal>false</"
"literal>): specifies that <literal>INSERT</literal> SQL should be
generated "
"at runtime and contain only the columns whose values are not null."
msgstr ""
"<literal>dynamic-insert</literal> (オプション, デフォルトは
<literal>false</"
-"literal> ): 値がnullではないカラムだけを含むSQLの <literal>INSERT</"
+"literal> ):値が null ではないカラムだけを含む SQL の <literal>INSERT</"
"literal> 文を、実行時に生成することを指定します。"
#. Tag: para
-#: basic_mapping.xml:296
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>select-before-update</literal> (optional - defaults to "
"<literal>false</literal>): specifies that Hibernate should
<emphasis>never</"
@@ -568,40 +389,38 @@
"Hibernate perform an extra SQL <literal>SELECT</literal> to determine
if an "
"<literal>UPDATE</literal> is actually required."
msgstr ""
-"<literal>select-before-update</literal> (オプション, デフォルトは "
-"<literal>false</literal>): オブジェクトが変更されたのが確実でないならば、"
-"HibernateがSQLの <literal>UPDATE</literal> を
<emphasis>決して実行しない</"
-"emphasis> ことを指定します。 ある特定の場合(実際的には、一時オブジェクトが "
-"<literal>update()</literal> を使い、 新しいセッションと関連付けられた時だ"
-"け)、<literal>UPDATE</literal> が実際に必要かどうかを決定するために、 "
-"Hibernateが余分なSQLの <literal>SELECT</literal> 文を実行することを意味しま"
-"す。"
+"<literal>select-before-update</literal> (オプション、デフォルトは "
+"<literal>false</literal>): オブジェクトが変更されたのが確実でないならば、 "
+"Hibernate が SQL の <literal>UPDATE</literal> を
<emphasis>決して実行しない</"
+"emphasis> ことを指定します。ある特定の場合(実際的には、一時オブジェクトが "
+"<literal>update()</literal> を使い、新しいセッションと関連付けられた時だ"
+"け)、 <literal>UPDATE</literal> が実際に必要かどうかを決定するために、 "
+"Hibernate が余分な SQL の <literal>SELECT</literal> 文を実行することを意味し"
+"ます。"
#. Tag: para
-#: basic_mapping.xml:306
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>polymorphism</literal> (optional - defaults to
<literal>implicit</"
"literal>): determines whether implicit or explicit query polymorphism is "
"used."
msgstr ""
-"(optional, デフォルトでは <literal>implicit</literal> ): implicit(暗黙)か"
-"explicit(明示)の、 どちらのクエリポリモーフィズムを使うか決定します。"
+"<literal>polymorphism</literal> (オプション、デフォルトでは "
+"<literal>implicit</literal> ): implicit(暗黙)かexplicit(明示)の、どちらの"
+"クエリポリモーフィズムを使うか決定します。"
#. Tag: para
-#: basic_mapping.xml:312
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>where</literal> (optional): specifies an arbitrary SQL "
"<literal>WHERE</literal> condition to be used when retrieving objects
of "
"this class."
msgstr ""
"<literal>where</literal> (オプション): このクラスのオブジェクトを検索する"
-"ときに使用する、任意のSQLの <literal>WHERE</literal> 条件を指定します。"
+"ときに使用する、任意の SQL の <literal>WHERE</literal> 条件を指定します。"
#. Tag: para
-#: basic_mapping.xml:318
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>persister</literal> (optional): specifies a custom "
"<literal>ClassPersister</literal>."
@@ -610,69 +429,63 @@
"<literal>ClassPersister</literal> を指定します。"
#. Tag: para
-#: basic_mapping.xml:323
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>batch-size</literal> (optional - defaults to
<literal>1</literal>): "
"specifies a \"batch size\" for fetching instances of this class by
"
"identifier."
msgstr ""
-"<literal>batch-size</literal> (オプション, デフォルトは
<literal>1</"
+"<literal>batch-size</literal> (オプション、デフォルトは
<literal>1</"
"literal> ): 識別子でこのクラスのインスタンスを復元するときの「バッチサイ"
"ズ」を指定します。"
#. Tag: para
-#: basic_mapping.xml:329
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>optimistic-lock</literal> (optional - defaults to
<literal>version</"
"literal>): determines the optimistic locking strategy."
msgstr ""
-"<literal>optimistic-lock</literal> (オプション,デフォルトは "
+"<literal>optimistic-lock</literal> (オプション、デフォルトは "
"<literal>version</literal> ): 楽観ロック戦略を決定します。"
#. Tag: para
-#: basic_mapping.xml:335
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>lazy</literal> (optional): lazy fetching can be disabled by
setting "
"<literal>lazy=\"false\"</literal>."
msgstr ""
"<literal>lazy</literal> (オプション):
<literal>lazy=\"false\"</literal> と"
-"設定することで、 遅延フェッチができなくなります。"
+"設定することで、遅延フェッチができなくなります。"
#. Tag: para
-#: basic_mapping.xml:341
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>entity-name</literal> (optional - defaults to the class name):
"
"Hibernate3 allows a class to be mapped multiple times, potentially to "
"different tables. It also allows entity mappings that are represented by "
"Maps or XML at the Java level. In these cases, you should provide an "
"explicit arbitrary name for the entity. See <xref
linkend=\"persistent-"
-"classes-dynamicmodels\"/> and <xref linkend=\"xml\"/> for
more information."
+"classes-dynamicmodels\" /> and <xref linkend=\"xml\" /> for
more information."
msgstr ""
"<literal>entity-name</literal> (オプション、デフォルトはクラス名): "
-"Hibernate3ではクラスが複数回マッピングでき(場合によっては違うテーブルに対し"
-"ても)、 JavaレベルでMapやXMLで表現されるエンティティマッピングが可能です。 "
-"これらの場合、エンティティに対して任意の名前を、明示的に付けなくてはなりませ"
-"ん。 詳しくは <xref linkend=\"persistent-classes-dynamicmodels\"/> と
<xref "
-"linkend=\"xml\"/> を参照してください。"
+"Hibernate3 ではクラスが複数回マッピングでき(場合によっては違うテーブルに対し"
+"ても)、 Java レベルで Map や XML で表現されるエンティティマッピングが可能で"
+"す。これらの場合、エンティティに対して任意の名前を、明示的に付けなくてはなり"
+"ません。 詳しくは <xref linkend=\"persistent-classes-dynamicmodels\"/> と
"
+"<xref linkend=\"xml\"/> を参照してください。"
#. Tag: para
-#: basic_mapping.xml:351
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>check</literal> (optional): an SQL expression used to generate
a "
"multi-row <emphasis>check</emphasis> constraint for automatic schema
"
"generation."
msgstr ""
-"<literal>check</literal> (オプション):自動的にスキーマを生成するために、 "
-"複数行の <emphasis>check</emphasis> 制約を生成するSQL式。"
+"<literal>check</literal> (オプション):自動的にスキーマを生成するために、複"
+"数行の <emphasis>check</emphasis> 制約を生成する SQL 式。"
#. Tag: para
-#: basic_mapping.xml:357
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>rowid</literal> (optional): Hibernate can use ROWIDs on
databases. "
"On Oracle, for example, Hibernate can use the <literal>rowid</literal>
extra "
@@ -680,15 +493,14 @@
"literal>. A ROWID is an implementation detail and represents the physical
"
"location of a stored tuple."
msgstr ""
-"<literal>rowid</literal> (オプション):Hibernateは、それをサポートしている"
-"データベースでROWIDと 呼ばれるものを使うことができます。 例えばOracleを使って"
-"いるとき、このオプションに <literal>rowid</literal> を設定すれば、 Hiberante"
-"はupdateを高速化するために <literal>rowid</literal> という特別なカラムを使う"
-"ことができます。 ROWIDは詳細な実装であり、保存されたタプルの物理的な位置を表"
-"しています。"
+"<literal>rowid</literal> (オプション): Hibernate は、それをサポートしてい"
+"るデータベースで ROWID と 呼ばれるものを使うことができます。例えば Oracle を"
+"使っているとき、このオプションに <literal>rowid</literal> を設定すれば、 "
+"Hiberante は update を高速化するために <literal>rowid</literal> という特別な"
+"カラムを使うことができます。 ROWID は詳細な実装であり、保存されたタプルの物理"
+"的な位置を表しています。"
#. Tag: para
-#: basic_mapping.xml:364
#, fuzzy, no-c-format
msgid ""
"<literal>subselect</literal> (optional): maps an immutable and
read-only "
@@ -696,13 +508,12 @@
"instead of a base table. See below for more information."
msgstr ""
"<literal>subselect</literal> (オプション):不変かつ読み取り専用であるエン"
-"ティティを データベースの副問合せ(subselect)にマッピングします。 もし元の"
-"テーブルの代わりにビューを持ちたければ有用ですが、 そうでないのなら有用ではあ"
-"りません。より詳しい情報は下記を参照してください。"
+"ティティをデータベースの副問合せ(subselect)にマッピングします。もし元のテー"
+"ブルの代わりにビューを持ちたければ有用ですが、そうでないのなら有用ではありま"
+"せん。より詳しい情報は下記を参照してください。"
#. Tag: para
-#: basic_mapping.xml:371
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>abstract</literal> (optional): is used to mark abstract
"
"superclasses in <literal><union-subclass></literal>
hierarchies."
@@ -711,8 +522,7 @@
"</literal> 階層内の抽象スーパークラスにマークするために使います。"
#. Tag: para
-#: basic_mapping.xml:379
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is acceptable for the named persistent class to be an interface. You can "
"declare implementing classes of that interface using the
<literal><"
@@ -720,27 +530,25 @@
"emphasis> inner class. Specify the class name using the standard form i.e.
"
"<literal>e.g.Foo$Bar</literal>."
msgstr ""
-"永続クラスの名前にインターフェイスを指定してもまったく問題ありません。 そのと"
-"きは <literal><subclass></literal> 要素を使って、
そのインターフェイス"
-"を実装するクラスを定義してください。 <emphasis>static</emphasis> な内部クラス"
-"でも永続化できます。 そのときは標準形式、例えば <literal>eg.Foo$Bar</"
+"永続クラスの名前にインターフェースを指定してもまったく問題ありません。そのと"
+"きは <literal><subclass></literal>
要素を使って、そのインターフェースを"
+"実装するクラスを定義してください。 <emphasis>static</emphasis> な内部クラスで"
+"も永続化できます。そのときは標準形式、例えば <literal>eg.Foo$Bar</"
"literal> を使ってクラス名を指定してください。"
#. Tag: para
-#: basic_mapping.xml:386
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Immutable classes, <literal>mutable=\"false\"</literal>,
cannot be updated "
"or deleted by the application. This allows Hibernate to make some minor "
"performance optimizations."
msgstr ""
-"<literal>mutable=\"false\"</literal> 指定をした不変クラスは、
アプリケーショ"
-"ンによる更新や削除が出来ないことがあります。 これにより、Hibernateがパフォー"
-"マンスを少し改善します。"
+"<literal>mutable=\"false\"</literal>
指定をした不変クラスは、アプリケーション"
+"による更新や削除が出来ないことがあります。これにより、 Hibernate がパフォーマ"
+"ンスを少し改善します。"
#. Tag: para
-#: basic_mapping.xml:391
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The optional <literal>proxy</literal> attribute enables lazy
initialization "
"of persistent instances of the class. Hibernate will initially return CGLIB "
@@ -749,14 +557,13 @@
"proxies\" below."
msgstr ""
"オプションの <literal>proxy</literal> 属性により、クラスの永続インスタンスの"
-"遅延初期化が可能になります。 Hibernateは最初に、指定したインターフェイスを実"
-"装したCGLIBプロキシを返します。 実際の永続オブジェクトはプロキシのメソッドを"
-"呼び出すときにロードします。 以下の「遅延初期化のためのプロキシ」を参照してく"
+"遅延初期化が可能になります。 Hibernate は最初に、指定したインターフェースを実"
+"装した CGLIB プロキシを返します。実際の永続オブジェクトはプロキシのメソッドを"
+"呼び出すときにロードします。以下の「遅延初期化のためのプロキシ」を参照してく"
"ださい。"
#. Tag: para
-#: basic_mapping.xml:398
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Implicit</emphasis> polymorphism means that instances of the
class "
"will be returned by a query that names any superclass or implemented "
@@ -772,24 +579,23 @@
"table This allows a \"lightweight\" class that contains a subset of the
"
"table columns."
msgstr ""
-"<emphasis>暗黙的</emphasis> ポリモーフィズムとは、次の二つを意味しています。 "
-"一つはクラスのインスタンスが、スーパークラスや実装したインターフェイス、また"
-"そのクラスを指定するクエリによって返されることで、 もう一つはそのクラスのサブ"
+" <emphasis>暗黙的</emphasis> ポリモーフィズムとは、次の二つを意味しています。"
+"一つはクラスのインスタンスが、スーパークラスや実装したインターフェース、また"
+"そのクラスを指定するクエリによって返されることで、もう一つはそのクラスのサブ"
"クラスのインスタンスが、そのクラス自身を指定したクエリによって返されることで"
-"す。 また、<emphasis>明示的</emphasis> ポリモーフィズムとは、次の二つを意味し"
-"ています。 一つはクラスのインスタンスが、そのクラスを明示的に指定したクエリに"
-"よってのみ返されることで、 もう一つはクラスを指定したクエリが、<literal><"
+"す。また、 <emphasis>明示的</emphasis> ポリモーフィズムとは、次の二つを意味し"
+"ています。一つはクラスのインスタンスが、そのクラスを明示的に指定したクエリに"
+"よってのみ返されることで、もう一つはクラスを指定したクエリが、 <literal><"
"class></literal> 要素の中で
<literal><subclass></literal> や "
"<literal><joined-subclass></literal>
とマッピングされているサブクラスの"
-"インスタンスだけを返すことです。 ほとんどの用途ではデフォルトの "
-"<literal>polymorphism=\"implicit\"</literal> が適切です。
明示的なポリモー"
-"フィズムは、2つの違ったクラスが同じテーブルにマッピングされているときに有用で"
-"す (これによってテーブルカラムのサブセットを含む、「軽量な」クラスが可能にな"
-"ります)。"
+"インスタンスだけを返すことです。ほとんどの用途ではデフォルトの "
+"<literal>polymorphism=\"implicit\"</literal>
が適切です。明示的なポリモーフィ"
+"ズムは、2つの違ったクラスが同じテーブルにマッピングされているときに有用です "
+"(これによってテーブルカラムのサブセットを含む、「軽量な」クラスが可能になり"
+"ます)。"
#. Tag: para
-#: basic_mapping.xml:410
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>persister</literal> attribute lets you customize the
"
"persistence strategy used for the class. You can, for example, specify your "
@@ -801,17 +607,16 @@
"a simple example of \"persistence\" to a
<literal>Hashtable</literal>."
msgstr ""
"<literal>persister</literal> 属性を指定することで、クラスの永続化戦略をカスタ"
-"マイズできます。 例えば <literal>org.hibernate.persister.EntityPersister</"
-"literal> 自身のサブクラスを指定したり、 また例えばストアドプロシージャコー"
-"ル、フラットファイルへシリアライズ、 LDAPなどを通した永続性を実装する "
-"<literal>org.hibernate.persister.ClassPersister</literal>
インターフェイスの"
+"マイズできます。例えば <literal>org.hibernate.persister.EntityPersister</"
+"literal> 自身のサブクラスを指定したり、また例えばストアドプロシージャコール、"
+"フラットファイルへシリアライズ、 LDAP などを通した永続性を実装する "
+"<literal>org.hibernate.persister.ClassPersister</literal>
インターフェースの"
"完全に新しい実装を提供できます。簡単な例として <literal>org.hibernate.test."
-"CustomPersister</literal> を見てください(これは <literal>Hashtable</"
+"CustomPersister</literal> を参照してください(これは <literal>Hashtable</"
"literal> の「永続化」です)。"
#. Tag: para
-#: basic_mapping.xml:421
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>dynamic-update</literal> and
<literal>dynamic-insert</literal> "
"settings are not inherited by subclasses, so they can also be specified on "
@@ -820,14 +625,13 @@
"cases, they can actually decrease performance in others."
msgstr ""
"<literal>dynamic-update</literal> と
<literal>dynamic-insert</literal> の設定"
-"はサブクラスに継承されません。 そのため <literal><subclass></literal>
"
-"や <literal><joined-subclass></literal> 要素を指定することも出来ます。
"
+"はサブクラスに継承されません。そのため <literal><subclass></literal> "
+"や <literal><joined-subclass></literal>
要素を指定することも出来ます。"
"これらの設定はパフォーマンスを向上させる事もありますが、落とすこともあります"
"ので、慎重に使用してください。"
#. Tag: para
-#: basic_mapping.xml:429
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Use of <literal>select-before-update</literal> will usually decrease
"
"performance. It is useful to prevent a database update trigger being called "
@@ -835,36 +639,32 @@
"<literal>Session</literal>."
msgstr ""
"<literal>select-before-update</literal> の使用は通常パフォーマンスを落としま"
-"す。 もし <literal>Session</literal> へ分離インスタンスのグラフを再追加するな"
-"ら、 データベース更新のトリガを不必要に呼び出すのを避けるという点で、非常に有"
+"す。もし <literal>Session</literal> へ分離インスタンスのグラフを再追加するな"
+"ら、データベース更新のトリガを不必要に呼び出すのを避けるという点で、非常に有"
"用です。"
#. Tag: para
-#: basic_mapping.xml:435
#, no-c-format
msgid ""
"If you enable <literal>dynamic-update</literal>, you will have a choice
of "
"optimistic locking strategies:"
msgstr ""
"<literal>dynamic-update</literal> を有効にすれば、楽観ロック戦略を選ぶことに"
-"なります。"
+"なります:"
#. Tag: para
-#: basic_mapping.xml:441
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>version</literal>: check the version/timestamp
columns"
msgstr ""
-"<literal>version</literal> バージョン/タイムスタンプカラムをチェックします"
+"<literal>version</literal> バージョン/タイムスタンプカラムをチェックします。"
#. Tag: para
-#: basic_mapping.xml:446
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>all</literal>: check all columns"
msgstr "<literal>all</literal> すべてのカラムをチェックします。"
#. Tag: para
-#: basic_mapping.xml:451
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>dirty</literal>: check the changed columns, allowing some
"
"concurrent updates"
@@ -873,29 +673,26 @@
"す。"
#. Tag: para
-#: basic_mapping.xml:456
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>none</literal>: do not use optimistic locking"
-msgstr "<literal>none</literal> 楽観ロックを使用しません"
+msgstr "<literal>none</literal> 楽観ロックを使用しません。"
#. Tag: para
-#: basic_mapping.xml:461
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is <emphasis>strongly</emphasis> recommended that you use
version/"
"timestamp columns for optimistic locking with Hibernate. This strategy "
"optimizes performance and correctly handles modifications made to detached "
"instances (i.e. when <literal>Session.merge()</literal> is
used)."
msgstr ""
-"Hibernateで楽観的ロック戦略を使うなら、バージョン/タイムスタンプカラムを使う"
-"ことを <emphasis> 非常に</emphasis> 強くお勧めします。 楽観的ロックはパフォー"
-"マンスの観点からも最適であり、さらに分離インスタンスへの修正 (つまり "
+"Hibernate で楽観的ロック戦略を使うなら、バージョン/タイムスタンプカラムを使う"
+"ことを <emphasis>非常に</emphasis> 強くお勧めします。楽観的ロックはパフォーマ"
+"ンスの観点からも最適であり、さらに分離インスタンスへの修正 (つまり "
"<literal>Session.marge()</literal> が使われるとき) を正確に扱うことのできる"
"唯一の戦略でもあります。"
#. Tag: para
-#: basic_mapping.xml:468
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There is no difference between a view and a base table for a Hibernate "
"mapping. This is transparent at the database level, although some DBMS do "
@@ -904,53 +701,32 @@
"schema). In this case, you can map an immutable and read-only entity to a "
"given SQL subselect expression:"
msgstr ""
-"Hibernateのマッピングにとってビューと普通のテーブルの間に違いはなく、 データ"
-"ベースレベルでは透過的です (ただしビューを完全にはサポートしていないDBMSもあ"
-"ります。 特に、更新のあるビューに対してはそうです)。 ビューを使いたくても、"
-"データベースで作成できないことがあります (例えば、レガシースキーマの場"
-"合)。 この場合には、不変かつ読み取り専用のエンティティに与えられたSQLの副問"
-"合せ文をマップできます。"
+"Hibernate のマッピングにとってビューと普通のテーブルの間に違いはなく、データ"
+"ベースレベルでは透過的です(ただしビューを完全にはサポートしていない DBMS も"
+"あります。特に、更新のあるビューに対してはそうです)。ビューを使いたくても、"
+"データベースで作成できないことがあります(例えば、レガシースキーマの場合)。"
+"この場合には、不変かつ読み取り専用のエンティティに与えられた SQL の副問合せ文"
+"をマップできます:"
-#. Tag: programlisting
-#: basic_mapping.xml:476
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Summary\">\n"
-" <subselect>\n"
-" select item.name, max(bid.amount), count(*)\n"
-" from item\n"
-" join bid on bid.item_id = item.id\n"
-" group by item.name\n"
-" </subselect>\n"
-" <synchronize table=\"item\"/>\n"
-" <synchronize table=\"bid\"/>\n"
-" <id name=\"name\"/>\n"
-" ...\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:478
-#, fuzzy, no-c-format
-msgid ""
"Declare the tables to synchronize this entity with, ensuring that auto-flush
"
"happens correctly and that queries against the derived entity do not return "
"stale data. The <literal><subselect></literal> is
available both as an "
"attribute and a nested mapping element."
msgstr ""
-"テーブルをこのエンティティと同期するように定義してください。 オートフラッシュ"
-"が確実に起こるように、また導出エンティティに対するクエリが古いデータを 返さな"
+"テーブルをこのエンティティと同期するように定義してください。オートフラッシュ"
+"が確実に起こるように、また導出エンティティに対するクエリが古いデータを返さな"
"いようにするためです。 <literal><subselect></literal>
は属性とネストし"
"たマッピング属性のどちらでも利用できます。"
#. Tag: title
-#: basic_mapping.xml:488
-#, no-c-format
-msgid "<title>id</title>"
-msgstr ""
+#, fuzzy, no-c-format
+msgid "id"
+msgstr "uuid"
#. Tag: para
-#: basic_mapping.xml:490
#, no-c-format
msgid ""
"Mapped classes <emphasis>must</emphasis> declare the primary key column
of "
@@ -960,43 +736,25 @@
"column."
msgstr ""
"マップされたクラスはデータベーステーブルの主キーカラムを定義 <emphasis>しなけ"
-"ればなりません</emphasis> 。 ほとんどのクラスにはインスタンスのユニークな識別"
-"子を保持するJavaBeansスタイルのプロパティもあります。 <literal><id></"
-"literal> 要素は、そのプロパティから主キーカラムへのマッピングを定義します。"
+"ればなりません</emphasis> 。ほとんどのクラスにはインスタンスのユニークな識別"
+"子を保持する JavaBeans スタイルのプロパティも持っています。 <literal><"
+"id></literal> 要素は、そのプロパティから主キーカラムへのマッピングを定義し"
+"ます。"
-#. Tag: programlisting
-#: basic_mapping.xml:505
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<id\n"
-" name=\"propertyName\"\n"
-" type=\"typename\"\n"
-" column=\"column_name\"\n"
-" unsaved-value=\"null|any|none|undefined|id_value\"\n"
-" access=\"field|property|ClassName\">\n"
-"
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
-"\n"
-" <generator class=\"generatorClass\"/>\n"
-"</id>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:508
-#, fuzzy, no-c-format
-msgid ""
"<literal>name</literal> (optional): the name of the identifier
property."
msgstr "<literal>name</literal>(オプション):識別子プロパティの名前。"
#. Tag: para
-#: basic_mapping.xml:513 basic_mapping.xml:1351
#, no-c-format
msgid ""
"<literal>type</literal> (optional): a name that indicates the Hibernate
type."
-msgstr "<literal>type</literal>(オプション):Hibernateの型を示す名前。"
+msgstr "<literal>type</literal>(オプション): Hibernate の型を示す名前。"
#. Tag: para
-#: basic_mapping.xml:518
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>column</literal> (optional - defaults to the property name):
the "
"name of the primary key column."
@@ -1005,57 +763,29 @@
"ラムの名前。"
#. Tag: para
-#: basic_mapping.xml:524
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>unsaved-value</literal> (optional - defaults to a
\"sensible\" "
"value): an identifier property value that indicates an instance is newly "
"instantiated (unsaved), distinguishing it from detached instances that were "
"saved or loaded in a previous session."
msgstr ""
-"<literal>unsaved-value</literal>(オプション - デフォルトの値はsensible): "
-"インスタンスが新しくインスタンス化された (セーブされていない)ことを示す、識"
-"別子プロパティの値。 以前のSessionでセーブまたはロードされた一時的インスタン"
-"スと区別するために 使います。"
+"<literal>unsaved-value</literal>(オプション - デフォルトの値は "
+"sensible ): インスタンスが新しくインスタンス化された (セーブされていない)"
+"ことを示す、識別子プロパティの値。以前の Session でセーブまたはロードされた分"
+"離インスタンスと区別するために使います。"
#. Tag: para
-#: basic_mapping.xml:532
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>access</literal> (optional - defaults to
<literal>property</"
"literal>): the strategy Hibernate should use for accessing the property "
"value."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へアクセスするためにHibernateが使う戦略です。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): Hibernateがプロパティの値にアクセスするために使用すべき戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。"
+"literal> ): Hibernate がプロパティの値にアクセスするために使用すべき戦略。"
#. Tag: para
-#: basic_mapping.xml:540
#, no-c-format
msgid ""
"If the <literal>name</literal> attribute is missing, it is assumed that
the "
@@ -1065,35 +795,31 @@
"とみなされます。"
#. Tag: para
-#: basic_mapping.xml:545
#, no-c-format
msgid ""
"The <literal>unsaved-value</literal> attribute is almost never needed
in "
"Hibernate3."
msgstr ""
-"<literal>unsaved-value</literal> 属性はHibernate3ではほとんどの場合、必要では"
-"ありません。"
+"<literal>unsaved-value</literal> 属性は Hibernate3 ではほとんどの場合、必要で"
+"はありません。"
#. Tag: para
-#: basic_mapping.xml:549
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There is an alternative <literal><composite-id></literal>
declaration "
"that allows access to legacy data with composite keys. Its use is strongly "
"discouraged for anything else."
msgstr ""
"複合キーを持つレガシーデータにアクセスできるように、 <literal><composite-"
-"id></literal> という代替のマッピング定義があります。 しかし他の用途への使"
-"用は全くおすすめできません。"
+"id></literal> という代替のマッピング定義があります。しかし他の用途への使用"
+"は全くおすすめできません。"
#. Tag: title
-#: basic_mapping.xml:555
#, no-c-format
msgid "Generator"
msgstr "ジェネレータ"
#. Tag: para
-#: basic_mapping.xml:557
#, no-c-format
msgid ""
"The optional <literal><generator></literal> child element
names a Java "
@@ -1102,47 +828,32 @@
"generator instance, they are passed using the
<literal><param></"
"literal> element."
msgstr ""
-"オプションの <literal><generator></literal> 子要素は、
永続クラスのイン"
-"スタンスのユニークな識別子を生成するために使う、Javaクラスを指定します。 ジェ"
-"ネレータインスタンスの設定、もしくは初期化にパラメータが必要であれば、"
+"オプションの <literal><generator></literal>
子要素は、永続クラスのイン"
+"スタンスのユニークな識別子を生成するために使う、 Java クラスを指定します。"
+"ジェネレータインスタンスの設定、もしくは初期化にパラメータが必要であれば、 "
"<literal><param></literal> 要素を使って渡すことができます。"
-#. Tag: programlisting
-#: basic_mapping.xml:564
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<id name=\"id\" type=\"long\"
column=\"cat_id\">\n"
-" <generator
class=\"org.hibernate.id.TableHiLoGenerator\">\n"
-" <param
name=\"table\">uid_table</param>\n"
-" <param
name=\"column\">next_hi_value_column</param>\n"
-" </generator>\n"
-"</id>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:566
-#, fuzzy, no-c-format
-msgid ""
"All generators implement the interface <literal>org.hibernate.id."
"IdentifierGenerator</literal>. This is a very simple interface. Some "
"applications can choose to provide their own specialized implementations, "
"however, Hibernate provides a range of built-in implementations. The "
"shortcut names for the built-in generators are as follows:"
msgstr ""
-"すべてのジェネレータは、インターフェイス <literal>org.hibernate.id."
-"IdentifierGenerator</literal> を実装します。 これはとても単純なインターフェイ"
-"スなので、特別な実装を独自に用意するアプリケーションもあるかもしれません。 し"
-"かしHibernateは組み込みの実装をいくつも用意しています。 組み込みのジェネレー"
-"タには以下のショートカット名があります: <placeholder-1/>"
+"すべてのジェネレータは、 <literal>org.hibernate.id.IdentifierGenerator</"
+"literal> インターフェースを実装します。これはとても単純なインターフェースなの"
+"で、特別な実装を独自に用意するアプリケーションもあるかもしれません。しかし "
+"Hibernate は組み込みの実装をいくつも用意しています。組み込みのジェネレータに"
+"は以下のショートカット名があります:"
-#. Tag: literal
-#: basic_mapping.xml:574
+#. Tag: term
#, no-c-format
-msgid "increment"
-msgstr "increment"
+msgid "<literal>increment</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:576
#, no-c-format
msgid ""
"generates identifiers of type <literal>long</literal>,
<literal>short</"
@@ -1151,54 +862,48 @@
"cluster.</emphasis>"
msgstr ""
"<literal>long</literal> , <literal>short</literal> ,
<literal>int</literal> "
-"型の識別子を生成します。 これらは他のプロセスが同じテーブルにデータを挿入しな"
+"型の識別子を生成します。これらは他のプロセスが同じテーブルにデータを挿入しな"
"いときだけユニークです。 <emphasis>クラスタ内では使わないでください</"
"emphasis> 。"
-#. Tag: literal
-#: basic_mapping.xml:585
+#. Tag: term
#, no-c-format
-msgid "identity"
-msgstr "identity"
+msgid "<literal>identity</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:587
#, no-c-format
msgid ""
"supports identity columns in DB2, MySQL, MS SQL Server, Sybase and "
"HypersonicSQL. The returned identifier is of type
<literal>long</literal>, "
"<literal>short</literal> or <literal>int</literal>."
msgstr ""
-"DB2, MySQL, MS SQL Server, Sybase, HypersonicSQLの識別子カラムを サポートしま"
-"す。 返される識別子の型は <literal>long</literal> ,
<literal>short</"
+"DB2, MySQL, MS SQL Server, Sybase, HypersonicSQL の識別子カラムをサポートしま"
+"す。返される識別子の型は <literal>long</literal> , <literal>short</"
"literal> , <literal>int</literal> のいずれかです。"
-#. Tag: literal
-#: basic_mapping.xml:595
+#. Tag: term
#, no-c-format
-msgid "sequence"
-msgstr "sequence"
+msgid "<literal>sequence</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:597
#, no-c-format
msgid ""
"uses a sequence in DB2, PostgreSQL, Oracle, SAP DB, McKoi or a generator in "
"Interbase. The returned identifier is of type <literal>long</literal>,
"
"<literal>short</literal> or <literal>int</literal>"
msgstr ""
-"DB2, PostgreSQL, Oracle, SAP DB, McKoiのシーケンスや、Interbaseのジェネレータ"
-"を使用します。 返される識別子の型は <literal>long</literal> , "
+"DB2, PostgreSQL, Oracle, SAP DB, McKoi のシーケンスや、 Interbase のジェネ"
+"レータを使用します。返される識別子の型は <literal>long</literal> , "
"<literal>short</literal> , <literal>int</literal>
のいずれかです。"
-#. Tag: literal
-#: basic_mapping.xml:605
+#. Tag: term
#, no-c-format
-msgid "hilo"
-msgstr "hilo"
+msgid "<literal>hilo</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:607
#, no-c-format
msgid ""
"uses a hi/lo algorithm to efficiently generate identifiers of type "
@@ -1209,19 +914,17 @@
"database."
msgstr ""
"<literal>long</literal> , <literal>short</literal> ,
<literal>int</literal> "
-"型の識別子を効率的に生成するhi/loアルゴリズムを使います。 hi値のソースとし"
+"型の識別子を効率的に生成する hi/lo アルゴリズムを使います。 hi 値のソースとし"
"て、テーブルとカラムを与えます(デフォルトではそれぞれ "
"<literal>hibernate_unique_key</literal> と
<literal>next_hi</literal> )。 hi/"
-"loアルゴリズムは特定のデータベースに対してのみユニークな識別子を生成します。"
+"lo アルゴリズムは特定のデータベースに対してのみユニークな識別子を生成します。"
-#. Tag: literal
-#: basic_mapping.xml:617
+#. Tag: term
#, no-c-format
-msgid "seqhilo"
-msgstr "seqhilo"
+msgid "<literal>seqhilo</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:619
#, no-c-format
msgid ""
"uses a hi/lo algorithm to efficiently generate identifiers of type "
@@ -1229,117 +932,104 @@
"given a named database sequence."
msgstr ""
"<literal>long</literal> , <literal>short</literal> ,
<literal>int</literal> "
-"型の識別子を効率的に生成するhi/loアルゴリズムを使います。 指定されたデータ"
+"型の識別子を効率的に生成する hi/lo アルゴリズムを使います。指定されたデータ"
"ベースシーケンスを与えます。"
-#. Tag: literal
-#: basic_mapping.xml:627
+#. Tag: term
#, no-c-format
-msgid "uuid"
-msgstr "uuid"
+msgid "<literal>uuid</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:629
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"uses a 128-bit UUID algorithm to generate identifiers of type string that "
"are unique within a network (the IP address is used). The UUID is encoded as
"
"a string of 32 hexadecimal digits in length."
msgstr ""
-"(IPアドレスが使用される)ネットワーク内でユニークな文字列型の識別子を生成する"
-"ために、 128ビットのUUIDアルゴリズムを使用します。UUIDは長さ32の16進数字の文"
-"字列としてエンコードされます。"
+"( IP アドレスが使用される)ネットワーク内でユニークな文字列型の識別子を生成す"
+"るために、 128 ビットの UUID アルゴリズムを使用します。 UUID は長さ 32 の 16 "
+"進数字の文字列としてエンコードされます。"
-#. Tag: literal
-#: basic_mapping.xml:637
+#. Tag: term
#, no-c-format
-msgid "guid"
-msgstr "guid"
+msgid "<literal>guid</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:639
#, no-c-format
msgid "uses a database-generated GUID string on MS SQL Server and MySQL."
-msgstr "MS SQLサーバとMySQLでデータベースが生成するGUID文字列を使用します。"
+msgstr ""
+"MS SQL サーバーと MySQL でデータベースが生成する GUID 文字列を使用します。"
-#. Tag: literal
-#: basic_mapping.xml:645
+#. Tag: term
#, no-c-format
-msgid "native"
-msgstr "native"
+msgid "<literal>native</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:647
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"selects <literal>identity</literal>,
<literal>sequence</literal> or "
"<literal>hilo</literal> depending upon the capabilities of the
underlying "
"database."
msgstr ""
-"使用するデータベースの性能により <literal>identity</literal> , "
-"<literal>sequence</literal> , <literal>hilo</literal>
のいずれかが選ばれま"
+"使用するデータベースの性能により <literal>identity</literal> 、 "
+"<literal>sequence</literal> 、 <literal>hilo</literal>
のいずれかが選ばれま"
"す。"
-#. Tag: literal
-#: basic_mapping.xml:655
+#. Tag: term
#, no-c-format
-msgid "assigned"
-msgstr "assigned"
+msgid "<literal>assigned</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:657
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"lets the application assign an identifier to the object before
<literal>save"
"()</literal> is called. This is the default strategy if no
<literal><"
"generator></literal> element is specified."
msgstr ""
-"<literal>save()</literal> が呼ばれる前に、 アプリケーションがオブジェクトに識"
-"別子を代入できるようにします。 <literal><generator></literal>
が指定さ"
-"れていなければ、これがデフォルトの戦略になります。"
+"<literal>save()</literal> が呼ばれる前に、アプリケーションがオブジェクトに識"
+"別子を代入できるようにします。 <literal><generator></literal>
要素が指"
+"定されていなければ、これがデフォルトの戦略になります。"
-#. Tag: literal
-#: basic_mapping.xml:665
+#. Tag: term
#, no-c-format
-msgid "select"
-msgstr "select"
+msgid "<literal>select</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:667
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"retrieves a primary key, assigned by a database trigger, by selecting the "
"row by some unique key and retrieving the primary key value."
msgstr ""
-"あるユニークキーによる行の選択と主キーの値の復元により、 データベーストリガが"
+"あるユニークキーによる行の選択と主キーの値の復元により、データベーストリガが"
"割り当てた主キーを取得します。"
-#. Tag: literal
-#: basic_mapping.xml:674
+#. Tag: term
#, no-c-format
-msgid "foreign"
-msgstr "foreign"
+msgid "<literal>foreign</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:676
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"uses the identifier of another associated object. It is usually used in "
"conjunction with a <literal><one-to-one></literal>
primary key "
"association."
msgstr ""
-"他の関連オブジェクトの識別子を使います。 普通は、<literal><one-to-one>"
+"他の関連オブジェクトの識別子を使います。普通は、 <literal><one-to-one>"
"</literal> 主キー関連と組み合わせて使います。"
-#. Tag: literal
-#: basic_mapping.xml:683
+#. Tag: term
#, no-c-format
-msgid "sequence-identity"
-msgstr "sequence-identity"
+msgid "<literal>sequence-identity</literal>"
+msgstr "<literal>sequence-identity</literal>"
#. Tag: para
-#: basic_mapping.xml:685
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"a specialized sequence generation strategy that utilizes a database sequence
"
"for the actual value generation, but combines this with JDBC3 "
@@ -1348,22 +1038,20 @@
"drivers targeted for JDK 1.4. Comments on these insert statements are "
"disabled due to a bug in the Oracle drivers."
msgstr ""
-"a specialized sequence generation strategy which utilizes a database "
-"sequence for the actual value generation, but combines this with JDBC3 "
-"getGeneratedKeys to actually return the generated identifier value as part "
-"of the insert statement execution. This strategy is only known to be "
-"supported on Oracle 10g drivers targetted for JDK 1.4. Note comments on "
-"these insert statements are disabled due to a bug in the Oracle drivers."
+"実際の値の生成のためにデータベースシーケンスを使用する特別なシーケンス生成戦"
+"略ですが、 JDBC3 getGeneratedKeys と結びついて、 INSERT 文の実行の一部として"
+"生成された識別子の値を実際に返します。この戦略は JDK 1.4 を対象とする Oracle "
+"10g のドライバでサポートされていることが知られています。これらの INSERT 文で"
+"のコメントは Oracle のドライバのバグにより無効にされていることに注意してくだ"
+"さい。"
#. Tag: title
-#: basic_mapping.xml:702
#, no-c-format
msgid "Hi/lo algorithm"
msgstr "Hi/lo アルゴリズム"
#. Tag: para
-#: basic_mapping.xml:703
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>hilo</literal> and <literal>seqhilo</literal>
generators "
"provide two alternate implementations of the hi/lo algorithm. The first "
@@ -1371,82 +1059,52 @@
"available \"hi\" value. Where supported, the second uses an Oracle-style
"
"sequence."
msgstr ""
-"<literal>hilo</literal> と <literal>seqhilo</literal>
ジェネレータは、 識別子"
-"生成の代表的なアプローチであるhi/loアルゴリズムの2つの代替実装を提供します。 "
-"1番目の実装は、次回に利用される\"hi\"値を保持する「特別な」データベーステーブ"
-"ルを 必要とします。 2番目の実装は、Oracleスタイルのシーケンスを使います(サ"
-"ポートされている場合)。"
+"<literal>hilo</literal> と <literal>seqhilo</literal>
ジェネレータは、識別子"
+"生成の代表的なアプローチである hi/lo アルゴリズムの2つの代替実装を提供しま"
+"す。1番目の実装は、次回に利用される \"hi\" 値を保持する「特別な」データベース"
+"テーブルを必要とします。2番目の実装は、 Oracle スタイルのシーケンスを使います"
+"(サポートされている場合)。"
-#. Tag: programlisting
-#: basic_mapping.xml:710
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<id name=\"id\" type=\"long\"
column=\"cat_id\">\n"
-" <generator class=\"hilo\">\n"
-" <param
name=\"table\">hi_value</param>\n"
-" <param
name=\"column\">next_value</param>\n"
-" <param name=\"max_lo\">100</param>\n"
-" </generator>\n"
-"</id>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: basic_mapping.xml:712
-#, no-c-format
-msgid ""
-"<![CDATA[<id name=\"id\" type=\"long\"
column=\"cat_id\">\n"
-" <generator class=\"seqhilo\">\n"
-" <param
name=\"sequence\">hi_value</param>\n"
-" <param name=\"max_lo\">100</param>\n"
-" </generator>\n"
-"</id>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:714
-#, fuzzy, no-c-format
-msgid ""
"Unfortunately, you cannot use <literal>hilo</literal> when supplying
your "
"own <literal>Connection</literal> to Hibernate. When Hibernate uses an
"
"application server datasource to obtain connections enlisted with JTA, you "
"must configure the
<literal>hibernate.transaction.manager_lookup_class</"
"literal>."
msgstr ""
-"残念ながらHibernateへの独自の <literal>Connection</literal> を提供するときに"
-"は、<literal>hilo</literal> を使えません。 HibernateがJTAでリストされている接"
-"続を取得するためにアプリケーションサーバーのデータソースを使用しているときに"
-"は、 <literal>hibernate.transaction.manager_lookup_class</literal>
を適切に設"
-"定しなければなりません。"
+"残念ながら Hibernate への独自の <literal>Connection</literal> を提供するとき"
+"には、 <literal>hilo</literal> を使えません。 Hibernate が JTA でリストされて"
+"いる接続を取得するためにアプリケーションサーバーのデータソースを使用している"
+"ときには、 <literal>hibernate.transaction.manager_lookup_class</literal>
を適"
+"切に設定しなければなりません。"
#. Tag: title
-#: basic_mapping.xml:723
#, no-c-format
msgid "UUID algorithm"
msgstr "UUID アルゴリズム"
#. Tag: para
-#: basic_mapping.xml:724
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The UUID contains: IP address, startup time of the JVM that is accurate to a
"
"quarter second, system time and a counter value that is unique within the "
"JVM. It is not possible to obtain a MAC address or memory address from Java "
"code, so this is the best option without using JNI."
msgstr ""
-"UUIDには以下のものが含まれます: IPアドレス、JVMのスタートアップタイム(4分の"
-"1秒の正確さ)、 システム時間、(JVMに対してユニークな)カウンタ値。 Javaコー"
-"ドからMACアドレスやメモリアドレスを取得することはできないので、 JNIが使えない"
-"ときの最良の方法です。"
+"UUID には以下のものが含まれます: IP アドレス、 JVM のスタートアップタイム(4"
+"分の1秒の正確さ)、システム時間、( JVM に対してユニークな)カウンタ値。 "
+"Java コードから MAC アドレスやメモリアドレスを取得することはできないので、 "
+"JNI が使えないときの最良の方法です。"
#. Tag: title
-#: basic_mapping.xml:733
#, no-c-format
msgid "Identity columns and sequences"
msgstr "識別子カラムとシーケンス"
#. Tag: para
-#: basic_mapping.xml:734
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For databases that support identity columns (DB2, MySQL, Sybase, MS SQL), "
"you can use <literal>identity</literal> key generation. For databases
that "
@@ -1455,55 +1113,31 @@
"strategies require two SQL queries to insert a new object. For example:"
msgstr ""
"識別子カラムをサポートしているデータベース(DB2, MySQL, Sybase, MS SQL)で"
-"は、 <literal>identity</literal> キー生成を使えます。 シーケンスをサポートす"
-"るデータベース(DB2, Oracle, PostgreSQL, Interbase, McKoi, SAP DB)では、 "
-"<literal>sequence</literal> スタイルのキー生成を使えます。 どちらの戦略も、新"
-"しいオブジェクトを挿入するために、SQLクエリを2つ必要とします。"
+"は、 <literal>identity</literal> キー生成が使えます。シーケンスをサポートする"
+"データベース(DB2, Oracle, PostgreSQL, Interbase, McKoi, SAP DB)では、 "
+"<literal>sequence</literal> スタイルのキー生成が使えます。どちらの戦略も、新"
+"しいオブジェクトを挿入するために、 SQL クエリを2つ必要とします。"
-#. Tag: programlisting
-#: basic_mapping.xml:742
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<id name=\"id\" type=\"long\"
column=\"person_id\">\n"
-" <generator class=\"sequence\">\n"
-" <param
name=\"sequence\">person_id_sequence</param>\n"
-" </generator>\n"
-"</id>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: basic_mapping.xml:744
-#, no-c-format
-msgid ""
-"<![CDATA[<id name=\"id\" type=\"long\"
column=\"person_id\" unsaved-value=\"0"
-"\">\n"
-" <generator class=\"identity\"/>\n"
-"</id>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:746
-#, fuzzy, no-c-format
-msgid ""
"For cross-platform development, the <literal>native</literal> strategy
will, "
"depending on the capabilities of the underlying database, choose from the "
"<literal>identity</literal>, <literal>sequence</literal>
and <literal>hilo</"
"literal> strategies."
msgstr ""
"クロスプラットフォームの開発では、<literal>native</literal> 戦略は "
-"<literal>identity</literal> , <literal>sequence</literal> ,
<literal>hilo</"
-"literal> 戦略の中から1つを選択しますが、 これは使用しているデータベースの能力"
+"<literal>identity</literal> 、 <literal>sequence</literal> 、
<literal>hilo</"
+"literal> 戦略の中から1つを選択しますが、これは使用しているデータベースの能力"
"に依存します。"
#. Tag: title
-#: basic_mapping.xml:754
#, no-c-format
msgid "Assigned identifiers"
msgstr "識別子の割り当て"
#. Tag: para
-#: basic_mapping.xml:755
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you want the application to assign identifiers, as opposed to having "
"Hibernate generate them, you can use the <literal>assigned</literal>
"
@@ -1513,16 +1147,15 @@
"behavior if you do not specify a
<literal><generator></literal> "
"element."
msgstr ""
-"アプリケーションに識別子を割り当てさせたいのであれば(Hibernateが生成するもの"
-"ではなく)、 <literal>assigned</literal> ジェネレータを使うことができます。 "
+"アプリケーションに識別子を割り当てさせたいのであれば( Hibernate が生成するも"
+"のではなく)、 <literal>assigned</literal> ジェネレータを使うことができます。"
"この特別なジェネレータは、すでにオブジェクトの識別子プロパティに代入された値"
-"を 識別子に使います。このジェネレータは主キーが代理キーの代わりに自然キーであ"
+"を識別子に使います。このジェネレータは主キーが代理キーの代わりに自然キーであ"
"る場合に使用します。 <literal><generator></literal>
要素を指定しない場"
"合のデフォルトの動作になります。"
#. Tag: para
-#: basic_mapping.xml:764
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>assigned</literal> generator makes Hibernate use "
"<literal>unsaved-value=\"undefined\"</literal>. This forces
Hibernate to go "
@@ -1530,62 +1163,46 @@
"there is a version or timestamp property, or you define
<literal>Interceptor."
"isUnsaved()</literal>."
msgstr ""
-"<literal>assigned</literal> ジェネレータを選択すると、 Hibernateは "
-"<literal>unsaved-value=\"undefined\"</literal> を使用します。
そして、バー"
-"ジョンやタイムスタンプのプロパティがない場合や <literal>Interceptor.isUnsaved"
-"()</literal> を定義しなかった場合には、インスタンスが一時的(transient)なもの"
-"であるのか、 またはセッションから分離(detached)したものかどうかを決めるため"
-"に、データベースを調べます。"
+"<literal>assigned</literal> ジェネレータを選択すると、 Hibernate は "
+"<literal>unsaved-value=\"undefined\"</literal>
を使います。そして、バージョン"
+"やタイムスタンプのプロパティがない場合や <literal>Interceptor.isUnsaved()</"
+"literal> を定義しなかった場合には、インスタンスが一時的(transient)なものであ"
+"るのか、またはセッションから分離(detached)したものかどうかを決めるために、"
+"データベースを調べます。"
#. Tag: title
-#: basic_mapping.xml:774
#, no-c-format
msgid "Primary keys assigned by triggers"
msgstr "トリガにより割り当てられた主キー"
#. Tag: para
-#: basic_mapping.xml:775
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate does not generate DDL with triggers. It is for legacy schemas
only."
msgstr ""
-"レガシースキーマのためにのみ指定します(Hibernateはトリガを使ってDDLを生成しま"
-"せん)。"
+"レガシースキーマのためにのみ指定します( Hibernate はトリガを使って DDL を生成"
+"しません)。"
-#. Tag: programlisting
-#: basic_mapping.xml:779
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<id name=\"id\" type=\"long\"
column=\"person_id\">\n"
-" <generator class=\"select\">\n"
-" <param
name=\"key\">socialSecurityNumber</param>\n"
-" </generator>\n"
-"</id>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:781
-#, fuzzy, no-c-format
-msgid ""
"In the above example, there is a unique valued property named "
"<literal>socialSecurityNumber</literal>. It is defined by the class, as
a "
"natural key and a surrogate key named <literal>person_id</literal>,
whose "
"value is generated by a trigger."
msgstr ""
-"上の例の中で、クラスで自然キーとして定義された "
+"上記の例の中で、クラスで自然キーとして定義された "
"<literal>socialSecurityNumber</literal> という名前のユニークな値のプロパティ"
-"と、 値がトリガにより生成される <literal>person_id</literal> という名前の代理"
+"と、値がトリガにより生成される <literal>person_id</literal> という名前の代理"
"キーがあります。"
#. Tag: title
-#: basic_mapping.xml:793
-#, no-c-format
+#, fuzzy, no-c-format
msgid "Enhanced identifier generators"
-msgstr "Enhanced identifier generators"
+msgstr "識別子の getter メソッド"
#. Tag: para
-#: basic_mapping.xml:795
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Starting with release 3.2.3, there are 2 new generators which represent a
re-"
"thinking of 2 different aspects of identifier generation. The first aspect "
@@ -1595,17 +1212,9 @@
"the named generators described above, starting in 3.3.x. However, they are "
"included in the current releases and can be referenced by FQN."
msgstr ""
-"Starting with release 3.2.3, there are 2 new generators which represent a
re-"
-"thinking of 2 different aspects of identifier generation. The first aspect "
-"is database portability; the second is optimization (not having to query the
"
-"database for every request for a new identifier value). These two new "
-"generators are intended to take the place of some of the named generators "
-"described above (starting in 3.3.x); however, they are included in the "
-"current releases and can be referenced by FQN."
#. Tag: para
-#: basic_mapping.xml:803
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The first of these new generators is
<literal>org.hibernate.id.enhanced."
"SequenceStyleGenerator</literal> which is intended, firstly, as a "
@@ -1624,100 +1233,59 @@
"with its table-based generators. This generator has a number of "
"configuration parameters:"
msgstr ""
-"The first of these new generators is
<literal>org.hibernate.id.enhanced."
-"SequenceStyleGenerator</literal> which is intended firstly as a replacement
"
-"for the <literal>sequence</literal> generator and secondly as a better
"
-"portability generator than <literal>native</literal> (because "
-"<literal>native</literal> (generally) chooses between
<literal>identity</"
-"literal> and <literal>sequence</literal> which have largely
different "
-"semantics which can cause subtle isssues in applications eyeing "
-"portability).
<literal>org.hibernate.id.enhanced.SequenceStyleGenerator</"
-"literal> however achieves portability in a different manner. It chooses "
-"between using a table or a sequence in the database to store its "
-"incrementing values depending on the capabilities of the dialect being used.
"
-"The difference between this and <literal>native</literal> is that
table-"
-"based and sequence-based storage have the same exact semantic (in fact "
-"sequences are exactly what Hibernate tries to emmulate with its table-based "
-"generators). This generator has a number of configuration parameters: "
-"<placeholder-1/>"
#. Tag: para
-#: basic_mapping.xml:817
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>sequence_name</literal> (optional, defaults to "
"<literal>hibernate_sequence</literal>): the name of the sequence or
table to "
"be used."
msgstr ""
-"<literal>sequence_name</literal> (optional, defaults to "
-"<literal>hibernate_sequence</literal>): The name of the sequence (or
table) "
-"to be used."
#. Tag: para
-#: basic_mapping.xml:823
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>initial_value</literal> (optional, defaults to
<literal>1</"
"literal>): the initial value to be retrieved from the sequence/table. In "
"sequence creation terms, this is analogous to the clause typically named "
"\"STARTS WITH\"."
msgstr ""
-"<literal>initial_value</literal> (optional, defaults to
<literal>1</"
-"literal>): The initial value to be retrieved from the sequence/table. In "
-"sequence creation terms, this is analogous to the clause typical named "
-"\"STARTS WITH\"."
#. Tag: para
-#: basic_mapping.xml:830
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>increment_size</literal> (optional - defaults to
<literal>1</"
"literal>): the value by which subsequent calls to the sequence/table should
"
"differ. In sequence creation terms, this is analogous to the clause "
"typically named \"INCREMENT BY\"."
msgstr ""
-"<literal>increment_size</literal> (optional, defaults to
<literal>1</"
-"literal>): The value by which subsequent calls to the sequence/table should
"
-"differ. In sequence creation terms, this is analogous to the clause typical "
-"named \"INCREMENT BY\"."
#. Tag: para
-#: basic_mapping.xml:837
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>force_table_use</literal> (optional - defaults to
<literal>false</"
"literal>): should we force the use of a table as the backing structure even
"
"though the dialect might support sequence?"
msgstr ""
-"<literal>force_table_use</literal> (optional, defaults to
<literal>false</"
-"literal>): Should we force the use of a table as the backing structure even
"
-"though the dialect might support sequence?"
#. Tag: para
-#: basic_mapping.xml:844
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>value_column</literal> (optional - defaults to
<literal>next_val</"
"literal>): only relevant for table structures, it is the name of the column
"
"on the table which is used to hold the value."
msgstr ""
-"<literal>value_column</literal> (optional, defaults to
<literal>next_val</"
-"literal>): Only relevant for table structures! The name of the column on the
"
-"table which is used to hold the value."
#. Tag: para
-#: basic_mapping.xml:851
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>optimizer</literal> (optional - defaults to
<literal>none</"
-"literal>): See"
+"literal>): See <xref
linkend=\"mapping-declaration-id-enhanced-optimizers\" /"
+">"
msgstr ""
-"<literal>cascade</literal>(オプション - デフォルトは
<literal>none</"
-"literal> ): カスケードのスタイル。"
#. Tag: para
-#: basic_mapping.xml:858
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The second of these new generators is
<literal>org.hibernate.id.enhanced."
"TableGenerator</literal>, which is intended, firstly, as a replacement for
"
@@ -1730,148 +1298,95 @@
"multiple distinctly keyed rows. This generator has a number of configuration
"
"parameters:"
msgstr ""
-"The second of these new generators is
<literal>org.hibernate.id.enhanced."
-"TableGenerator</literal> which is intended firstly as a replacement for the
"
-"<literal>table</literal> generator (although it actually functions much
more "
-"like <literal>org.hibernate.id.MultipleHiLoPerTableGenerator</literal>)
and "
-"secondly as a re-implementation of <literal>org.hibernate.id."
-"MultipleHiLoPerTableGenerator</literal> utilizing the notion of pluggable
"
-"optimiziers. Essentially this generator defines a table capable of holding a
"
-"number of different increment values simultaneously by using multiple "
-"distinctly keyed rows. This generator has a number of configuration "
-"parameters: <placeholder-1/>"
#. Tag: para
-#: basic_mapping.xml:868
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>table_name</literal> (optional - defaults to "
"<literal>hibernate_sequences</literal>): the name of the table to be
used."
msgstr ""
-"<literal>table_name</literal> (optional, defaults to "
-"<literal>hibernate_sequences</literal>): The name of the table to be
used."
#. Tag: para
-#: basic_mapping.xml:874
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>value_column_name</literal> (optional - defaults to "
"<literal>next_val</literal>): the name of the column on the table that
is "
"used to hold the value."
msgstr ""
-"<literal>value_column_name</literal> (optional, defaults to "
-"<literal>next_val</literal>): The name of the column on the table which
is "
-"used to hold the value."
#. Tag: para
-#: basic_mapping.xml:880
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>segment_column_name</literal> (optional - defaults to "
"<literal>sequence_name</literal>): the name of the column on the table
that "
"is used to hold the \"segment key\". This is the value which identifies
"
"which increment value to use."
msgstr ""
-"<literal>segment_column_name</literal> (optional, defaults to "
-"<literal>sequence_name</literal>): The name of the column on the table
which "
-"is used to hold the \"segement key\". This is the value which distinctly
"
-"identifies which increment value to use."
#. Tag: para
-#: basic_mapping.xml:887
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>segment_value</literal> (optional - defaults to
<literal>default</"
"literal>): The \"segment key\" value for the segment from which we
want to "
"pull increment values for this generator."
msgstr ""
-"<literal>segment_value</literal> (optional, defaults to
<literal>default</"
-"literal>): The \"segment key\" value for the segment from which we
want to "
-"pull increment values for this generator."
#. Tag: para
-#: basic_mapping.xml:894
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>segment_value_length</literal> (optional - defaults to "
"<literal>255</literal>): Used for schema generation; the column size to
"
"create this segment key column."
msgstr ""
-"<literal>segment_value_length</literal> (optional, defaults to
<literal>255</"
-"literal>): Used for schema generation; the column size to create this "
-"segment key column."
#. Tag: para
-#: basic_mapping.xml:900
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>initial_value</literal> (optional - defaults to
<literal>1</"
"literal>): The initial value to be retrieved from the table."
msgstr ""
-"<literal>initial_value</literal> (optional, defaults to
<literal>1</"
-"literal>): The initial value to be retrieved from the table."
#. Tag: para
-#: basic_mapping.xml:906
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>increment_size</literal> (optional - defaults to
<literal>1</"
"literal>): The value by which subsequent calls to the table should
differ."
msgstr ""
-"<literal>increment_size</literal> (optional, defaults to
<literal>1</"
-"literal>): The value by which subsequent calls to the table should
differ."
#. Tag: para
-#: basic_mapping.xml:912
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>optimizer</literal> (optional - defaults to
<literal></literal>): "
-"See"
+"See <xref linkend=\"mapping-declaration-id-enhanced-optimizers\"
/>"
msgstr ""
-"<literal>cascade</literal>(オプション - デフォルトは
<literal>none</"
-"literal> ): カスケードのスタイル。"
#. Tag: title
-#: basic_mapping.xml:922
#, no-c-format
msgid "Identifier generator optimization"
-msgstr "Identifier generator optimization"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:923
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For identifier generators that store values in the database, it is "
"inefficient for them to hit the database on each and every call to generate "
"a new identifier value. Instead, you can group a bunch of them in memory and
"
"only hit the database when you have exhausted your in-memory value group. "
"This is the role of the pluggable optimizers. Currently only the two "
-"enhanced generators (<xref
linkend=\"mapping-declaration-id-enhanced\"/> "
+"enhanced generators (<xref linkend=\"mapping-declaration-id-enhanced\"
/> "
"support this operation."
msgstr ""
-"For identifier generators which store values in the database, it is "
-"inefficient for them to hit the database on each and every call to generate "
-"a new identifier value. Instead, you'd ideally want to group a bunch of them
"
-"in memory and only hit the database when you have exhausted your in-memory "
-"value group. This is the role of the pluggable optimizers. Currently only "
-"the two enhanced generators (<xref
linkend=\"mapping-declaration-id-enhanced"
-"\"/> support this notion. <placeholder-1/>"
#. Tag: para
-#: basic_mapping.xml:931
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>none</literal> (generally this is the default if no optimizer
was "
"specified): this will not perform any optimizations and hit the database for
"
"each and every request."
msgstr ""
-"<literal>none</literal> (generally this is the default if no optimizer
was "
-"specified): This says to not perform any optimizations, and hit the database
"
-"each and every request."
#. Tag: para
-#: basic_mapping.xml:937
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>hilo</literal>: applies a hi/lo algorithm around the database
"
"retrieved values. The values from the database for this optimizer are "
@@ -1880,16 +1395,9 @@
"<literal>increment_size</literal> is multiplied by that value in memory
to "
"define a group \"hi value\"."
msgstr ""
-"<literal>hilo</literal>: applies a hi/lo algorithm around the database
"
-"retrieved values. The values from the database for this optimizer are "
-"expected to be sequential. The values retrieved from the database structure "
-"for this optimizer indicates the \"group number\"; the "
-"<literal>increment_size</literal> is multiplied by that value in memory
to "
-"define a group \"hi value\"."
#. Tag: para
-#: basic_mapping.xml:946
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>pooled</literal>: as with the case of
<literal>hilo</literal>, this "
"optimizer attempts to minimize the number of hits to the database. Here, "
@@ -1898,66 +1406,28 @@
"memory grouping algorithm. Here, <literal>increment_size</literal>
refers to "
"the values coming from the database."
msgstr ""
-"<literal>pooled</literal>: like was discussed for
<literal>hilo</literal>, "
-"this optimizers attempts to minimize the number of hits to the database. "
-"Here, however, we simply store the starting value for the \"next group\"
"
-"into the database structure rather than a sequential value in combination "
-"with an in-memory grouping algorithm. <literal>increment_size</literal>
here "
-"refers to the values coming from the database."
#. Tag: title
-#: basic_mapping.xml:959
#, no-c-format
msgid "composite-id"
msgstr "composite-id"
-#. Tag: programlisting
-#: basic_mapping.xml:961
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<composite-id\n"
-" name=\"propertyName\"\n"
-" class=\"ClassName\"\n"
-" mapped=\"true|false\"\n"
-" access=\"field|property|ClassName\">\n"
-" node=\"element-name|.\"\n"
-"\n"
-" <key-property name=\"propertyName\"
type=\"typename\" column="
-"\"column_name\"/>\n"
-" <key-many-to-one name=\"propertyName class=\"ClassName\"
column="
-"\"column_name\"/>\n"
-" ......\n"
-"</composite-id>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:963
-#, fuzzy, no-c-format
-msgid ""
"A table with a composite key can be mapped with multiple properties of the "
"class as identifier properties. The
<literal><composite-id></literal> "
"element accepts <literal><key-property></literal>
property mappings "
"and <literal><key-many-to-one></literal> mappings as
child elements."
msgstr ""
-"複合キーのあるテーブルに対し、 識別子プロパティとしてクラスの複数のプロパティ"
+"複合キーのあるテーブルに対し、識別子プロパティとしてクラスの複数のプロパティ"
"をマッピングすることができます。 <literal><composite-id></literal>
要素"
"は、子要素として <literal><key-property></literal>
プロパティマッピング"
"と <literal><key-many-to-one></literal>
マッピングを受け入れます。"
-#. Tag: programlisting
-#: basic_mapping.xml:970
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<composite-id>\n"
-" <key-property name=\"medicareNumber\"/>\n"
-" <key-property name=\"dependent\"/>\n"
-"</composite-id>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:972
-#, fuzzy, no-c-format
-msgid ""
"The persistent class <emphasis>must</emphasis> override
<literal>equals()</"
"literal> and <literal>hashCode()</literal> to implement composite
identifier "
"equality. It must also implement
<literal>Serializable</literal>."
@@ -1968,8 +1438,7 @@
"ればいけません。"
#. Tag: para
-#: basic_mapping.xml:978
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Unfortunately, this approach means that a persistent object is its own "
"identifier. There is no convenient \"handle\" other than the object
itself. "
@@ -1979,15 +1448,14 @@
"<emphasis>embedded</emphasis> composite identifier, and discourage it
for "
"serious applications."
msgstr ""
-"残念ながら複合識別子のためのこの方法は、 永続オブジェクトが自身の識別子である"
-"ことを意味しています。 オブジェクト自身を識別子とする以上の便利な「扱い方」は"
-"ありません。 複合キーに関連した永続状態を <literal>load()</literal> 出来るよ"
-"うになる前に、 永続クラス自身をインスタンス化し、識別子プロパティを設定しなけ"
-"ればなりません。 <emphasis> 組み込みの</emphasis> 複合識別子と呼ばれるこのア"
-"プローチは、 本格的なアプリケーションには向いていません。"
+"残念ながら複合識別子のためのこの方法は、永続オブジェクトが自身の識別子である"
+"ことを意味しています。オブジェクト自身を識別子とする以外に便利な「扱い方」は"
+"ありません。複合キーに関連した永続状態を <literal>load()</literal> 出来るよう"
+"になる前に、永続クラス自身をインスタンス化し、識別子プロパティを設定しなけれ"
+"ばなりません。 <emphasis> 組み込みの</emphasis> 複合識別子と呼ばれるこのアプ"
+"ローチは、本格的なアプリケーションには向いていません。"
#. Tag: para
-#: basic_mapping.xml:987
#, no-c-format
msgid ""
"A second approach is what we call a <emphasis>mapped</emphasis>
composite "
@@ -1995,24 +1463,13 @@
"composite-id></literal> element are duplicated on both the persistent
"
"class and a separate identifier class."
msgstr ""
-"2つ目の方法は <emphasis> マップされた</emphasis> 複合識別子と呼ばれるもの"
-"で、
<literal><composite-id></literal>エレメント内で指定した識別プロパ"
-"ティが 永続クラスと分離した識別子クラスの両方に重複して存在します。"
+"2つ目の方法は <emphasis>マップされた</emphasis> 複合識別子と呼ばれるもので、 "
+"<literal><composite-id></literal>エレメント内で指定した識別プロパティが"
+"永続クラスと分離した識別子クラスの両方に重複して存在します。"
-#. Tag: programlisting
-#: basic_mapping.xml:993
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<composite-id class=\"MedicareId\"
mapped=\"true\">\n"
-" <key-property name=\"medicareNumber\"/>\n"
-" <key-property name=\"dependent\"/>\n"
-"</composite-id>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:995
-#, fuzzy, no-c-format
-msgid ""
"In this example, both the composite identifier class,
<literal>MedicareId</"
"literal>, and the entity class itself have properties named "
"<literal>medicareNumber</literal> and
<literal>dependent</literal>. The "
@@ -2022,21 +1479,19 @@
msgstr ""
"この例では、複合識別子クラス( <literal>MedicareId</literal> )とエンティティ"
"クラス自身の両方が、 <literal>medicareNumber</literal> と "
-"<literal>dependent</literal> という名前のプロパティを持ちます。 識別子クラス"
-"は、<literal>equals()</literal> と
<literal>hashCode()</literal> をオーバライ"
-"ドし、 <literal>Serializable</literal> を実装しなくてはなりません。 この方法"
+"<literal>dependent</literal> という名前のプロパティを持ちます。識別子クラス"
+"は、 <literal>equals()</literal> と
<literal>hashCode()</literal> をオーバラ"
+"イドし、 <literal>Serializable</literal> を実装しなくてはなりません。この方法"
"には、明らかにコードが重複するという不都合があります。"
#. Tag: para
-#: basic_mapping.xml:1004
#, no-c-format
msgid ""
"The following attributes are used to specify a mapped composite identifier:"
-msgstr "次の属性はマッピングした複合識別子を指定するために使用します。"
+msgstr "次の属性はマッピングした複合識別子を指定するために使用します:"
#. Tag: para
-#: basic_mapping.xml:1010
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>mapped</literal> (optional - defaults to
<literal>false</literal>): "
"indicates that a mapped composite identifier is used, and that the contained
"
@@ -2045,83 +1500,51 @@
msgstr ""
"<literal>mapped</literal> (オプション、デフォルトは
<literal>false</"
"literal> ): マッピングした複合識別子が使用されることと、包含されたプロパティ"
-"のマッピングが、 エンティティクラスと複合識別子クラスの両方を参照することを示"
+"のマッピングが、エンティティクラスと複合識別子クラスの両方を参照することを示"
"します。"
#. Tag: para
-#: basic_mapping.xml:1018
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>class</literal> (optional - but required for a mapped
composite "
"identifier): the class used as a composite identifier."
msgstr ""
-"<literal>class</literal> (オプション,ただしマッピングした複合識別子には必"
+"<literal>class</literal> (オプション、ただしマッピングした複合識別子には必"
"須): 複合識別子として使用するクラス。"
#. Tag: para
-#: basic_mapping.xml:1025
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"We will describe a third, even more convenient approach, where the composite
"
"identifier is implemented as a component class in <xref
linkend=\"components-"
-"compositeid\"/>. The attributes described below apply only to this "
+"compositeid\" />. The attributes described below apply only to this "
"alternative approach:"
msgstr ""
-"3つ目のさらに便利な方法は、複合識別子を<xref linkend=\"components-compositeid"
-"\"/>内の コンポーネントクラスとして実装することです。 下で記述している属性"
-"は、この代替方法にのみ適用されます。"
+"3つ目のさらに便利な方法は、複合識別子を <xref linkend=\"components-"
+"compositeid\"/> のコンポーネントクラスとして実装することです。下で記述してい"
+"る属性は、この代替方法にのみ適用されます:"
#. Tag: para
-#: basic_mapping.xml:1033
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>name</literal> (optional - required for this approach): a
property "
"of component type that holds the composite identifier. Please see chapter 9 "
"for more information."
msgstr ""
-"<literal>name</literal> (オプション, このアプローチでは必須): 複合識別子を保"
-"持するコンポーネントタイプのプロパティ(9章を参照してください)."
+"<literal>name</literal> (オプション、このアプローチでは必須): 複合識別子を保"
+"持するコンポーネントタイプのプロパティ(9章を参照してください)。"
#. Tag: para
-#: basic_mapping.xml:1039 basic_mapping.xml:1260 basic_mapping.xml:1372
-#: basic_mapping.xml:1561 basic_mapping.xml:1735 basic_mapping.xml:1905
-#: basic_mapping.xml:2484
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>access</literal> (optional - defaults to
<literal>property</"
"literal>): the strategy Hibernate uses for accessing the property value."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へアクセスするためにHibernateが使う戦略です。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): Hibernateがプロパティの値にアクセスするために使用すべき戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。"
+"literal> ): Hibernate がプロパティの値にアクセスするために使用すべき戦略。"
#. Tag: para
-#: basic_mapping.xml:1045
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>class</literal> (optional - defaults to the property type
"
"determined by reflection): the component class used as a composite "
@@ -2132,24 +1555,21 @@
"節を見てください)。"
#. Tag: para
-#: basic_mapping.xml:1052
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The third approach, an <emphasis>identifier component</emphasis>, is
"
"recommended for almost all applications."
msgstr ""
-"この3つ目の方法は <emphasis> 識別子コンポーネント</emphasis> と呼び、 ほとん"
-"どすべてのアプリケーションに対して推奨する方法です。"
+"この3つ目の方法は <emphasis> 識別子コンポーネント</emphasis> と呼び、ほとんど"
+"すべてのアプリケーションに対して推奨する方法です。"
#. Tag: title
-#: basic_mapping.xml:1060
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Discriminator"
msgstr "discriminator"
#. Tag: para
-#: basic_mapping.xml:1062
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal><discriminator></literal> element is
required for "
"polymorphic persistence using the table-per-class-hierarchy mapping "
@@ -2161,32 +1581,18 @@
"<literal>boolean</literal>, <literal>yes_no</literal>,
<literal>true_false</"
"literal>."
msgstr ""
-"<literal><discriminator></literal> 要素は、
table-per-class-hierarchy"
-"マッピング戦略を使うポリモーフィックな永続化に必要であり、 テーブルの識別カラ"
-"ムを定義します。 識別カラムは、ある行に対して永続層がどのサブクラスをインスタ"
-"ンス化するかを 伝えるマーカー値を含んでいます。 以下のような型に制限されま"
-"す: <literal>string</literal> , <literal>character</literal>
, "
-"<literal>integer</literal>, <literal>byte</literal> ,
<literal>short</"
-"literal> , <literal>boolean</literal> ,
<literal>yes_no</literal> , "
+"<literal><discriminator></literal> 要素は、
table-per-class-hierarchy "
+"マッピング戦略を使うポリモーフィックな永続化に必要であり、テーブルの識別カラ"
+"ムを定義します。識別カラムは、ある行に対して永続層がどのサブクラスをインスタ"
+"ンス化するかを伝えるマーカー値を含んでいます。以下のような型に制限されます: "
+"<literal>string</literal> , <literal>character</literal> ,
<literal>integer</"
+"literal>, <literal>byte</literal> ,
<literal>short</literal> , "
+"<literal>boolean</literal> , <literal>yes_no</literal> ,
"
"<literal>true_false</literal>."
-#. Tag: programlisting
-#: basic_mapping.xml:1080
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<discriminator\n"
-" column=\"discriminator_column\"\n"
-" type=\"discriminator_type\"\n"
-" force=\"true|false\"\n"
-" insert=\"true|false\"\n"
-" formula=\"arbitrary sql expression\"\n"
-"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1083
-#, fuzzy, no-c-format
-msgid ""
"<literal>column</literal> (optional - defaults to
<literal>class</literal>): "
"the name of the discriminator column."
msgstr ""
@@ -2194,18 +1600,16 @@
"literal> ): 識別カラムの名前。"
#. Tag: para
-#: basic_mapping.xml:1089
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>type</literal> (optional - defaults to
<literal>string</literal>): "
"a name that indicates the Hibernate type"
msgstr ""
"<literal>type</literal> (オプション - デフォルトは
<literal>string</"
-"literal> ):Hibernateの型を示す名前。"
+"literal> ): Hibernate の型を示す名前。"
#. Tag: para
-#: basic_mapping.xml:1095
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>force</literal> (optional - defaults to
<literal>false</literal>): "
"\"forces\" Hibernate to specify the allowed discriminator values, even
when "
@@ -2213,11 +1617,10 @@
msgstr ""
"<literal>force</literal> (オプション - デフォルトは
<literal>false</"
"literal> ): ルートクラスのすべてのインスタンスを検索する場合であっても、 "
-"Hibernateが使用できる識別カラムの指定を「強制」します。"
+"Hibernate が使用できる識別カラムの指定を「強制」します。"
#. Tag: para
-#: basic_mapping.xml:1102
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>insert</literal> (optional - defaults to
<literal>true</literal>): "
"set this to <literal>false</literal> if your discriminator column is
also "
@@ -2225,23 +1628,21 @@
"column in SQL <literal>INSERTs</literal>."
msgstr ""
"<literal>insert</literal> (オプション - デフォルトは
<literal>true</"
-"literal> ): もし識別カラムがマッピングする複合識別子の一部ならば、"
-"<literal>false</literal> と設定してください。 (HibernateにSQLの "
-"<literal>INSERT</literal> には含まれないことを知らせる)"
+"literal> ): もし識別カラムがマッピングする複合識別子の一部ならば、 "
+"<literal>false</literal> と設定してください。 (Hibernate に SQL の "
+"<literal>INSERT</literal> 内のカラムを含ませないよう伝えます。)"
#. Tag: para
-#: basic_mapping.xml:1110
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>formula</literal> (optional): an arbitrary SQL expression that
is "
"executed when a type has to be evaluated. It allows content-based "
"discrimination."
msgstr ""
-"<literal>formula</literal> (オプション)型が評価されるときに実行される任意の"
-"SQL式。 コンテンツベースの識別を可能にします。"
+"<literal>formula</literal> (オプション) 型が評価されるときに実行される任意の "
+"SQL 式。コンテンツベースの識別を可能にします。"
#. Tag: para
-#: basic_mapping.xml:1118
#, no-c-format
msgid ""
"Actual values of the discriminator column are specified by the "
@@ -2253,91 +1654,59 @@
"定されます。"
#. Tag: para
-#: basic_mapping.xml:1124
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>force</literal> attribute is only useful if the table
contains "
"rows with \"extra\" discriminator values that are not mapped to a
persistent "
"class. This will not usually be the case."
msgstr ""
-"永続クラスへマッピングされない「余分な」識別値を持つ行が テーブルにあれば、"
-"(そのときに限り)<literal>force</literal> 属性は有効です。 ただし、普通はそ"
-"ういうことはありません。"
+"永続クラスへマッピングされない「余分な」識別値を持つ行がテーブルにあれば、(そ"
+"のときに限り) <literal>force</literal> 属性は有効です。ただし、普通はそうい"
+"うことはありません。"
#. Tag: para
-#: basic_mapping.xml:1130
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>formula</literal> attribute allows you to declare an
arbitrary "
"SQL expression that will be used to evaluate the type of a row. For example:"
msgstr ""
-"<literal>formula</literal> 属性を使うと、行の型を評価するために任意のSQL式を"
-"宣言できます。"
+"<literal>formula</literal> 属性を使うと、行の型を評価するために任意の SQL 式"
+"を宣言できます:"
-#. Tag: programlisting
-#: basic_mapping.xml:1135
-#, no-c-format
-msgid ""
-"<![CDATA[<discriminator\n"
-" formula=\"case when CLASS_TYPE in ('a', 'b', 'c')
then 0 else 1 end\"\n"
-" type=\"integer\"/>]]>"
-msgstr ""
-
#. Tag: title
-#: basic_mapping.xml:1140
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Version (optional)"
msgstr "version(オプション)"
#. Tag: para
-#: basic_mapping.xml:1142
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal><version></literal> element is optional and
indicates "
"that the table contains versioned data. This is particularly useful if you "
"plan to use <emphasis>long transactions</emphasis>. See below for more
"
"information:"
msgstr ""
-"<literal><version></literal> 要素はオプションであり、 テーブルがバー"
-"ジョンデータを含むことを示します。 これは <emphasis>ロングトランザクション</"
-"emphasis> を使うつもりなら、特に役立ちます(以下を見てください)。"
+"<literal><version></literal> 要素はオプションであり、テーブルがバージョ"
+"ンデータを含むことを示します。これは <emphasis>ロングトランザクション</"
+"emphasis> を使うつもりなら、特に役立ちます(以下を参照してください)。"
-#. Tag: programlisting
-#: basic_mapping.xml:1158
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<version\n"
-" column=\"version_column\"\n"
-" name=\"propertyName\"\n"
-" type=\"typename\"\n"
-" access=\"field|property|ClassName\"\n"
-" unsaved-value=\"null|negative|undefined\"\n"
-" generated=\"never|always\"\n"
-" insert=\"true|false\"\n"
-"
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
-"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1161
-#, fuzzy, no-c-format
-msgid ""
"<literal>column</literal> (optional - defaults to the property name):
the "
"name of the column holding the version number."
msgstr ""
-"<literal>column</literal>(オプション - デフォルトはプロパティ名): バージョ"
+"<literal>column</literal> (オプション - デフォルトはプロパティ名): バージョ"
"ン番号を保持するカラムの名前。"
#. Tag: para
-#: basic_mapping.xml:1167
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>name</literal>: the name of a property of the persistent
class."
msgstr "<literal>name</literal> :永続クラスのプロパティの名前。"
#. Tag: para
-#: basic_mapping.xml:1172
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>type</literal> (optional - defaults to
<literal>integer</literal>): "
"the type of the version number."
@@ -2346,42 +1715,15 @@
"literal> ):バージョン番号の型。"
#. Tag: para
-#: basic_mapping.xml:1178
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>access</literal> (optional - defaults to
<literal>property</"
"literal>): the strategy Hibernate uses to access the property value."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へアクセスするためにHibernateが使う戦略です。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): Hibernateがプロパティの値にアクセスするために使用すべき戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>access</literal>(オプション - デフォルトは
<literal>property</"
-"literal> ): プロパティの値へのアクセスにHibernateが使う戦略。"
+"literal> ): Hibernate がプロパティの値にアクセスするために使用すべき戦略。"
#. Tag: para
-#: basic_mapping.xml:1184
#, fuzzy, no-c-format
msgid ""
"<literal>unsaved-value</literal> (optional - defaults to
<literal>undefined</"
@@ -2392,28 +1734,26 @@
msgstr ""
"<literal>unsaved-value</literal> (オプション - デフォルトは "
"<literal>undefined</literal> ): インスタンスが新しくインスタンス化されたこ"
-"とを示す (セーブされていないことを示す)バージョンプロパティの値。 以前の"
-"Sessionでセーブまたはロードされた一時的なインスタンスと区別するために 使いま"
-"す。 ( <literal>undefined</literal> は識別子プロパティの値が使われることを指"
-"定します。)"
+"とを示す (セーブされていないことを示す) バージョンプロパティの値。以前の "
+"Session でセーブまたはロードされた分離インスタンスと区別するために使います。 "
+"( <literal>undefined</literal> は識別子プロパティの値が使われることを指定し"
+"ます。)"
#. Tag: para
-#: basic_mapping.xml:1193
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>generated</literal> (optional - defaults to
<literal>never</"
"literal>): specifies that this version property value is generated by the
"
-"database. See the discussion of <link linkend=\"mapping-generated"
-"\">generated properties</link> for more information."
+"database. See the discussion of generated properties for more information "
+"(<xref linkend=\"mapping-generated\" />)."
msgstr ""
"<literal>generated</literal> (オプション - デフォルトは
<literal>never</"
"literal> ): このバージョンのプロパティの値が、データベースによって生成された"
-"ことを指定します。 <xref linkend=\"mapping-generated\">生成プロパティ</xref>
"
-"の議論を見てください。"
+"ことを指定します。<xref linkend=\"mapping-generated\"/> 生成プロパティの議論"
+"を参照してください。"
#. Tag: para
-#: basic_mapping.xml:1200
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>insert</literal> (optional - defaults to
<literal>true</literal>): "
"specifies whether the version column should be included in SQL insert "
@@ -2421,24 +1761,22 @@
"is defined with a default value of <literal>0</literal>."
msgstr ""
"<literal>insert</literal> (オプション - デフォルトは
<literal>true</"
-"literal> ): SQLのinsert文にバージョン・カラムを含めるべきかどうかを指定しま"
-"す。 もしデータベース・カラムのデフォルト値が <literal>0</literal> と定義され"
-"るときには、 <literal>false</literal> に設定すると良いでしょう。"
+"literal> ): SQLの insert 文にバージョンカラムを含めるべきかどうかを指定しま"
+"す。もしデータベースカラムのデフォルト値が <literal>0</literal> と定義される"
+"ときには、 <literal>false</literal> に設定すると良いでしょう。"
#. Tag: para
-#: basic_mapping.xml:1210
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Version numbers can be of Hibernate type <literal>long</literal>,
"
"<literal>integer</literal>, <literal>short</literal>,
<literal>timestamp</"
"literal> or <literal>calendar</literal>."
msgstr ""
-"バージョン番号は Hibernateの <literal>long</literal> ,
<literal>integer</"
-"literal> , <literal>short</literal> ,
<literal>timestamp</literal> , "
+"バージョン番号は Hibernate の <literal>long</literal> 、
<literal>integer</"
+"literal> 、 <literal>short</literal> 、
<literal>timestamp</literal> 、 "
"<literal>calendar</literal> 型のいずれかです。"
#. Tag: para
-#: basic_mapping.xml:1215
#, fuzzy, no-c-format
msgid ""
"A version or timestamp property should never be null for a detached "
@@ -2449,53 +1787,36 @@
"reattachment in Hibernate. It is especially useful for people using assigned
"
"identifiers or composite keys</emphasis>."
msgstr ""
-"バージョンやタイムスタンプのプロパティは、分離されたインスタンスに対してnull"
-"であってはなりません。 そのためどのような <literal>unsaved-value</literal> 戦"
-"略が指定されても、 Hibernateはnullのバージョンやタイムスタンプを持ったすべて"
-"のインスタンスを、 一時的なものであると判断します。 <emphasis> nullを許容する"
-"バージョンやタイムスタンプのプロパティを定義することは、 過渡的に一時オブジェ"
-"クトとすることを防ぐ簡単な方法です。 特に識別子の割り当てや複合キーを使用して"
-"いるときには特に有用です。</emphasis>"
+"バージョンやタイムスタンプのプロパティは、分離されたインスタンスに対して "
+"null であってはなりません。そのためどのような <literal>unsaved-value</"
+"literal> 戦略が指定されても、 Hibernate は null のバージョンやタイムスタンプ"
+"を持ったすべてのインスタンスを、一時的なものであると判断します。 <emphasis> "
+"null を許容するバージョンやタイムスタンプのプロパティを定義することは、 "
+"Hibernate において過渡的に一時オブジェクトとすることを防ぐ簡単な方法です。特"
+"に識別子の割り当てや複合キーを使用しているときには特に有用です。</emphasis>"
#. Tag: title
-#: basic_mapping.xml:1226
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Timestamp (optional)"
msgstr "timestamp(オプション)"
#. Tag: para
-#: basic_mapping.xml:1228
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The optional <literal><timestamp></literal> element
indicates that the "
"table contains timestamped data. This provides an alternative to versioning.
"
"Timestamps are a less safe implementation of optimistic locking. However, "
"sometimes the application might use the timestamps in other ways."
msgstr ""
-"オプションの <literal><timestamp></literal> 要素は、
テーブルがタイムス"
-"タンプデータを含むことを示します。 これはバージョン付けの代わりの方法として用"
-"意されています。 タイムスタンプはもともと楽観的ロックにおける安全性の低い実装"
-"です。 しかしアプリケーションは異なる用途で使うこともあるかもしれません。"
+"オプションの <literal><timestamp></literal>
要素は、テーブルがタイムス"
+"タンプデータを含むことを示します。これはバージョン付けの代わりの方法として用"
+"意されています。タイムスタンプはもともと楽観的ロックにおける安全性の低い実装"
+"です。しかしアプリケーションはタイムスタンプを異なる用途で使うこともあるかも"
+"しれません。"
-#. Tag: programlisting
-#: basic_mapping.xml:1244
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<timestamp\n"
-" column=\"timestamp_column\"\n"
-" name=\"propertyName\"\n"
-" access=\"field|property|ClassName\"\n"
-" unsaved-value=\"null|undefined\"\n"
-" source=\"vm|db\"\n"
-" generated=\"never|always\"\n"
-"
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
-"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1247
-#, fuzzy, no-c-format
-msgid ""
"<literal>column</literal> (optional - defaults to the property name):
the "
"name of a column holding the timestamp."
msgstr ""
@@ -2503,20 +1824,18 @@
"タンプを保持するカラムの名前。"
#. Tag: para
-#: basic_mapping.xml:1253
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>name</literal>: the name of a JavaBeans style property of Java
type "
"<literal>Date</literal> or <literal>Timestamp</literal> of
the persistent "
"class."
msgstr ""
-"<literal>name</literal> : 永続クラスであるJava の
<literal>Date</literal>型 "
-"または <literal>Timestamp</literal> 型 の、JavaBeansスタイルプロパティの名"
+"<literal>name</literal> : 永続クラスである Java の
<literal>Date</literal>型"
+"または <literal>Timestamp</literal> 型 の、 JavaBeans スタイルプロパティの名"
"前。"
#. Tag: para
-#: basic_mapping.xml:1266
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>unsaved-value</literal> (optional - defaults to
<literal>null</"
"literal>): a version property value that indicates that an instance is newly
"
@@ -2526,13 +1845,12 @@
msgstr ""
"<literal>unsaved-value</literal> (オプション - デフォルトは
<literal>null</"
"literal> ): インスタンスが新しくインスタンス化された (セーブされていない)"
-"ことを示すバージョンプロパティの値。 以前のSessionでセーブまたはロードされた"
-"一時的なインスタンスと 区別するために使われます。 ( <literal>undefined</"
-"literal> と指定すると、 識別子プロパティの値が使われます。)"
+"ことを示すバージョンプロパティの値。以前の Session でセーブまたはロードされた"
+"分離されたインスタンスと区別するために使われます。 ( <literal>undefined</"
+"literal> と指定すると、識別子プロパティの値が使われます。)"
#. Tag: para
-#: basic_mapping.xml:1275
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>source</literal> (optional - defaults to
<literal>vm</literal>): "
"Where should Hibernate retrieve the timestamp value from? From the database,
"
@@ -2544,38 +1862,35 @@
"precision (Oracle 8, for example)."
msgstr ""
"<literal>source</literal> (オプション - デフォルトは <literal>vm</"
-"literal> ): Hibernateはどこからタイムスタンプの値を取得するべきでしょうか? "
-"データベースからでしょうか、現在のJVMからでしょうか? データベースによるタイ"
-"ムスタンプは、Hibernateが\"次の値\"を決定するために データベースをヒットしな"
-"ければならないため、オーバヘッドを招きます。 しかしクラスタ環境ではJVMから取"
-"得するより安全です。 データベースの現在のタイムスタンプの取得をサポートする "
-"すべての <literal>データベース方言</literal> が知られているわけではないこと"
-"に 注意してください。また一方で、精密さを欠くために、 ロックで使用するには安"
-"全でないものもあります(例えばOracle 8)。"
+"literal> ): Hibernate はどこからタイムスタンプの値を取得するべきでしょうか?"
+"データベースからでしょうか、現在の JVM からでしょうか?データベースによるタイ"
+"ムスタンプは、 Hibernate が \"次の値\" を決定するためにデータベースをヒットし"
+"なければならないため、オーバヘッドを招きます。しかしクラスタ環境では JVM から"
+"取得するより安全です。データベースの現在のタイムスタンプの取得をサポートする"
+"すべての <literal>Dialect</literal> が知られているわけではないことに注意して"
+"ください。また一方で、精密さを欠くために、ロックで使用するには安全でないもの"
+"もあります (例えば Oracle 8 )。"
#. Tag: para
-#: basic_mapping.xml:1287
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>generated</literal> (optional - defaults to
<literal>never</"
"literal>): specifies that this timestamp property value is actually "
-"generated by the database. See the discussion of <link
linkend=\"mapping-"
-"generated\">generated properties</link> for more information."
+"generated by the database. See the discussion of generated properties for "
+"more information (<xref linkend=\"mapping-generated\" />)."
msgstr ""
"<literal>generated</literal> (オプション - デフォルトは
<literal>never</"
-"literal> ): このタイムスタンプ・プロパティの値が、データベースによって生成さ"
-"れることを指定します。 <xref linkend=\"mapping-generated\">生成プロパティ</"
-"xref> を参照してください。"
+"literal> ): このタイムスタンプのプロパティの値が、データベースによって生成さ"
+"れることを指定します。 <xref linkend=\"mapping-generated\"/> 生成プロパティを"
+"参照してください。"
#. Tag: title
-#: basic_mapping.xml:1298 basic_mapping.xml:2890
#, no-c-format
msgid "Note"
-msgstr ""
+msgstr "注記"
#. Tag: para
-#: basic_mapping.xml:1299
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal><Timestamp></literal> is equivalent to
<literal><version "
"type=\"timestamp\"></literal>. And
<literal><timestamp source=\"db"
@@ -2588,70 +1903,39 @@
"</literal> と等価であることに注意してください。"
#. Tag: title
-#: basic_mapping.xml:1311
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Property"
msgstr "property"
#. Tag: para
-#: basic_mapping.xml:1313
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal><property></literal> element declares a
persistent "
"JavaBean style property of the class."
msgstr ""
-"<literal><property></literal>
要素は、クラスの永続的なJavaBeanスタイル"
-"のプロパティを定義します。"
+"<literal><property></literal> 要素は、クラスの永続的な JavaBean
スタイ"
+"ルのプロパティを定義します。"
-#. Tag: programlisting
-#: basic_mapping.xml:1335
-#, no-c-format
-msgid ""
-"<![CDATA[<property\n"
-" name=\"propertyName\"\n"
-" column=\"column_name\"\n"
-" type=\"typename\"\n"
-" update=\"true|false\"\n"
-" insert=\"true|false\"\n"
-" formula=\"arbitrary SQL expression\"\n"
-" access=\"field|property|ClassName\"\n"
-" lazy=\"true|false\"\n"
-" unique=\"true|false\"\n"
-" not-null=\"true|false\"\n"
-" optimistic-lock=\"true|false\"\n"
-" generated=\"never|insert|always\"\n"
-"
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
-" index=\"index_name\"\n"
-" unique_key=\"unique_key_id\"\n"
-" length=\"L\"\n"
-" precision=\"P\"\n"
-" scale=\"S\"\n"
-"/>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:1338
#, no-c-format
msgid ""
"<literal>name</literal>: the name of the property, with an initial
lowercase "
"letter."
-msgstr "<literal>name</literal>:小文字で始まるプロパティ名。"
+msgstr "<literal>name</literal>: 小文字で始まるプロパティ名。"
#. Tag: para
-#: basic_mapping.xml:1344
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>column</literal> (optional - defaults to the property name):
the "
"name of the mapped database table column. This can also be specified by "
"nested <literal><column></literal> element(s)."
msgstr ""
"<literal>column</literal>(オプション - デフォルトはプロパティ名): マッピン"
-"グされたデータベーステーブルのカラムの名前。 ネストした <literal><"
+"グされたデータベーステーブルのカラムの名前。ネストした <literal><"
"column></literal> 要素でも指定できます。"
#. Tag: para
-#: basic_mapping.xml:1356
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>update, insert</literal> (optional - defaults to
<literal>true</"
"literal>): specifies that the mapped columns should be included in SQL "
@@ -2661,14 +1945,13 @@
"column(s), or by a trigger or other application."
msgstr ""
"<literal>update, insert</literal> (オプション - デフォルトは
<literal>true</"
-"literal> ): マッピングされたカラムがSQLの <literal>UPDATE</literal> や "
-"<literal>INSERT</literal> に含まれることを指定します。 両方とも "
-"<literal>false</literal> に設定すると、 同じカラムにマッピングされた他のプロ"
-"パティやトリガや 他のアプリケーションによって初期化された純粋な「導出」プロパ"
+"literal> ): マッピングされたカラムが SQL の <literal>UPDATE</literal> や "
+"<literal>INSERT</literal> に含まれることを指定します。両方とも "
+"<literal>false</literal> に設定すると、同じカラムにマッピングされた他のプロパ"
+"ティやトリガや他のアプリケーションによって初期化された純粋な「導出」プロパ"
"ティが可能になります。"
#. Tag: para
-#: basic_mapping.xml:1365
#, no-c-format
msgid ""
"<literal>formula</literal> (optional): an SQL expression that defines
the "
@@ -2676,46 +1959,42 @@
"not have a column mapping of their own."
msgstr ""
"<literal>formula</literal>(オプション): <emphasis>計算</emphasis>
プロパ"
-"ティのための値を定義するSQL式。 計算されたプロパティは自身のカラムへのマッピ"
+"ティのための値を定義する SQL 式。計算されたプロパティは自身のカラムへのマッピ"
"ングがありません。"
#. Tag: para
-#: basic_mapping.xml:1378
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>lazy</literal> (optional - defaults to
<literal>false</literal>): "
"specifies that this property should be fetched lazily when the instance "
"variable is first accessed. It requires build-time bytecode instrumentation."
msgstr ""
-"<literal>lazy</literal> (optional - デフォルトは
<literal>false</literal> ): "
-"インスタンス変数に最初にアクセスしたときに、プロパティを遅延して取得するよう"
-"指定します。 (バイトコード実装を作成する時間が必要になります)。"
+"<literal>lazy</literal> (オプション - デフォルトは
<literal>false</"
+"literal> ): インスタンス変数に最初にアクセスしたときに、プロパティを遅延して"
+"取得するよう指定します。 (バイトコード実装を作成する時間が必要になります)。"
#. Tag: para
-#: basic_mapping.xml:1385
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>unique</literal> (optional): enables the DDL generation of a
unique "
"constraint for the columns. Also, allow this to be the target of a "
"<literal>property-ref</literal>."
msgstr ""
-"<literal>unique</literal> (オプション):カラムにユニーク制約をつけるDDLの生成"
-"を可能にします。 また、<literal>property-ref</literal> のターゲットとすること"
-"もできます。"
+"<literal>unique</literal> (オプション):カラムにユニーク制約をつける DDL の生"
+"成を可能にします。また、 <literal>property-ref</literal> のターゲットとするこ"
+"ともできます。"
#. Tag: para
-#: basic_mapping.xml:1392
#, fuzzy, no-c-format
msgid ""
"<literal>not-null</literal> (optional): enables the DDL generation of a
"
"nullability constraint for the columns."
msgstr ""
-"<literal>not-null</literal> (オプション):カラムにnull値を許可するDDLの生成を"
-"可能にします。"
+"<literal>not-null</literal> (オプション):カラムに null 値を許可する DDL の生"
+"成を可能にします。"
#. Tag: para
-#: basic_mapping.xml:1398 basic_mapping.xml:1581
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>optimistic-lock</literal> (optional - defaults to
<literal>true</"
"literal>): specifies that updates to this property do or do not require "
@@ -2724,59 +2003,52 @@
msgstr ""
"<literal>optimistic-lock</literal> (オプション - デフォルトは
<literal>true</"
"literal> ): このプロパティの更新に楽観ロックの取得を要求するかどうかを指定し"
-"ます。 言い換えれば、このプロパティがダーティであるときにバージョンを増やすべ"
+"ます。言い換えれば、このプロパティがダーティであるときにバージョンを増やすべ"
"きかを決定します。"
#. Tag: para
-#: basic_mapping.xml:1406
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>generated</literal> (optional - defaults to
<literal>never</"
"literal>): specifies that this property value is actually generated by the
"
-"database. See the discussion of <link linkend=\"mapping-generated"
-"\">generated properties</link> for more information."
+"database. See the discussion of generated properties for more information "
+"(<xref linkend=\"mapping-generated\" />)."
msgstr ""
"<literal>generated</literal> (オプション - デフォルトは
<literal>never</"
"literal> ): プロパティの値が、データベースによって生成されたことを指定しま"
-"す。 <xref linkend=\"mapping-generated\">生成プロパティ</xref>
を参照してくだ"
-"さい。"
+"す。 <xref linkend=\"mapping-generated\"/> 生成プロパティを参照してください。"
#. Tag: para
-#: basic_mapping.xml:1415
#, no-c-format
msgid "<emphasis>typename</emphasis> could be:"
msgstr "<emphasis>typename</emphasis> には以下の値が可能です:"
#. Tag: para
-#: basic_mapping.xml:1421
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The name of a Hibernate basic type: <literal>integer, string, character,
"
"date, timestamp, float, binary, serializable, object, blob</literal>
etc."
msgstr ""
-"Hibernateの基本型の名前(例 <literal>integer, string, character, date, "
+"Hibernate の基本型の名前(例 <literal>integer, string, character, date, "
"timestamp, float, binary, serializable, object, blob</literal> )。"
#. Tag: para
-#: basic_mapping.xml:1427
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The name of a Java class with a default basic type: <literal>int, float,
"
"char, java.lang.String, java.util.Date, java.lang.Integer,
java.sql.Clob</"
"literal> etc."
msgstr ""
-"デフォルトの基本型のJavaクラス名 (例 <literal>int, float, char, java.lang."
+"デフォルトの基本型の Java クラス名 (例 <literal>int, float, char, java.lang."
"String, java.util.Date, java.lang.Integer, java.sql.Clob</literal> )。"
#. Tag: para
-#: basic_mapping.xml:1433
#, no-c-format
msgid "The name of a serializable Java class."
-msgstr "シリアライズ可能なJavaクラスの名前。"
+msgstr "シリアライズ可能な Java クラスの名前。"
#. Tag: para
-#: basic_mapping.xml:1438
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The class name of a custom type:
<literal>com.illflow.type.MyCustomType</"
"literal> etc."
@@ -2785,8 +2057,7 @@
"literal> )。"
#. Tag: para
-#: basic_mapping.xml:1444
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you do not specify a type, Hibernate will use reflection upon the named "
"property and guess the correct Hibernate type. Hibernate will attempt to "
@@ -2796,17 +2067,16 @@
"DATE</literal> and <literal>Hibernate.TIMESTAMP</literal>, or to
specify a "
"custom type."
msgstr ""
-"型を指定しなければ、Hibernateは正しいHibernateの型を推測するために、 指定され"
-"たプロパティに対してリフレクションを使います。 Hibernateはルール2, 3, 4をその"
-"順序に使い、 getterプロパティの返り値のクラスの名前を解釈しようとします。 し"
-"かしこれで常に十分であるとは限りません。 場合によっては、<literal>type</"
-"literal> 属性が必要な場合があります。 (例えば <literal>Hibernate.DATE</"
-"literal> と <literal>Hibernate.TIMESTAMP</literal> を区別するため、
またはカ"
-"スタム型を指定するためなどです。)"
+"型を指定しなければ、 Hibernate は正しい Hibernate の型を推測するために、指定"
+"されたプロパティに対してリフレクションを使います。 Hibernate はルール2, 3, 4"
+"をその順序に使い、 getter プロパティの返り値のクラスの名前を解釈しようとしま"
+"す。しかしこれで常に十分であるとは限りません。場合によっては、 "
+"<literal>type</literal> 属性が必要な場合があります。 (例えば "
+"<literal>Hibernate.DATE</literal> と
<literal>Hibernate.TIMESTAMP</literal> "
+"を区別するため、またはカスタム型を指定するためなどです。)"
#. Tag: para
-#: basic_mapping.xml:1454
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>access</literal> attribute allows you to control how
Hibernate "
"accesses the property at runtime. By default, Hibernate will call the "
@@ -2816,64 +2086,47 @@
"a class that implements the interface <literal>org.hibernate.property."
"PropertyAccessor</literal>."
msgstr ""
-"<literal>access</literal> 属性で、 実行時にHibernateがどのようにプロパティに"
-"アクセスするかを制御できます。 デフォルトではHibernateはプロパティのget/setの"
-"ペアをコールします。 <literal>access=\"field\"</literal> と指定すれば、
"
-"Hibernateはリフレクションを使いget/setのペアを介さずに、直接フィールドにアク"
-"セスします。 インターフェイス <literal>org.hibernate.property."
-"PropertyAccessor</literal> を 実装するクラスを指定することで、プロパティへの"
-"アクセスに独自の戦略を指定することができます。"
+"<literal>access</literal> 属性で、実行時に Hibernate がどのようにプロパティに"
+"アクセスするかを制御できます。デフォルトでは Hibernate はプロパティの get/"
+"set のペアをコールします。 <literal>access=\"field\"</literal>
と指定すれ"
+"ば、 Hibernate はリフレクションを使い get/set のペアを介さずに、直接フィール"
+"ドにアクセスします。インターフェース <literal>org.hibernate.property."
+"PropertyAccessor</literal> を実装するクラスを指定することで、プロパティへのア"
+"クセスに独自の戦略を指定することができます。"
#. Tag: para
-#: basic_mapping.xml:1463
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A powerful feature is derived properties. These properties are by definition
"
"read-only. The property value is computed at load time. You declare the "
"computation as an SQL expression. This then translates to a
<literal>SELECT</"
"literal> clause subquery in the SQL query that loads an instance:"
msgstr ""
-"特に強力な特徴は生成プロパティです。 これらのプロパティは当然読み取り専用であ"
-"り、プロパティの値はロード時に計算されます。 計算をSQL式として宣言すると、こ"
-"のプロパティは インスタンスをロードするSQLクエリの <literal>SELECT</literal> "
-"句のサブクエリに変換されます。"
+"特に強力な特徴は生成プロパティです。これらのプロパティは当然読み取り専用であ"
+"り、プロパティの値はロード時に計算されます。計算を SQL 式として宣言すると、こ"
+"のプロパティはインスタンスをロードする SQL クエリの <literal>SELECT</"
+"literal> 句のサブクエリに変換されます:"
-#. Tag: programlisting
-#: basic_mapping.xml:1470
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[\n"
-"<property name=\"totalPrice\"\n"
-" formula=\"( SELECT SUM (li.quantity*p.price) FROM LineItem li, Product
"
-"p\n"
-" WHERE li.productId = p.productId\n"
-" AND li.customerId = customerId\n"
-" AND li.orderNumber = orderNumber )\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1472
-#, fuzzy, no-c-format
-msgid ""
"You can reference the entity table by not declaring an alias on a particular
"
"column. This would be <literal>customerId</literal> in the given
example. "
"You can also use the nested <literal><formula></literal>
mapping "
"element if you do not want to use the attribute."
msgstr ""
"特定のカラム(例では <literal>customerId</literal> がそれにあたります)のエイリ"
-"アスを宣言することなく、 エンティティ自身のテーブルを参照できることに注意して"
-"ください。 もし属性を使用したくなければ、 ネストした <literal><formula>"
-"</literal> マッピング要素を使えることにも注意してください。"
+"アスを宣言することなく、エンティティ自身のテーブルを参照できることに注意して"
+"ください。もし属性を使用したくなければ、ネストした <literal><formula></"
+"literal> マッピング要素を使えることにも注意してください。"
#. Tag: title
-#: basic_mapping.xml:1482
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Many-to-one"
msgstr "many-to-one"
#. Tag: para
-#: basic_mapping.xml:1484
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An ordinary association to another persistent class is declared using a "
"<literal>many-to-one</literal> element. The relational model is a
many-to-"
@@ -2881,76 +2134,35 @@
"column(s) of the target table."
msgstr ""
"他の永続クラスへの通常の関連は <literal>many-to-one</literal> 要素を使って定"
-"義します。 リレーショナルモデルは多対一関連です。 つまりあるテーブルの外部"
-"キーは、ターゲットとなるテーブルの主キーカラムを参照しています。"
+"義します。リレーショナルモデルは多対一関連です。つまりあるテーブルの外部キー"
+"は、ターゲットとなるテーブルの主キーカラムを参照しています。"
-#. Tag: programlisting
-#: basic_mapping.xml:1512
-#, no-c-format
-msgid ""
-"<![CDATA[<many-to-one\n"
-" name=\"propertyName\"\n"
-" column=\"column_name\"\n"
-" class=\"ClassName\"\n"
-" cascade=\"cascade_style\"\n"
-" fetch=\"join|select\"\n"
-" update=\"true|false\"\n"
-" insert=\"true|false\"\n"
-" property-ref=\"propertyNameFromAssociatedClass\"\n"
-" access=\"field|property|ClassName\"\n"
-" unique=\"true|false\"\n"
-" not-null=\"true|false\"\n"
-" optimistic-lock=\"true|false\"\n"
-" lazy=\"proxy|no-proxy|false\"\n"
-" not-found=\"ignore|exception\"\n"
-" entity-name=\"EntityName\"\n"
-" formula=\"arbitrary SQL expression\"\n"
-"
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
-" embed-xml=\"true|false\"\n"
-" index=\"index_name\"\n"
-" unique_key=\"unique_key_id\"\n"
-" foreign-key=\"foreign_key_name\"\n"
-"/>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:1515 basic_mapping.xml:1696 basic_mapping.xml:1882
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>name</literal>: the name of the property."
msgstr "<literal>name</literal>:プロパティ名。"
#. Tag: para
-#: basic_mapping.xml:1520 basic_mapping.xml:2311
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>column</literal> (optional): the name of the foreign key
column. "
"This can also be specified by nested
<literal><column></literal> "
"element(s)."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>column</literal> (オプション):外部キーカラムの名前。 ネストした "
-"<literal><column></literal> 要素でも指定できます。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>column</literal> (オプション):外部キーカラムの名前。 ネストした "
+"<literal>column</literal> (オプション):外部キーカラムの名前。ネストした "
"<literal><column></literal> カラムによっても指定されます。"
#. Tag: para
-#: basic_mapping.xml:1527 basic_mapping.xml:1701
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>class</literal> (optional - defaults to the property type
"
"determined by reflection): the name of the associated class."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>class</literal>(オプション - デフォルトは、 リフレクションにより決"
-"定されるプロパティの型):関連クラスの名前。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"<literal>class</literal>(オプション - デフォルトはリフレクションにより決定さ"
"れるプロパティの型): 関連クラスの名前。"
#. Tag: para
-#: basic_mapping.xml:1533 basic_mapping.xml:1707
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>cascade</literal> (optional): specifies which operations
should be "
"cascaded from the parent object to the associated object."
@@ -2959,24 +2171,17 @@
"へ、どの操作をカスケードするかを指定します。"
#. Tag: para
-#: basic_mapping.xml:1539 basic_mapping.xml:1722
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>fetch</literal> (optional - defaults to
<literal>select</literal>): "
"chooses between outer-join fetching or sequential select fetching."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>fetch</literal> (オプション - デフォルトは
<literal>select</"
-"literal> ): 外部結合フェッチか順次選択フェッチ(sequential select fetch)を選"
-"択します。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"<literal>fetch</literal>(オプション - デフォルトは
<literal>select</"
"literal> ): 外部結合フェッチと順次選択フェッチ(sequential select fetch)の"
"どちらかを選択します。"
#. Tag: para
-#: basic_mapping.xml:1545
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>update, insert</literal> (optional - defaults to
<literal>true</"
"literal>): specifies that the mapped columns should be included in SQL "
@@ -2986,26 +2191,25 @@
"the same column(s), or by a trigger or other application."
msgstr ""
"<literal>update, insert</literal>(オプション - デフォルトは
<literal>true</"
-"literal> ): マッピングされたカラムがSQLの <literal>UPDATE</literal> または "
-"<literal>INSERT</literal> 文に含まれることを指定します。 両方とも "
-"<literal>false</literal> に設定すると、 その値が同じカラムにマッピングされた"
-"他のプロパティやトリガや 他のアプリケーションによって初期化された純粋な「導"
-"出」プロパティが可能になります。"
+"literal> ): マッピングされたカラムが SQL の <literal>UPDATE</literal> また"
+"は <literal>INSERT</literal> 文に含まれることを指定します。両方とも "
+"<literal>false</literal> に設定すると、その値が同じカラムにマッピングされた他"
+"のプロパティやトリガや他のアプリケーションによって初期化された純粋な「導出」"
+"プロパティが可能になります。"
#. Tag: para
-#: basic_mapping.xml:1554
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>property-ref</literal> (optional): the name of a property of
the "
"associated class that is joined to this foreign key. If not specified, the "
"primary key of the associated class is used."
msgstr ""
-"<literal>property-ref</literal>(オプション): この外部キーに結合された関連"
-"クラスのプロパティ名。 何も指定しなければ、関連クラスの主キーが使われます。"
+"<literal>property-ref</literal>: (オプション) この外部キーに加わる、関連クラ"
+"スのプロパティの名前。指定されていない場合は、関連クラスの主キーが使用されま"
+"す。"
#. Tag: para
-#: basic_mapping.xml:1567
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>unique</literal> (optional): enables the DDL generation of a
unique "
"constraint for the foreign-key column. By allowing this to be the target of "
@@ -3013,23 +2217,21 @@
"one-to-one."
msgstr ""
"<literal>unique</literal>(オプション): 外部キーカラムに対してユニーク制約"
-"をつけたDDLの生成を可能にします。 また、<literal>property-ref</literal> の"
-"ターゲットにすることもできます。 これにより関連の多重度を効果的に一対一にしま"
+"をつけた DDL の生成を可能にします。また、 <literal>property-ref</literal> の"
+"ターゲットにすることもできます。これにより関連の多重度を効果的に一対一にしま"
"す。"
#. Tag: para
-#: basic_mapping.xml:1575
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>not-null</literal> (optional): enables the DDL generation of a
"
"nullability constraint for the foreign key columns."
msgstr ""
-"<literal>not-null</literal> (オプション):外部キーカラムに対して、 null値を許"
-"可するDDLの生成を可能にします"
+"<literal>not-null</literal> (オプション): 外部キーカラムに対して、 null 値を"
+"許可する DDL の生成を可能にします。"
#. Tag: para
-#: basic_mapping.xml:1589
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>lazy</literal> (optional - defaults to
<literal>proxy</literal>): "
"by default, single point associations are proxied.
<literal>lazy=\"no-proxy"
@@ -3041,49 +2243,42 @@
"<literal>lazy</literal> (オプション - デフォルトは
<literal>proxy</"
"literal> ): デフォルトでは、多重度1の関連がプロキシとなります。 "
"<literal>lazy=\"no-proxy\"</literal>
は、インスタンス変数に最初にアクセスした"
-"ときに、 プロパティを遅延フェッチするよう指定します (ビルド時にバイトコード実"
+"ときに、プロパティを遅延フェッチするよう指定します (ビルド時にバイトコード実"
"装が必要になります)。 <literal>lazy=\"false\"</literal>
は関連を常に即時に"
"フェッチするよう指定します。"
#. Tag: para
-#: basic_mapping.xml:1599
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>not-found</literal> (optional - defaults to
<literal>exception</"
"literal>): specifies how foreign keys that reference missing rows will be
"
"handled. <literal>ignore</literal> will treat a missing row as a null
"
"association."
msgstr ""
-"<literal>not-found</literal> (オプション - デフォルトは
<literal>exception</"
-"literal> ): 欠落した行を参照する外部キーをどのように扱うかを指定します。 "
-"<literal>ignore</literal> は欠落した行をnull関連として扱います。"
+"<literal>not-found</literal> (オプション - デフォルトは
<literal>exception</"
+"literal>): 参照先の行がない外部キーをどのように扱うかを指定します: "
+"<literal>ignore</literal> を指定すると、行がないことを関連がないものとして扱"
+"います。"
#. Tag: para
-#: basic_mapping.xml:1606 basic_mapping.xml:1760
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>entity-name</literal> (optional): the entity name of the
associated "
"class."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>entity-name</literal> (オプション):関連したクラスのエンティティ"
-"名。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>entity-name</literal> (オプション):関連クラスのエンティティ名"
+"<literal>entity-name</literal> (オプション):関連したクラスのエンティティ名。"
#. Tag: para
-#: basic_mapping.xml:1611
#, no-c-format
msgid ""
"<literal>formula</literal> (optional): an SQL expression that defines
the "
"value for a <emphasis>computed</emphasis> foreign key."
msgstr ""
"<literal>formula</literal> (オプション): <emphasis>
計算された</emphasis> 外"
-"部キーに対して値を定義するSQL式"
+"部キーに対して値を定義する SQL 式"
#. Tag: para
-#: basic_mapping.xml:1619
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Setting a value of the <literal>cascade</literal> attribute to any
"
"meaningful value other than <literal>none</literal> will propagate
certain "
@@ -3093,41 +2288,31 @@
"second, special values: <literal>delete-orphan</literal>; and
third,"
"<literal>all</literal> comma-separated combinations of operation names:
"
"<literal>cascade=\"persist,merge,evict\"</literal> or
<literal>cascade=\"all,"
-"delete-orphan\"</literal>. See <xref
linkend=\"objectstate-transitive\"/> "
+"delete-orphan\"</literal>. See <xref
linkend=\"objectstate-transitive\" /> "
"for a full explanation. Note that single valued, many-to-one and one-to-one,
"
"associations do not support orphan delete."
msgstr ""
"<literal>cascade</literal> 属性に <literal>none</literal>
以外の意味のある値"
-"をを設定すると、 関連オブジェクトへある操作が伝播することになります。 意味の"
-"ある値とはHibernateの基本操作の名前のことで、 <literal>delete-orphan</"
-"literal> と <literal>all</literal> 、操作名をカンマで区切った組み合わせ (例"
-"えば <literal>cascade=\"persist,merge,evict\"</literal> や
<literal>cascade="
-"\"all,delete-orphan\"</literal>)、 またそれだけでなく <literal>persist,
"
-"merge, delete, save-update, evict, replicate, lock, refresh</literal>
のこと"
-"を指します。 詳しい説明は <xref linkend=\"objectstate-transitive\"/>
を見てく"
-"ださい。 値が一つの関連(many-to-oneとone-to-one関連)は、 単独での削除"
-"(orphan delete)をサポートしていないことに注意してください。"
+"を設定すると、関連オブジェクトへある操作が伝播することになります。意味のある"
+"値とは Hibernate の基本操作の名前のことで、 <literal>delete-orphan</literal> "
+"と <literal>all</literal> 、操作名をカンマで区切った組み合わせ (例えば "
+"<literal>cascade=\"persist,merge,evict\"</literal> や
<literal>cascade=\"all,"
+"delete-orphan\"</literal>)、またそれだけでなく <literal>persist, merge,
"
+"delete, save-update, evict, replicate, lock, refresh</literal> のことを指しま"
+"す。詳しい説明は <xref linkend=\"objectstate-transitive\"/> を参照してくださ"
+"い。値が一つの関連 (many-to-one と one-to-one関連) は、単独での削除 (orphan "
+"delete) をサポートしていないことに注意してください。"
#. Tag: para
-#: basic_mapping.xml:1632
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Here is an example of a typical <literal>many-to-one</literal>
declaration:"
msgstr ""
"典型的な <literal>many-to-one</literal> 宣言は次のようにシンプルです。:"
-#. Tag: programlisting
-#: basic_mapping.xml:1636
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<many-to-one name=\"product\" class=\"Product\"
column=\"PRODUCT_ID"
-"\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1638
-#, fuzzy, no-c-format
-msgid ""
"The <literal>property-ref</literal> attribute should only be used for
"
"mapping legacy data where a foreign key refers to a unique key of the "
"associated table other than the primary key. This is a complicated and "
@@ -3137,43 +2322,24 @@
"the SchemaExport tool."
msgstr ""
"<literal>property-ref</literal> 属性は、外部キーが関連付けられたテーブルの、"
-"主キーでない ユニークキーを参照しているレガシーデータをマップするためにだけ使"
-"うべきです。 これは醜いリレーショナルモデルです。 例えば <literal>Product</"
-"literal> クラスが、 主キーでないユニークなシリアルナンバーを持っていると仮定"
-"してみてください。 ( <literal>unique</literal> 属性はSchemaExportツールを"
-"使ったHibernateのDDL生成を制御します。)"
+"主キーでないユニークキーを参照しているレガシーデータをマップするためにだけ使"
+"うべきです。これは醜いリレーショナルモデルです。例えば <literal>Product</"
+"literal> クラスが、主キーでないユニークなシリアルナンバーを持っていると仮定し"
+"てみてください。( <literal>unique</literal> 属性は SchemaExport ツールを使っ"
+"た Hibernate の DDL 生成を制御します。)"
-#. Tag: programlisting
-#: basic_mapping.xml:1647
-#, no-c-format
-msgid ""
-"<![CDATA[<property name=\"serialNumber\" unique=\"true\"
type=\"string\" "
-"column=\"SERIAL_NUMBER\"/>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:1649
#, no-c-format
msgid "Then the mapping for <literal>OrderItem</literal> might
use:"
msgstr ""
"以下のように <literal>OrderItem</literal> に対してマッピングを使えます:"
-#. Tag: programlisting
-#: basic_mapping.xml:1653
-#, no-c-format
-msgid ""
-"<![CDATA[<many-to-one name=\"product\"
property-ref=\"serialNumber\" column="
-"\"PRODUCT_SERIAL_NUMBER\"/>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:1655
-#, fuzzy, no-c-format
+#, no-c-format
msgid "This is not encouraged, however."
msgstr "しかし、これは決して推奨できません。"
#. Tag: para
-#: basic_mapping.xml:1659
#, no-c-format
msgid ""
"If the referenced unique key comprises multiple properties of the associated
"
@@ -3181,35 +2347,24 @@
"properties></literal> element."
msgstr ""
"参照したユニークキーが、関連するエンティティの多数のプロパティから構成される"
-"場合、 指定した <literal><properties></literal>
要素内で、参照するプロ"
-"パティをマッピングするべきです。"
+"場合、指定した <literal><properties></literal>
要素内で、参照するプロパ"
+"ティをマッピングするべきです。"
#. Tag: para
-#: basic_mapping.xml:1664
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If the referenced unique key is the property of a component, you can specify
"
"a property path:"
msgstr ""
"もし参照したユニークキーがコンポーネントのプロパティである場合は、プロパティ"
-"のパスを指定できます。"
+"のパスを指定できます:"
-#. Tag: programlisting
-#: basic_mapping.xml:1668
-#, no-c-format
-msgid ""
-"<![CDATA[<many-to-one name=\"owner\"
property-ref=\"identity.ssn\" column="
-"\"OWNER_SSN\"/>]]>"
-msgstr ""
-
#. Tag: title
-#: basic_mapping.xml:1673
-#, fuzzy, no-c-format
+#, no-c-format
msgid "One-to-one"
msgstr "one-to-one"
#. Tag: para
-#: basic_mapping.xml:1675
#, no-c-format
msgid ""
"A one-to-one association to another persistent class is declared using a "
@@ -3218,31 +2373,9 @@
"他の永続クラスへの一対一関連は、<literal>one-to-one</literal> 要素で定義しま"
"す。"
-#. Tag: programlisting
-#: basic_mapping.xml:1693
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<one-to-one\n"
-" name=\"propertyName\"\n"
-" class=\"ClassName\"\n"
-" cascade=\"cascade_style\"\n"
-" constrained=\"true|false\"\n"
-" fetch=\"join|select\"\n"
-" property-ref=\"propertyNameFromAssociatedClass\"\n"
-" access=\"field|property|ClassName\"\n"
-" formula=\"any SQL expression\"\n"
-" lazy=\"proxy|no-proxy|false\"\n"
-" entity-name=\"EntityName\"\n"
-"
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
-" embed-xml=\"true|false\"\n"
-" foreign-key=\"foreign_key_name\"\n"
-"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1713
-#, fuzzy, no-c-format
-msgid ""
"<literal>constrained</literal> (optional): specifies that a foreign key
"
"constraint on the primary key of the mapped table and references the table "
"of the associated class. This option affects the order in which
<literal>save"
@@ -3251,26 +2384,24 @@
"tool."
msgstr ""
"<literal>constrained</literal>(オプション): マッピングされたテーブルの主"
-"キーに対する外部キー制約が、 関連クラスのテーブルを参照することを指定しま"
-"す。 このオプションは <literal>save()</literal> と
<literal>delete()</"
-"literal> がカスケードされる順序に影響し、 そして関連がプロキシされるかどうか"
-"にも影響します (そしてスキーマエクスポートツールにも使われます)。"
+"キーに対する外部キー制約が、関連クラスのテーブルを参照することを指定します。"
+"このオプションは <literal>save()</literal> と
<literal>delete()</literal> が"
+"カスケードされる順序に影響し、そして関連がプロキシされるかどうかにも影響しま"
+"す (そしてスキーマエクスポートツールにも使われます)。"
#. Tag: para
-#: basic_mapping.xml:1728
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>property-ref</literal> (optional): the name of a property of
the "
"associated class that is joined to the primary key of this class. If not "
"specified, the primary key of the associated class is used."
msgstr ""
"<literal>property-ref</literal>(オプション): このクラスの主キーに結合され"
-"た関連クラスのプロパティ名。 指定されなければ、関連クラスの主キーが使われま"
+"た関連クラスのプロパティ名。指定されなければ、関連クラスの主キーが使われま"
"す。"
#. Tag: para
-#: basic_mapping.xml:1741
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>formula</literal> (optional): almost all one-to-one
associations "
"map to the primary key of the owning entity. If this is not the case, you "
@@ -3279,13 +2410,12 @@
"example."
msgstr ""
"<literal>formula</literal> (オプション): ほとんどすべての一対一関連はオーナー"
-"のエンティティの主キーへとマッピングされます。 これ以外の稀な場合は、 他のカ"
-"ラムや、複数のカラム、SQL構文を使った結合するための式を指定できます。 (例は "
+"のエンティティの主キーへとマッピングされます。これ以外の稀な場合は、他のカラ"
+"ムや、複数のカラム、 SQL 構文を使った結合するための式を指定できます。(例は "
"<literal>org.hibernate.test.onetooneformula</literal>
を参照してください。)"
#. Tag: para
-#: basic_mapping.xml:1749
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>lazy</literal> (optional - defaults to
<literal>proxy</literal>): "
"by default, single point associations are proxied.
<literal>lazy=\"no-proxy"
@@ -3299,47 +2429,42 @@
"<literal>lazy</literal> (オプション - デフォルトは
<literal>proxy</"
"literal> ): デフォルトでは、多重度1の関連がプロキシとなります。 "
"<literal>lazy=\"no-proxy\"</literal>
は、インスタンス変数に最初にアクセスした"
-"ときに、 プロパティを遅延フェッチするよう指定します (ビルド時にバイトコード実"
+"ときに、プロパティを遅延フェッチするよう指定します (ビルド時にバイトコード実"
"装が必要になります)。 <literal>lazy=\"false\"</literal>
は関連を常に即時に"
"フェッチするよう指定します。 <emphasis>もし
<literal>constrained=\"false\"</"
-"literal> ならば、 プロキシは使用不可能となり、関連を即時にフェッチすることに"
-"注意してください!</emphasis>"
+"literal> ならば、プロキシは使用不可能となり、関連を即時にフェッチすることに注"
+"意してください。</emphasis>"
#. Tag: para
-#: basic_mapping.xml:1767
-#, fuzzy, no-c-format
+#, no-c-format
msgid "There are two varieties of one-to-one associations:"
msgstr "一対一関連には2種類あります:"
#. Tag: para
-#: basic_mapping.xml:1771
#, no-c-format
msgid "primary key associations"
msgstr "主キー関連"
#. Tag: para
-#: basic_mapping.xml:1774
#, no-c-format
msgid "unique foreign key associations"
msgstr "ユニーク外部キー関連"
#. Tag: para
-#: basic_mapping.xml:1779
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Primary key associations do not need an extra table column. If two rows are "
"related by the association, then the two table rows share the same primary "
"key value. To relate two objects by a primary key association, ensure that "
"they are assigned the same identifier value."
msgstr ""
-"主キー関連には、特別なテーブルカラムは必要ありません。 もし2つの行が関連によ"
-"り関係していれば、2つのテーブルは同じ主キーの値を共有します。 そのため2つのオ"
-"ブジェクトを主キー関連によって関連付けたいのであれば、 確実に同じ識別子の値を"
-"代入しなければなりません。"
+"主キー関連には、特別なテーブルカラムは必要ありません。もし2つの行が関連により"
+"関係していれば、2つのテーブルは同じ主キーの値を共有します。そのため2つのオブ"
+"ジェクトを主キー関連によって関連付けたいのであれば、確実に同じ識別子の値を代"
+"入しなければなりません。"
#. Tag: para
-#: basic_mapping.xml:1786
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For a primary key association, add the following mappings to "
"<literal>Employee</literal> and <literal>Person</literal>
respectively:"
@@ -3347,123 +2472,59 @@
"主キー関連を行うためには、以下のマッピングを <literal>Employee</literal> と "
"<literal>Person</literal> のそれぞれに追加してください。"
-#. Tag: programlisting
-#: basic_mapping.xml:1791
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[<one-to-one name=\"person\"
class=\"Person\"/>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: basic_mapping.xml:1792
-#, no-c-format
msgid ""
-"<![CDATA[<one-to-one name=\"employee\" class=\"Employee\"
constrained=\"true"
-"\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1794
-#, fuzzy, no-c-format
-msgid ""
"Ensure that the primary keys of the related rows in the PERSON and EMPLOYEE "
"tables are equal. You use a special Hibernate identifier generation strategy
"
"called <literal>foreign</literal>:"
msgstr ""
-"ここで、PERSONとEMPLOYEEテーブルの関係する行の主キーが同じであることを確実に"
-"しなければいけません。 ここでは、<literal>foreign</literal> という特殊な"
-"Hibernate識別子生成戦略を使います:"
+"ここで、 PERSON と EMPLOYEE テーブルの関係する行の主キーが同じであることを確"
+"実にしなければいけません。ここでは、 <literal>foreign</literal> という特殊な "
+"Hibernate 識別子生成戦略を使います:"
-#. Tag: programlisting
-#: basic_mapping.xml:1800
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"person\"
table=\"PERSON\">\n"
-" <id name=\"id\" column=\"PERSON_ID\">\n"
-" <generator class=\"foreign\">\n"
-" <param
name=\"property\">employee</param>\n"
-" </generator>\n"
-" </id>\n"
-" ...\n"
-" <one-to-one name=\"employee\"\n"
-" class=\"Employee\"\n"
-" constrained=\"true\"/>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1802
-#, fuzzy, no-c-format
-msgid ""
"A newly saved instance of <literal>Person</literal> is assigned the
same "
"primary key value as the <literal>Employee</literal> instance referred
with "
"the <literal>employee</literal> property of that
<literal>Person</literal>."
msgstr ""
-"<literal>Employee</literal>
インスタンスが、<literal>Person</literal> の "
-"<literal>employee</literal> プロパティで参照されるように、 新しくセーブされ"
-"た <literal>Person</literal> のインスタンスには同じ主キーの値が代入されま"
-"す。 新しくセーブする <literal>Person</literal> インスタンスは、 その "
+"<literal>Employee</literal> インスタンスが、
<literal>Person</literal> の "
+"<literal>employee</literal> プロパティで参照されるように、新しくセーブされた "
+"<literal>Person</literal> のインスタンスには同じ主キーの値が代入されます。新"
+"しくセーブする <literal>Person</literal> インスタンスは、その "
"<literal>Person</literal> の <literal>employee</literal>
プロパティが参照す"
"る <literal>Employee</literal> インスタンスとして同じ主キーが割り当てられま"
"す。"
#. Tag: para
-#: basic_mapping.xml:1808
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Alternatively, a foreign key with a unique constraint, from "
"<literal>Employee</literal> to <literal>Person</literal>,
can be expressed "
"as:"
msgstr ""
-"もう1つの方法として、<literal>Employee</literal> から
<literal>Person</"
-"literal> への ユニーク制約を使った外部キー関連は以下のように表現されます:"
+"もう1つの方法として、 <literal>Employee</literal> から
<literal>Person</"
+"literal> へのユニーク制約を使った外部キー関連は以下のように表現されます:"
-#. Tag: programlisting
-#: basic_mapping.xml:1813
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<many-to-one name=\"person\" class=\"Person\"
column=\"PERSON_ID\" "
-"unique=\"true\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1815
-#, fuzzy, no-c-format
-msgid ""
"This association can be made bidirectional by adding the following to the "
"<literal>Person</literal> mapping:"
msgstr ""
-"そしてこの関連は、 以下の記述を <literal>Person</literal> のマッピングに追加"
-"することで双方向にすることができます:"
+"そしてこの関連は、以下の記述を <literal>Person</literal> のマッピングに追加す"
+"ることで双方向にすることができます:"
-#. Tag: programlisting
-#: basic_mapping.xml:1820
-#, no-c-format
-msgid ""
-"<![CDATA[<one-to-one name=\"employee\" class=\"Employee\"
property-ref="
-"\"person\"/>]]>"
-msgstr ""
-
#. Tag: title
-#: basic_mapping.xml:1825
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Natural-id"
msgstr "natural-id"
-#. Tag: programlisting
-#: basic_mapping.xml:1827
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<natural-id mutable=\"true|false\"/>\n"
-" <property ... />\n"
-" <many-to-one ... />\n"
-" ......\n"
-"</natural-id>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1829
-#, fuzzy, no-c-format
-msgid ""
"Although we recommend the use of surrogate keys as primary keys, you should "
"try to identify natural keys for all entities. A natural key is a property "
"or combination of properties that is unique and non-null. It is also "
@@ -3472,16 +2533,15 @@
"unique key and nullability constraints and, as a result, your mapping will "
"be more self-documenting."
msgstr ""
-"主キーとして代理キーの使用を推奨しますが、 すべてのエンティティに対して自然"
-"キーを識別するようにすべきです。 自然キーはユニークかつ非nullな一つのプロパ"
-"ティ、またはプロパティの連結です。 不変であればさらに良いです。 <literal><"
+"主キーとして代理キーの使用を推奨しますが、すべてのエンティティに対して自然"
+"キーを識別するようにすべきです。自然キーはユニークかつ非 null な一つのプロパ"
+"ティ、またはプロパティの連結です。不変であればさらに良いです。 <literal><"
"natural-id></literal> 要素内で自然キーのプロパティをマッピングします。 "
-"Hibernateは必然的にユニークかつnull値を許可する制約を生成し、 こうしてマッピ"
-"ングはより自己記述的になります。"
+"Hibernate は必然的にユニークかつ null 値を許可する制約を生成し、こうしてマッ"
+"ピングはより自己記述的になります。"
#. Tag: para
-#: basic_mapping.xml:1838
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is recommended that you implement <literal>equals()</literal> and
"
"<literal>hashCode()</literal> to compare the natural key properties of
the "
@@ -3491,8 +2551,7 @@
"<literal>hashCode()</literal> の実装を強くお勧めします。"
#. Tag: para
-#: basic_mapping.xml:1843
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This mapping is not intended for use with entities that have natural primary
"
"keys."
@@ -3500,63 +2559,37 @@
"このマッピングは自然主キーを使ったエンティティでの使用を意図していません。"
#. Tag: para
-#: basic_mapping.xml:1849
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>mutable</literal> (optional - defaults to
<literal>false</"
"literal>): by default, natural identifier properties are assumed to be "
"immutable (constant)."
msgstr ""
-"<literal>mutable</literal> (オプション, デフォルトは
<literal>false</"
+"<literal>mutable</literal> (オプション、 デフォルトは
<literal>false</"
"literal> ): デフォルトでは、自然識別子プロパティは不変(定数)と想定されていま"
"す。"
#. Tag: title
-#: basic_mapping.xml:1859
#, fuzzy, no-c-format
msgid "Component and dynamic-component"
msgstr "component, dynamic-component"
#. Tag: para
-#: basic_mapping.xml:1861
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal><component></literal> element maps
properties of a child "
"object to columns of the table of a parent class. Components can, in turn, "
"declare their own properties, components or collections. See the
\"Component"
"\" examples below:"
msgstr ""
-"<literal><component></literal> 要素は、
子オブジェクトのプロパティを親"
-"クラスのテーブルのカラムへマッピングします。 コンポーネントは自分のプロパ"
-"ティ、コンポーネント、コレクションの順に定義できます。 以下の「コンポーネン"
-"ト」を見てください。"
+"<literal><component></literal>
要素は、子オブジェクトのプロパティを親ク"
+"ラスのテーブルのカラムへマッピングします。コンポーネントは自分のプロパティ、"
+"コンポーネント、コレクションの順に定義できます。以下の「コンポーネント」を見"
+"てください。"
-#. Tag: programlisting
-#: basic_mapping.xml:1879
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<component\n"
-" name=\"propertyName\"\n"
-" class=\"className\"\n"
-" insert=\"true|false\"\n"
-" update=\"true|false\"\n"
-" access=\"field|property|ClassName\"\n"
-" lazy=\"true|false\"\n"
-" optimistic-lock=\"true|false\"\n"
-" unique=\"true|false\"\n"
-" node=\"element-name|.\"\n"
-">\n"
-"\n"
-" <property ...../>\n"
-" <many-to-one .... />\n"
-" ........\n"
-"</component>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1887
-#, fuzzy, no-c-format
-msgid ""
"<literal>class</literal> (optional - defaults to the property type
"
"determined by reflection): the name of the component (child) class."
msgstr ""
@@ -3564,48 +2597,37 @@
"されるプロパティの型): コンポーネント(子)クラスの名前。"
#. Tag: para
-#: basic_mapping.xml:1893 basic_mapping.xml:1982
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>insert</literal>: do the mapped columns appear in SQL "
"<literal>INSERTs</literal>?"
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>insert</literal> :マッピングされたカラムがSQLの
<literal>INSERT</"
-"literal> に現れるようにするどうかを指定します。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>insert</literal>:マッピングされたカラムがSQLの
<literal>INSERT</"
+"<literal>insert</literal>:マッピングされたカラムが SQL の
<literal>INSERT</"
"literal> に現れるようにするかどうかを指定します。"
#. Tag: para
-#: basic_mapping.xml:1899 basic_mapping.xml:1988
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>update</literal>: do the mapped columns appear in SQL "
"<literal>UPDATEs</literal>?"
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>update</literal> : マッピングされたカラムがSQL の
<literal>UPDATE</"
-"literal> に現れるようにするかどうかを指定します。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>update</literal>:マッピングされたカラムがSQLの
<literal>UPDATE</"
+"<literal>update</literal>:マッピングされたカラムが SQL の
<literal>UPDATE</"
"literal> に現れるようにするかどうかを指定します。"
#. Tag: para
-#: basic_mapping.xml:1911
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>lazy</literal> (optional - defaults to
<literal>false</literal>): "
"specifies that this component should be fetched lazily when the instance "
"variable is first accessed. It requires build-time bytecode instrumentation."
msgstr ""
-"<literal>lazy</literal> (optional - デフォルトは
<literal>false</literal> ): "
-"インスタンス変数に最初にアクセスしたときに、 コンポーネントを遅延してフェッチ"
-"するよう指定します。 (バイトコード実装を作成する時間が必要になります)"
+"<literal>lazy</literal> (オプション - デフォルトは
<literal>false</"
+"literal> ): インスタンス変数に最初にアクセスしたときに、コンポーネントを遅延"
+"してフェッチするよう指定します。 (バイトコード実装を作成する時間が必要になり"
+"ます)"
#. Tag: para
-#: basic_mapping.xml:1918
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>optimistic-lock</literal> (optional - defaults to
<literal>true</"
"literal>): specifies that updates to this component either do or do not "
@@ -3614,12 +2636,11 @@
msgstr ""
"<literal>optimistic-lock</literal> (オプション - デフォルトは
<literal>true</"
"literal> ): このプロパティの更新に、楽観ロックの取得を要求するかどうかを指定"
-"します。 言い換えれば、このプロパティがダーティであるときにバージョンを増やす"
+"します。言い換えれば、このプロパティがダーティであるときにバージョンを増やす"
"べきかを決定します。"
#. Tag: para
-#: basic_mapping.xml:1926 basic_mapping.xml:2002
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>unique</literal> (optional - defaults to
<literal>false</literal>): "
"specifies that a unique constraint exists upon all mapped columns of the "
@@ -3630,50 +2651,45 @@
"在するかを指定します。"
#. Tag: para
-#: basic_mapping.xml:1935
#, no-c-format
msgid ""
"The child <literal><property></literal> tags map
properties of the "
"child class to table columns."
msgstr ""
-"子の <literal><property></literal> タグで、 子のクラスのプロパティを"
-"テーブルカラムにマッピングします。"
+"子の <literal><property></literal>
タグで、子のクラスのプロパティをテー"
+"ブルカラムにマッピングします。"
#. Tag: para
-#: basic_mapping.xml:1940
#, no-c-format
msgid ""
"The <literal><component></literal> element allows a
<literal><"
"parent></literal> subelement that maps a property of the component
class "
"as a reference back to the containing entity."
msgstr ""
-"<literal><component></literal> 要素は、親エンティティへ戻る参照とし"
-"て、 コンポーネントのクラスのプロパティをマッピングする <literal><"
-"parent></literal> サブ要素を許可します。"
+"<literal><component></literal>
要素は、親エンティティへ戻る参照として、"
+"コンポーネントのクラスのプロパティをマッピングする <literal><parent></"
+"literal> サブ要素を許可します。"
#. Tag: para
-#: basic_mapping.xml:1946
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal><dynamic-component></literal> element allows
a "
"<literal>Map</literal> to be mapped as a component, where the property
names "
-"refer to keys of the map. See <xref
linkend=\"components-dynamic\"/> for "
+"refer to keys of the map. See <xref linkend=\"components-dynamic\"
/> for "
"more information."
msgstr ""
"<literal><dynamic-component></literal> 要素は、
<literal>Map</literal> "
-"がコンポーネントとしてマッピングされることを可能にします。 プロパティ名はmap"
+"がコンポーネントとしてマッピングされることを可能にします。プロパティ名は map "
"のキーを参照します。<xref linkend=\"components-dynamic\"/> を参照してくださ"
"い。"
#. Tag: title
-#: basic_mapping.xml:1955
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Properties"
-msgstr "properties"
+msgstr "プロパティ"
#. Tag: para
-#: basic_mapping.xml:1957
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal><properties></literal> element allows the
definition of a "
"named, logical grouping of the properties of a class. The most important use
"
@@ -3681,43 +2697,23 @@
"target of a <literal>property-ref</literal>. It is also a convenient
way to "
"define a multi-column unique constraint. For example:"
msgstr ""
-"<literal><properties></literal> 要素はクラスのプロパティの指定された、
"
-"論理的なグルーピングを可能にします。 この構造の最も重要な使用方法は、 "
+"<literal><properties></literal>
要素はクラスのプロパティの指定された、"
+"論理的なグルーピングを可能にします。この構造の最も重要な使用方法は、 "
"<literal>property-ref</literal> のターゲットになるプロパティの結合を許可する"
-"ことです。 それはまた、複数カラムのユニーク制約を定義する簡単な方法でもありま"
+"ことです。それはまた、複数カラムのユニーク制約を定義する簡単な方法でもありま"
"す。"
-#. Tag: programlisting
-#: basic_mapping.xml:1973
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<properties\n"
-" name=\"logicalName\"\n"
-" insert=\"true|false\"\n"
-" update=\"true|false\"\n"
-" optimistic-lock=\"true|false\"\n"
-" unique=\"true|false\"\n"
-">\n"
-"\n"
-" <property ...../>\n"
-" <many-to-one .... />\n"
-" ........\n"
-"</properties>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:1976
-#, fuzzy, no-c-format
-msgid ""
"<literal>name</literal>: the logical name of the grouping. It is
"
"<emphasis>not</emphasis> an actual property name."
msgstr ""
-"<literal>name</literal> : グルーピングの論理名。 実際のプロパティ名では "
+"<literal>name</literal> : グルーピングの論理名。実際のプロパティ名では "
"<emphasis>ありません</emphasis> 。"
#. Tag: para
-#: basic_mapping.xml:1994
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>optimistic-lock</literal> (optional - defaults to
<literal>true</"
"literal>): specifies that updates to these properties either do or do not
"
@@ -3726,11 +2722,10 @@
msgstr ""
"<literal>optimistic-lock</literal> (オプション - デフォルトは
<literal>true</"
"literal> ): これらのプロパティの更新に楽観的ロックの取得を要求するかどうかを"
-"指定します。 言い換えれば、このプロパティがダーティであるときにバージョンを増"
+"指定します。言い換えれば、このプロパティがダーティであるときにバージョンを増"
"やすべきかを決定します。"
#. Tag: para
-#: basic_mapping.xml:2011
#, no-c-format
msgid ""
"For example, if we have the following
<literal><properties></literal> "
@@ -3739,49 +2734,18 @@
"例えば、もし以下のような <literal><properties></literal>
マッピングが"
"あった場合:"
-#. Tag: programlisting
-#: basic_mapping.xml:2015
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"personNumber\"/>\n"
-"\n"
-" ...\n"
-" <properties name=\"name\"\n"
-" unique=\"true\" update=\"false\">\n"
-" <property name=\"firstName\"/>\n"
-" <property name=\"initial\"/>\n"
-" <property name=\"lastName\"/>\n"
-" </properties>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2017
-#, fuzzy, no-c-format
-msgid ""
"You might have some legacy data association that refers to this unique key "
"of the <literal>Person</literal> table, instead of to the primary
key:"
msgstr ""
"主キーの代わりに <literal>Person</literal> テーブルのユニークキーへの参照を持"
-"つ、 レガシーデータの関連を持つかもしれません。:"
+"つ、レガシーデータの関連を持つかもしれません。:"
-#. Tag: programlisting
-#: basic_mapping.xml:2022
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<many-to-one name=\"person\"\n"
-" class=\"Person\" property-ref=\"name\">\n"
-" <column name=\"firstName\"/>\n"
-" <column name=\"initial\"/>\n"
-" <column name=\"lastName\"/>\n"
-"</many-to-one>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2024
-#, fuzzy, no-c-format
-msgid ""
"The use of this outside the context of mapping legacy data is not "
"recommended."
msgstr ""
@@ -3789,53 +2753,29 @@
"せん。"
#. Tag: title
-#: basic_mapping.xml:2032
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Subclass"
msgstr "subclass"
#. Tag: para
-#: basic_mapping.xml:2034
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Polymorphic persistence requires the declaration of each subclass of the "
"root persistent class. For the table-per-class-hierarchy mapping strategy, "
"the <literal><subclass></literal> declaration is used.
For example:"
msgstr ""
"最後にポリモーフィックな永続化には、ルートの永続クラスの各サブクラスの定義が"
-"必要です。 table-per-class-hierarchyマッピング戦略では、 <literal><"
+"必要です。 table-per-class-hierarchy マッピング戦略では、 <literal><"
"subclass></literal> 定義が使われます。"
-#. Tag: programlisting
-#: basic_mapping.xml:2047
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<subclass\n"
-" name=\"ClassName\"\n"
-" discriminator-value=\"discriminator_value\"\n"
-" proxy=\"ProxyInterface\"\n"
-" lazy=\"true|false\"\n"
-" dynamic-update=\"true|false\"\n"
-" dynamic-insert=\"true|false\"\n"
-" entity-name=\"EntityName\"\n"
-" node=\"element-name\"\n"
-" extends=\"SuperclassName\">\n"
-"\n"
-" <property .... />\n"
-" .....\n"
-"</subclass>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2050 basic_mapping.xml:2108 basic_mapping.xml:2171
-#, fuzzy, no-c-format
-msgid ""
"<literal>name</literal>: the fully qualified class name of the
subclass."
msgstr "<literal>name</literal>:サブクラスの完全修飾されたクラス名。"
#. Tag: para
-#: basic_mapping.xml:2055
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>discriminator-value</literal> (optional - defaults to the
class "
"name): a value that distinguishes individual subclasses."
@@ -3844,43 +2784,25 @@
"名): 個々のサブクラスを区別するための値。"
#. Tag: para
-#: basic_mapping.xml:2061
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>proxy</literal> (optional): specifies a class or interface
used for "
"lazy initializing proxies."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>proxy</literal>(オプション): 遅延初期化プロキシに使うクラスやイン"
-"ターフェイスを指定します。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"<literal>proxy</literal> (オプション): 遅延初期化プロキシに使用するクラスやイ"
-"ンターフェイスを指定します。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>proxy</literal> (オプション): 遅延初期化プロキシに使用するクラスやイ"
-"ンターフェイスを指定します。"
+"ンターフェースを指定します。"
#. Tag: para
-#: basic_mapping.xml:2067
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>lazy</literal> (optional - defaults to
<literal>true</literal>): "
"setting <literal>lazy=\"false\"</literal> disables the use of
lazy fetching."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>lazy</literal>(オプション, デフォルトは <literal>true</"
-"literal> ): <literal>lazy=\"false\"</literal>
と設定すると、遅延フェッチが"
-"使用できません。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>lazy</literal> (オプション, デフォルトは
<literal>true</literal> ): "
-"<literal>lazy=\"false\"</literal>
とすると、遅延フェッチが使用できません。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>lazy</literal> (オプション, デフォルトは
<literal>true</literal> ): "
+"<literal>lazy</literal> (オプション、デフォルトは
<literal>true</literal> ): "
"<literal>lazy=\"false\"</literal> とすると、遅延フェッチが使用できません。"
#. Tag: para
-#: basic_mapping.xml:2075
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Each subclass declares its own persistent properties and subclasses. "
"<literal><version></literal> and
<literal><id></literal> "
@@ -3889,30 +2811,27 @@
"this is not specified, the fully qualified Java class name is used."
msgstr ""
"各サブクラスでは、永続プロパティとサブクラスを定義します。 <literal><"
-"version></literal> と <literal><id></literal>
プロパティは、 ルート"
-"クラスから継承されると仮定されます。 階層構造におけるサブクラスは、 ユニーク"
-"な <literal>discriminator-value</literal> を定義しなければなりません。 noneが"
-"指定されると、完全修飾されたJavaクラス名が使われます。"
+"version></literal> と <literal><id></literal>
プロパティは、ルートク"
+"ラスから継承されると仮定されます。階層構造におけるサブクラスは、ユニークな "
+"<literal>discriminator-value</literal> を定義しなければなりません。 none が指"
+"定されると、完全修飾された Java クラス名が使われます。"
#. Tag: para
-#: basic_mapping.xml:2083 basic_mapping.xml:2141 basic_mapping.xml:2199
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
-"For information about inheritance mappings see <xref
linkend=\"inheritance\"/"
-">."
+"For information about inheritance mappings see <xref
linkend=\"inheritance"
+"\" />."
msgstr ""
-"継承のマッピングに関する情報は <xref linkend=\"inheritance\"/> を見てくださ"
-"い。"
+"継承のマッピングに関する情報は <xref linkend=\"inheritance\"/> を参照してくだ"
+"さい。"
#. Tag: title
-#: basic_mapping.xml:2090
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Joined-subclass"
msgstr "joined-subclass"
#. Tag: para
-#: basic_mapping.xml:2092
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Each subclass can also be mapped to its own table. This is called the table-"
"per-subclass mapping strategy. An inherited state is retrieved by joining "
@@ -3920,138 +2839,53 @@
"subclass></literal> element. For example:"
msgstr ""
"もう1つの方法として、各サブクラスを自身のテーブルへマッピングすることができま"
-"す (table-per-subclass mapping strategy)。 継承した状態はスーパークラスのテー"
+"す (table-per-subclass mapping strategy)。継承した状態はスーパークラスのテー"
"ブルを使った結合で検索します。 <literal><joined-subclass></literal>
要"
"素を使用します。"
-#. Tag: programlisting
-#: basic_mapping.xml:2105
-#, no-c-format
-msgid ""
-"<![CDATA[<joined-subclass\n"
-" name=\"ClassName\"\n"
-" table=\"tablename\"\n"
-" proxy=\"ProxyInterface\"\n"
-" lazy=\"true|false\"\n"
-" dynamic-update=\"true|false\"\n"
-" dynamic-insert=\"true|false\"\n"
-" schema=\"schema\"\n"
-" catalog=\"catalog\"\n"
-" extends=\"SuperclassName\"\n"
-" persister=\"ClassName\"\n"
-" subselect=\"SQL expression\"\n"
-" entity-name=\"EntityName\"\n"
-" node=\"element-name\">\n"
-"\n"
-" <key .... >\n"
-"\n"
-" <property .... />\n"
-" .....\n"
-"</joined-subclass>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:2113 basic_mapping.xml:2176
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>table</literal>: the name of the subclass table."
msgstr "<literal>table</literal> :サブクラステーブルの名前。"
#. Tag: para
-#: basic_mapping.xml:2118 basic_mapping.xml:2181
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>proxy</literal> (optional): specifies a class or interface to
use "
"for lazy initializing proxies."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>proxy</literal>(オプション): 遅延初期化プロキシに使うクラスやイン"
-"ターフェイスを指定します。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
"<literal>proxy</literal> (オプション): 遅延初期化プロキシに使用するクラスやイ"
-"ンターフェイスを指定します。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>proxy</literal> (オプション): 遅延初期化プロキシに使用するクラスやイ"
-"ンターフェイスを指定します。"
+"ンターフェースを指定します。"
#. Tag: para
-#: basic_mapping.xml:2124 basic_mapping.xml:2187
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>lazy</literal> (optional, defaults to
<literal>true</literal>): "
"setting <literal>lazy=\"false\"</literal> disables the use of
lazy fetching."
msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>lazy</literal>(オプション, デフォルトは <literal>true</"
-"literal> ): <literal>lazy=\"false\"</literal>
と設定すると、遅延フェッチが"
-"使用できません。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>lazy</literal> (オプション, デフォルトは
<literal>true</literal> ): "
-"<literal>lazy=\"false\"</literal>
とすると、遅延フェッチが使用できません。\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"<literal>lazy</literal> (オプション, デフォルトは
<literal>true</literal> ): "
+"<literal>lazy</literal> (オプション、デフォルトは
<literal>true</literal> ): "
"<literal>lazy=\"false\"</literal> とすると、遅延フェッチが使用できません。"
#. Tag: para
-#: basic_mapping.xml:2132
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A discriminator column is not required for this mapping strategy. Each "
"subclass must, however, declare a table column holding the object identifier
"
"using the <literal><key></literal> element. The mapping
at the start "
"of the chapter would then be re-written as:"
msgstr ""
-"このマッピング戦略には、識別カラムは必要ありません。 しかし各サブクラスは "
-"<literal><key></literal> 要素を使い、 オブジェクト識別子を保持するテー"
-"ブルカラムを定義しなければなりません。 この章の初めのマッピングは以下のように"
-"書き直せます:"
+"このマッピング戦略には、識別カラムは必要ありません。しかし各サブクラスは "
+"<literal><key></literal> 要素を使い、オブジェクト識別子を保持するテーブ"
+"ルカラムを定義しなければなりません。この章の初めのマッピングは以下のように書"
+"き直せます:"
-#. Tag: programlisting
-#: basic_mapping.xml:2139
-#, no-c-format
-msgid ""
-"<![CDATA[<?xml version=\"1.0\"?>\n"
-"<!DOCTYPE hibernate-mapping PUBLIC\n"
-" \"-//Hibernate/Hibernate Mapping DTD//EN\"\n"
-"
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
-"\n"
-"<hibernate-mapping package=\"eg\">\n"
-"\n"
-" <class name=\"Cat\" table=\"CATS\">\n"
-" <id name=\"id\" column=\"uid\"
type=\"long\">\n"
-" <generator class=\"hilo\"/>\n"
-" </id>\n"
-" <property name=\"birthdate\"
type=\"date\"/>\n"
-" <property name=\"color\"
not-null=\"true\"/>\n"
-" <property name=\"sex\"
not-null=\"true\"/>\n"
-" <property name=\"weight\"/>\n"
-" <many-to-one name=\"mate\"/>\n"
-" <set name=\"kittens\">\n"
-" <key column=\"MOTHER\"/>\n"
-" <one-to-many class=\"Cat\"/>\n"
-" </set>\n"
-" <joined-subclass name=\"DomesticCat\"
table=\"DOMESTIC_CATS"
-"\">\n"
-" <key column=\"CAT\"/>\n"
-" <property name=\"name\"
type=\"string\"/>\n"
-" </joined-subclass>\n"
-" </class>\n"
-"\n"
-" <class name=\"eg.Dog\">\n"
-" <!-- mapping for Dog could go here -->\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
#. Tag: title
-#: basic_mapping.xml:2148
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Union-subclass"
msgstr "union-subclass"
#. Tag: para
-#: basic_mapping.xml:2150
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A third option is to map only the concrete classes of an inheritance "
"hierarchy to tables. This is called the table-per-concrete-class strategy. "
@@ -4064,90 +2898,42 @@
"example:"
msgstr ""
"3つ目の選択肢は、継承階層の具象クラスのみをテーブルにマッピングすることです "
-"(the table-per-concrete-class戦略)。 それぞれのテーブルは継承の状態を含めすべ"
-"てのクラスの永続状態を定義します。 Hibernateではその様な継承階層が必ずしも必"
-"要ではありません。 単純にそれぞれのクラスを、 別々の <literal><class></"
-"literal> 宣言を使ってマッピングすることができます。 しかしポリモーフィックな"
-"関連(例えば 階層のスーパークラスへの関連)を使いたいなら、 <literal><union-"
+"(the table-per-concrete-class 戦略)。それぞれのテーブルは継承の状態を含めすべ"
+"てのクラスの永続状態を定義します。 Hibernate ではその様な継承階層が必ずしも必"
+"要ではありません。単純にそれぞれのクラスを、別々の <literal><class></"
+"literal> 宣言を使ってマッピングすることができます。しかしポリモーフィックな関"
+"連 (例えば階層のスーパークラスへの関連) を使いたいなら、 <literal><union-"
"subclass></literal> マッピングを使う必要があります。"
-#. Tag: programlisting
-#: basic_mapping.xml:2168
-#, no-c-format
-msgid ""
-"<![CDATA[<union-subclass\n"
-" name=\"ClassName\"\n"
-" table=\"tablename\"\n"
-" proxy=\"ProxyInterface\"\n"
-" lazy=\"true|false\"\n"
-" dynamic-update=\"true|false\"\n"
-" dynamic-insert=\"true|false\"\n"
-" schema=\"schema\"\n"
-" catalog=\"catalog\"\n"
-" extends=\"SuperclassName\"\n"
-" abstract=\"true|false\"\n"
-" persister=\"ClassName\"\n"
-" subselect=\"SQL expression\"\n"
-" entity-name=\"EntityName\"\n"
-" node=\"element-name\">\n"
-"\n"
-" <property .... />\n"
-" .....\n"
-"</union-subclass>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:2195
#, no-c-format
msgid ""
"No discriminator column or key column is required for this mapping strategy."
msgstr "このマッピング戦略では識別カラムやキーカラムは必要ありません。"
#. Tag: title
-#: basic_mapping.xml:2206
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Join"
msgstr "join"
#. Tag: para
-#: basic_mapping.xml:2208
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Using the <literal><join></literal> element, it is
possible to map "
"properties of one class to several tables that have a one-to-one "
"relationship. For example:"
msgstr ""
-"<literal><join></literal> 要素を使うことで、 1つのクラスのプロパティを"
-"いくつものテーブルにマッピングすることができます。"
+"テーブル間に一対一の関係があるとき、 <literal><join></literal> 要素を使"
+"うことで、1つのクラスのプロパティをいくつものテーブルにマッピングすることが"
+"できます。"
-#. Tag: programlisting
-#: basic_mapping.xml:2222
-#, no-c-format
-msgid ""
-"<![CDATA[<join\n"
-" table=\"tablename\"\n"
-" schema=\"owner\"\n"
-" catalog=\"catalog\"\n"
-" fetch=\"join|select\"\n"
-" inverse=\"true|false\"\n"
-" optional=\"true|false\">\n"
-"\n"
-" <key ... />\n"
-"\n"
-" <property ... />\n"
-" ...\n"
-"</join>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:2226
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>table</literal>: the name of the joined table."
msgstr "<literal>table</literal> :結合したテーブルの名前"
#. Tag: para
-#: basic_mapping.xml:2243
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>fetch</literal> (optional - defaults to
<literal>join</literal>): "
"if set to <literal>join</literal>, the default, Hibernate will use an
inner "
@@ -4160,31 +2946,29 @@
"<literal><join></literal> defined by the class and its
superclasses."
msgstr ""
"<literal>fetch</literal> (オプション - デフォルトは
<literal>join</"
-"literal> ): <literal>join</literal> を設定した場合、 Hibernateはデフォルト"
+"literal> ): <literal>join</literal> を設定した場合、 Hibernate はデフォルト"
"で、クラスやスーパークラスで定義された <literal><join></literal> を検索"
"するのに内部結合を使い、サブクラスで定義された <literal><join></"
"literal> を検索するのに外部結合を使います。 <literal>select</literal> を設定"
-"した場合には、 Hibernateはサブクラスで定義された <literal><join></"
-"literal> の選択に順次選択を使います。この場合、 行がサブクラスのインスタンス"
-"を代表することがわかった場合にのみ発行されます。 内部結合はクラスやそのスー"
-"パークラスで定義された <literal><join></literal> を検索 するために使用"
-"します。"
+"した場合には、 Hibernate はサブクラスで定義された <literal><join></"
+"literal> の選択に順次選択を使います。この場合、行がサブクラスのインスタンスを"
+"代表することがわかった場合にのみ発行されます。内部結合はクラスやそのスーパー"
+"クラスで定義された <literal><join></literal> を検索するために使用しま"
+"す。"
#. Tag: para
-#: basic_mapping.xml:2256
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>inverse</literal> (optional - defaults to
<literal>false</"
"literal>): if enabled, Hibernate will not insert or update the properties
"
"defined by this join."
msgstr ""
"<literal>inverse</literal> (オプション - デフォルトは
<literal>false</"
-"literal> ): もし可能であれば、Hibernateはこの結合で定義されているプロパティに"
-"対し 挿入や更新を行いません。"
+"literal> ): もし可能であれば、 Hibernate はこの結合で定義されているプロパティ"
+"に対し挿入や更新を行いません。"
#. Tag: para
-#: basic_mapping.xml:2263
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>optional</literal> (optional - defaults to
<literal>false</"
"literal>): if enabled, Hibernate will insert a row only if the properties
"
@@ -4192,88 +2976,51 @@
"retrieve the properties."
msgstr ""
"<literal>optional</literal> (オプション - デフォルトは
<literal>false</"
-"literal> ): もし可能であれば、Hibernateはこの結合で定義されたプロパティがnull"
-"でない場合にのみ 行を挿入し、そのプロパティの検索には常に外部結合を使用しま"
-"す。"
+"literal> ): もし可能であれば、 Hibernate はこの結合で定義されたプロパティが "
+"null でない場合にのみ行を挿入し、そのプロパティの検索には常に外部結合を使用し"
+"ます。"
#. Tag: para
-#: basic_mapping.xml:2272
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For example, address information for a person can be mapped to a separate "
"table while preserving value type semantics for all properties:"
msgstr ""
"例えば人のアドレスの情報を分離したテーブルにマッピングすることが可能です (す"
-"べてのプロパティに対して値型のセマンティクスを保持します)。"
+"べてのプロパティに対して値型のセマンティクスを保持します):"
-#. Tag: programlisting
-#: basic_mapping.xml:2277
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\"\n"
-" table=\"PERSON\">\n"
-"\n"
-" <id name=\"id\"
column=\"PERSON_ID\">...</id>\n"
-"\n"
-" <join table=\"ADDRESS\">\n"
-" <key column=\"ADDRESS_ID\"/>\n"
-" <property name=\"address\"/>\n"
-" <property name=\"zip\"/>\n"
-" <property name=\"country\"/>\n"
-" </join>\n"
-" ...]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2279
-#, fuzzy, no-c-format
-msgid ""
"This feature is often only useful for legacy data models. We recommend fewer
"
"tables than classes and a fine-grained domain model. However, it is useful "
"for switching between inheritance mapping strategies in a single hierarchy, "
"as explained later."
msgstr ""
-"この特徴はしばしばレガシーデータモデルに対してのみ有用ですが、 クラスよりも少"
-"ないテーブルと、きめの細かいドメインモデルを推奨します。 しかし後で説明するよ"
+"この特徴はしばしばレガシーデータモデルに対してのみ有用ですが、クラスよりも少"
+"ないテーブルと、きめの細かいドメインモデルを推奨します。しかし後で説明するよ"
"うに、1つのクラス階層で継承のマッピング戦略を切り替える時には有用です。"
#. Tag: title
-#: basic_mapping.xml:2289
#, no-c-format
-msgid "<title>Key</title>"
+msgid "Key"
msgstr ""
#. Tag: para
-#: basic_mapping.xml:2291
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal><key></literal> element has featured a few
times within "
"this guide. It appears anywhere the parent mapping element defines a join to
"
"a new table that references the primary key of the original table. It also "
"defines the foreign key in the joined table:"
msgstr ""
-"今まで何度か <literal><key></literal> 要素が出てきました。 この要素は新"
-"しいテーブルへの結合を定義したり、 結合テーブルで外部キーを定義したりする親要"
-"素のどこにでも現れ、 オリジナルテーブルの主キーを参照します。"
+"今まで何度か <literal><key></literal> 要素が出てきました。この要素は新"
+"しいテーブルへの結合を定義したり、結合テーブルで外部キーを定義したりする親要"
+"素のどこにでも現れ、オリジナルテーブルの主キーを参照します。"
-#. Tag: programlisting
-#: basic_mapping.xml:2307
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<key\n"
-" column=\"columnname\"\n"
-" on-delete=\"noaction|cascade\"\n"
-" property-ref=\"propertyName\"\n"
-" not-null=\"true|false\"\n"
-" update=\"true|false\"\n"
-" unique=\"true|false\"\n"
-"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2318
-#, fuzzy, no-c-format
-msgid ""
"<literal>on-delete</literal> (optional - defaults to
<literal>noaction</"
"literal>): specifies whether the foreign key constraint has database-level
"
"cascade delete enabled."
@@ -4283,8 +3030,7 @@
"定します。"
#. Tag: para
-#: basic_mapping.xml:2325
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>property-ref</literal> (optional): specifies that the foreign
key "
"refers to columns that are not the primary key of the original table. It is "
@@ -4295,20 +3041,18 @@
"す)。"
#. Tag: para
-#: basic_mapping.xml:2332
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>not-null</literal> (optional): specifies that the foreign key
"
"columns are not nullable. This is implied whenever the foreign key is also "
"part of the primary key."
msgstr ""
-"<literal>not-null</literal> (オプション): 外部キーカラムがnull値を許容しない"
-"ことを指定します (このことは外部キーが主キーの一部であることを暗黙的に示しま"
-"す)。"
+"<literal>not-null</literal> (オプション): 外部キーカラムが null 値を許容しな"
+"いことを指定します (このことは外部キーが主キーの一部であることを暗黙的に示し"
+"ます)。"
#. Tag: para
-#: basic_mapping.xml:2339
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>update</literal> (optional): specifies that the foreign key
should "
"never be updated. This is implied whenever the foreign key is also part of "
@@ -4319,8 +3063,7 @@
"す)。"
#. Tag: para
-#: basic_mapping.xml:2346
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>unique</literal> (optional): specifies that the foreign key
should "
"have a unique constraint. This is implied whenever the foreign key is also "
@@ -4331,8 +3074,7 @@
"ます)。"
#. Tag: para
-#: basic_mapping.xml:2354
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For systems where delete performance is important, we recommend that all "
"keys should be defined
<literal>on-delete=\"cascade\"</literal>. Hibernate "
@@ -4341,16 +3083,15 @@
"that this feature bypasses Hibernate's usual optimistic locking strategy for
"
"versioned data."
msgstr ""
-"削除のパフォーマンスが重要であるシステムには、 すべてのキーを <literal>on-"
-"delete=\"cascade\"</literal> と定義することを推奨します。 そうすることで"
-"Hibernateは、<literal>DELETE</literal> 文を毎回発行する代わりに、 データベー"
-"スレベルの <literal>ON CASCADE DELETE</literal> 制約を使用します。 この特徴は"
-"バージョン付けられたデータに対するHibernateの通常の楽観的ロック戦略を 無視す"
+"削除のパフォーマンスが重要であるシステムには、すべてのキーを <literal>on-"
+"delete=\"cascade\"</literal> と定義することを推奨します。そうすることで "
+"Hibernate は、 <literal>DELETE</literal> 文を毎回発行する代わりに、データベー"
+"スレベルの <literal>ON CASCADE DELETE</literal> 制約を使用します。この特徴は"
+"バージョン付けられたデータに対する Hibernate の通常の楽観的ロック戦略を無視す"
"るということに注意してください。"
#. Tag: para
-#: basic_mapping.xml:2362
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>not-null</literal> and
<literal>update</literal> attributes are "
"useful when mapping a unidirectional one-to-many association. If you map a "
@@ -4359,19 +3100,17 @@
"null=\"true\"></literal>."
msgstr ""
"<literal>not-null</literal> と <literal>update</literal>
属性は、単方向一対多"
-"関連の時には有用です。 単方向一対多関連をnullを許容しない外部キーにマッピング"
-"するときは、 <literal><key
not-null=\"true\"></literal> を使ってキーカ"
-"ラムを宣言 <emphasis> しなくてはなりません</emphasis> 。"
+"関連の時には有用です。単方向一対多関連を null を許容しない外部キーにマッピン"
+"グするときは、 <literal><key
not-null=\"true\"></literal> を使ってキー"
+"カラムを宣言 <emphasis> しなくてはなりません</emphasis> 。"
#. Tag: title
-#: basic_mapping.xml:2372
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Column and formula elements"
msgstr "column と formula 要素"
#. Tag: para
-#: basic_mapping.xml:2373
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Mapping elements which accept a <literal>column</literal> attribute
will "
"alternatively accept a <literal><column></literal>
subelement. "
@@ -4379,66 +3118,28 @@
"<literal>formula</literal> attribute. For example:"
msgstr ""
"<literal>column</literal> 属性を記述できる任意のマッピング要素はまた、 "
-"<literal><column></literal> サブ要素も記述できます。 同様に "
+"<literal><column></literal> サブ要素も記述できます。同様に "
"<literal><formula></literal> も
<literal>formula</literal> 属性の代替手"
"段です。"
-#. Tag: programlisting
-#: basic_mapping.xml:2379
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<column\n"
-" name=\"column_name\"\n"
-" length=\"N\"\n"
-" precision=\"N\"\n"
-" scale=\"N\"\n"
-" not-null=\"true|false\"\n"
-" unique=\"true|false\"\n"
-" unique-key=\"multicolumn_unique_key_name\"\n"
-" index=\"index_name\"\n"
-" sql-type=\"sql_type_name\"\n"
-" check=\"SQL expression\"\n"
-" default=\"SQL expression\"/>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: basic_mapping.xml:2381
-#, no-c-format
-msgid "<![CDATA[<formula>SQL expression</formula>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2383
-#, fuzzy, no-c-format
-msgid ""
"<literal>column</literal> and <literal>formula</literal>
attributes can even "
"be combined within the same property or association mapping to express, for "
"example, exotic join conditions."
msgstr ""
"同じプロパティや関連のマッピングの中で、 <literal>column</literal> と "
-"<literal>formula</literal> 属性を組み合わせることができます。 例えば、特殊な"
-"結合条件などです。"
+"<literal>formula</literal> 属性を組み合わせることができます。例えば、特殊な結"
+"合条件などです。"
-#. Tag: programlisting
-#: basic_mapping.xml:2389
-#, no-c-format
-msgid ""
-"<![CDATA[<many-to-one name=\"homeAddress\"
class=\"Address\"\n"
-" insert=\"false\" update=\"false\">\n"
-" <column name=\"person_id\" not-null=\"true\"
length=\"10\"/>\n"
-" <formula>'MAILING'</formula>\n"
-"</many-to-one>]]>"
-msgstr ""
-
#. Tag: title
-#: basic_mapping.xml:2394
#, fuzzy, no-c-format
msgid "Import"
msgstr "import"
#. Tag: para
-#: basic_mapping.xml:2396
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If your application has two persistent classes with the same name, and you "
"do not want to specify the fully qualified package name in Hibernate "
@@ -4446,54 +3147,34 @@
"<literal>auto-import=\"true\"</literal>. You can also import
classes and "
"interfaces that are not explicitly mapped:"
msgstr ""
-"アプリケーションに同じ名前の2つの永続クラスがあり、 Hibernateクエリで完全修飾"
-"された(パッケージの)名前を指定したくないと仮定します。 そのような場合は "
-"<literal>auto-import=\"true\"</literal> に頼らず、
クラスが「インポート」され"
-"たものであると明示できます。 明示的にマッピングされていないクラスやインター"
-"フェイスでさえもインポートできます。"
+"アプリケーションに同じ名前の2つの永続クラスがあり、 Hibernate クエリで完全修"
+"飾された(パッケージの)名前を指定したくないと仮定します。そのような場合は "
+"<literal>auto-import=\"true\"</literal>
に頼らず、クラスが「インポート」され"
+"たものであると明示できます。明示的にマッピングされていないクラスやインター"
+"フェースでさえもインポートできます。"
-#. Tag: programlisting
-#: basic_mapping.xml:2403
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[<import class=\"java.lang.Object\"
rename=\"Universe\"/>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: basic_mapping.xml:2410
-#, no-c-format
msgid ""
-"<![CDATA[<import\n"
-" class=\"ClassName\"\n"
-" rename=\"ShortName\"\n"
-"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2413
-#, fuzzy, no-c-format
-msgid ""
"<literal>class</literal>: the fully qualified class name of any Java
class."
-msgstr "<literal>class</literal>:Javaクラスの完全修飾されたクラス名。"
+msgstr "<literal>class</literal>: Java クラスの完全修飾されたクラス名。"
#. Tag: para
-#: basic_mapping.xml:2418
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>rename</literal> (optional - defaults to the unqualified class
"
"name): a name that can be used in the query language."
msgstr ""
-"<literal>rename</literal>(オプション - デフォルトは修飾されていないクラス"
+"<literal>rename</literal> (オプション - デフォルトは修飾されていないクラス"
"名): クエリ言語で使われる名前。"
#. Tag: title
-#: basic_mapping.xml:2429
#, no-c-format
-msgid "<title>Any</title>"
+msgid "Any"
msgstr ""
#. Tag: para
-#: basic_mapping.xml:2431
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There is one more type of property mapping. The
<literal><any></"
"literal> mapping element defines a polymorphic association to classes from
"
@@ -4505,17 +3186,16 @@
"cases. For example, for audit logs, user session data, etc."
msgstr ""
"プロパティマッピングにはさらにもう1つの型があります。 <literal><any></"
-"literal> マッピング要素は、 複数のテーブルからクラスへのポリモーフィックな関"
-"連を定義します。 この型のマッピングには必ず複数のカラムが必要です。1番目のカ"
-"ラムは関連エンティティの型を保持します。 残りのカラムは識別子を保持します。こ"
-"の種類の関連には外部キー制約を指定することはできません。 そのためこれは最も使"
-"われることのない(ポリモーフィックな)関連のマッピング方法です。 非常に特別な"
-"場合(例えば、検査ログやユーザセッションデータなど)に限って、これを使うべきで"
+"literal> マッピング要素は、複数のテーブルからクラスへのポリモーフィックな関連"
+"を定義します。この型のマッピングには必ず複数のカラムが必要です。1番目のカラム"
+"は関連エンティティの型を保持します。残りのカラムは識別子を保持します。この種"
+"類の関連には外部キー制約を指定することはできません。そのためこれは最も使われ"
+"ることのない(ポリモーフィックな)関連のマッピング方法です。非常に特別な場合"
+"(例えば、検査ログやユーザーセッションデータなど)に限って、これを使うべきで"
"す。"
#. Tag: para
-#: basic_mapping.xml:2441
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>meta-type</literal> attribute allows the application to
specify "
"a custom type that maps database column values to persistent classes that "
@@ -4523,69 +3203,31 @@
"literal>. You must specify the mapping from values of the meta-type to class
"
"names."
msgstr ""
-"<literal>meta-type</literal> により、 アプリケーションはカスタム型を指定でき"
-"ます。このカスタム型は データベースカラムの値を、<literal>id-type</literal> "
-"で指定した型の 識別子プロパティを持った永続クラスへマッピングします。 meta-"
-"typeの値からクラス名へのマッピングを指定しなければなりません。"
+"<literal>meta-type</literal> により、アプリケーションはカスタム型を指定できま"
+"す。このカスタム型はデータベースカラムの値を、 <literal>id-type</literal> で"
+"指定した型の識別子プロパティを持った永続クラスへマッピングします。 meta-type "
+"の値からクラス名へのマッピングを指定しなければなりません。"
-#. Tag: programlisting
-#: basic_mapping.xml:2448
-#, no-c-format
-msgid ""
-"<![CDATA[<any name=\"being\" id-type=\"long\"
meta-type=\"string\">\n"
-" <meta-value value=\"TBL_ANIMAL\"
class=\"Animal\"/>\n"
-" <meta-value value=\"TBL_HUMAN\"
class=\"Human\"/>\n"
-" <meta-value value=\"TBL_ALIEN\"
class=\"Alien\"/>\n"
-" <column name=\"table_name\"/>\n"
-" <column name=\"id\"/>\n"
-"</any>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: basic_mapping.xml:2459
-#, no-c-format
-msgid ""
-"<![CDATA[<any\n"
-" name=\"propertyName\"\n"
-" id-type=\"idtypename\"\n"
-" meta-type=\"metatypename\"\n"
-" cascade=\"cascade_style\"\n"
-" access=\"field|property|ClassName\"\n"
-" optimistic-lock=\"true|false\"\n"
-">\n"
-" <meta-value ... />\n"
-" <meta-value ... />\n"
-" .....\n"
-" <column .... />\n"
-" <column .... />\n"
-" .....\n"
-"</any>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:2462
#, no-c-format
msgid "<literal>name</literal>: the property name."
-msgstr "<literal>name</literal>:プロパティ名。"
+msgstr "<literal>name</literal>: プロパティ名。"
#. Tag: para
-#: basic_mapping.xml:2467
#, no-c-format
msgid "<literal>id-type</literal>: the identifier type."
-msgstr "<literal>id-type</literal>:識別子の型。"
+msgstr "<literal>id-type</literal>: 識別子の型。"
#. Tag: para
-#: basic_mapping.xml:2472
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>meta-type</literal> (optional - defaults to
<literal>string</"
"literal>): any type that is allowed for a discriminator mapping."
msgstr ""
"<literal>meta-type</literal>(オプション - デフォルトは
<literal>string</"
-"literal> ): ディスクリミネータマッピングで許された型"
+"literal> ): ディスクリミネータマッピングで許された型。"
#. Tag: para
-#: basic_mapping.xml:2478
#, no-c-format
msgid ""
"<literal>cascade</literal> (optional- defaults to
<literal>none</literal>): "
@@ -4595,8 +3237,7 @@
"literal> ): カスケードのスタイル。"
#. Tag: para
-#: basic_mapping.xml:2490
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>optimistic-lock</literal> (optional - defaults to
<literal>true</"
"literal>): specifies that updates to this property either do or do not "
@@ -4605,23 +3246,20 @@
msgstr ""
"<literal>optimistic-lock</literal> (オプション - デフォルトは
<literal>true</"
"literal> ): このプロパティの更新に楽観ロックの取得を要求するかどうかを指定し"
-"ます。 言い換えれば、このプロパティがダーティであるときにバージョンを増やすべ"
+"ます。言い換えれば、このプロパティがダーティであるときにバージョンを増やすべ"
"きかを定義します。"
#. Tag: title
-#: basic_mapping.xml:2505
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Hibernate types"
-msgstr "Hibernateの型"
+msgstr "Hibernate の型"
#. Tag: title
-#: basic_mapping.xml:2508
#, no-c-format
msgid "Entities and values"
msgstr "エンティティと値"
#. Tag: para
-#: basic_mapping.xml:2510
#, no-c-format
msgid ""
"In relation to the persistence service, Java language-level objects are "
@@ -4629,8 +3267,7 @@
msgstr ""
#. Tag: para
-#: basic_mapping.xml:2515
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An <emphasis>entity</emphasis> exists independently of any other
objects "
"holding references to the entity. Contrast this with the usual Java model, "
@@ -4642,19 +3279,18 @@
"large systems. Entities support circular and shared references. They can "
"also be versioned."
msgstr ""
-"<emphasis> エンティティ</emphasis> はエンティティへの参照を保持する、 他のす"
-"べてのオブジェクトから独立して存在します。 参照されないオブジェクトがガベージ"
-"コレクトされてしまう性質を持つ通常のJavaモデルと、 これを比べてみてくださ"
-"い。 (親エンティティから子へ、セーブと削除が <emphasis>カスケード</"
-"emphasis> されうることを除いて) エンティティは明示的にセーブまたは削除されな"
-"ければなりません。 これは到達可能性によるオブジェクト永続化のODMGモデルとは異"
-"なっています。 大規模なシステムでアプリケーションオブジェクトが普通どのように"
-"使われるかにより密接に対応します。 エンティティは循環と参照の共有をサポートし"
-"ます。 またそれらはバージョン付けすることもできます。"
+"<emphasis>エンティティ</emphasis> はエンティティへの参照を保持する、他のすべ"
+"てのオブジェクトから独立して存在します。参照されないオブジェクトがガベージコ"
+"レクトされてしまう性質を持つ通常の Java モデルと、これを比べてみてください。"
+"(親エンティティから子へ、セーブと削除が <emphasis>カスケード</emphasis> され"
+"うることを除いて)エンティティは明示的にセーブまたは削除されなければなりませ"
+"ん。これは到達可能性によるオブジェクト永続化の ODMG モデルとは異なっていま"
+"す。大規模なシステムでアプリケーションオブジェクトが普通どのように使われるか"
+"により密接に対応します。エンティティは循環と参照の共有をサポートします。また"
+"それらはバージョン付けすることもできます。"
#. Tag: para
-#: basic_mapping.xml:2526
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An entity's persistent state consists of references to other entities and
"
"instances of <emphasis>value</emphasis> types. Values are primitives:
"
@@ -4666,18 +3302,17 @@
"no independent identity, so they cannot be shared by two entities or "
"collections."
msgstr ""
-"エンティティの永続状態は他のエンティティや <emphasis>値</emphasis> 型の イン"
-"スタンスへの参照から構成されます。 値はプリミティブ、コレクション(コレクショ"
-"ンの内部ではなく)、 コンポーネント、不変オブジェクトです。 エンティティとは違"
-"い、値は(特にコレクションとコンポーネントにおいて)、 到達可能性による永続化"
-"や削除が <emphasis>行われます</emphasis> 。 値オブジェクト(とプリミティブ)"
-"は、包含するエンティティと一緒に永続化や削除が行われるので、 それらを独立に"
-"バージョン付けすることはできません。 値には独立したアイデンティティがないの"
-"で、 複数のエンティティやコレクションがこれを共有することはできません。"
+"エンティティの永続状態は他のエンティティや <emphasis>値</emphasis> 型のインス"
+"タンスへの参照から構成されます。値はプリミティブ、コレクション (コレクション"
+"の内部ではなく)、コンポーネント、不変オブジェクトです。エンティティとは違い、"
+"値は(特にコレクションとコンポーネントにおいて)、到達可能性による永続化や削"
+"除が <emphasis>行われます</emphasis> 。値オブジェクト(とプリミティブ)は、包"
+"含するエンティティと一緒に永続化や削除が行われるので、それらを独立にバージョ"
+"ン付けすることはできません。値には独立したアイデンティティがないので、複数の"
+"エンティティやコレクションがこれを共有することはできません。"
#. Tag: para
-#: basic_mapping.xml:2537
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Until now, we have been using the term \"persistent class\" to refer to
"
"entities. We will continue to do that. Not all user-defined classes with a "
@@ -4691,26 +3326,24 @@
"single instance of that class, while composition or aggregation usually "
"translates to a value type."
msgstr ""
-"これまで「永続クラス」という言葉をエンティティの意味で使ってきました。 これか"
-"らもそうしていきます。 厳密に言うと、永続状態を持つユーザ定義のクラスのすべて"
-"が エンティティというわけではありません。 <emphasis>コンポーネント</"
-"emphasis> は値のセマンティクスを持つユーザ定義クラスです。 <literal>java."
-"lang.String</literal> 型のプロパティもまた値のセマンティクスを持ちます。 定義"
-"するなら、JDKで提供されているすべてのJavaの型(クラス)が値のセマンティクスを持"
-"つといえます。 一方ユーザ定義型は、エンティティや値型のセマンティクスとともに"
-"マッピングできます。 この決定はアプリケーション開発者次第です。 そのクラスの"
-"1つのインスタンスへの共有参照は、 ドメインモデル内のエンティティクラスに対す"
-"る良いヒントになります。 一方合成集約や集約は、通常値型へ変換されます。"
+"これまで「永続クラス」という言葉をエンティティの意味で使ってきました。これか"
+"らもそうしていきます。厳密に言うと、永続状態を持つユーザー定義のクラスのすべ"
+"てがエンティティというわけではありません。 <emphasis>コンポーネント</"
+"emphasis> は値のセマンティクスを持つユーザー定義クラスです。 <literal>java."
+"lang.String</literal> 型のプロパティもまた値のセマンティクスを持ちます。定義"
+"するなら、 JDK で提供されているすべての Java の型 (クラス) が値のセマンティク"
+"スを持つといえます。一方ユーザー定義型は、エンティティや値型のセマンティクス"
+"とともにマッピングできます。この決定はアプリケーション開発者次第です。そのク"
+"ラスの1つのインスタンスへの共有参照は、ドメインモデル内のエンティティクラス"
+"に対する良いヒントになります。一方合成集約や集約は、通常値型へ変換されます。"
#. Tag: para
-#: basic_mapping.xml:2551
-#, fuzzy, no-c-format
+#, no-c-format
msgid "We will revisit both concepts throughout this reference guide."
msgstr "本ドキュメントを通して、何度もこの概念を取り上げます。"
#. Tag: para
-#: basic_mapping.xml:2555
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The challenge is to map the Java type system, and the developers' definition
"
"of entities and value types, to the SQL/database type system. The bridge "
@@ -4723,54 +3356,49 @@
"for standard JDK value types out of the box. You can write your own mapping "
"types and implement your own custom conversion strategies."
msgstr ""
-"Java型のシステム(もしくは開発者が定義したエンティティと値型)を SQL/データベー"
-"ス型のシステムにマッピングすることは難しいです。 Hibernateは2つのシステムの"
-"架け橋を提供します。 エンティティに対しては <literal><class></literal> "
-"や <literal><subclass></literal> などを使用します。 値型に対しては "
-"<literal><property></literal> や
<literal><component></literal> "
-"などを、通常 <literal>type</literal> とともに使います。 この属性の値は"
-"Hibernateの <emphasis>マッピング型</emphasis> の名前です。 Hibernateは(標準"
-"JDKの値型に対して)多くの自由なマッピングを提供します。 後で見るように、自身の"
-"マッピング型を記述し、同様にカスタムの変換戦略を実装することができます。"
+"Java 型のシステム (もしくは開発者が定義したエンティティと値型) を SQL /データ"
+"ベース型のシステムにマッピングすることは難しいです。 Hibernate は2つのシステ"
+"ムの架け橋を提供します。エンティティに対しては <literal><class></"
+"literal> や <literal><subclass></literal>
などを使用します。値型に対し"
+"ては <literal><property></literal> や
<literal><component></"
+"literal> などを、通常 <literal>type</literal> と共に使います。この属性の値は "
+"Hibernate の <emphasis>マッピング型</emphasis> の名前です。 Hibernate は (標"
+"準 JDK の値型に対して) 多くの自由なマッピングを提供します。後で見るように、自"
+"身のマッピング型を記述し、同様にカスタムの変換戦略を実装することができます。"
#. Tag: para
-#: basic_mapping.xml:2568
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"With the exception of collections, all built-in Hibernate types support null
"
"semantics."
msgstr ""
-"コレクションを除く組み込みのHibernateの型はすべて、nullセマンティクスをサポー"
-"トします。"
+"コレクションを除く組み込みの Hibernate の型はすべて、 null セマンティクスをサ"
+"ポートします。"
#. Tag: title
-#: basic_mapping.xml:2575
#, no-c-format
msgid "Basic value types"
msgstr "基本的な型"
#. Tag: para
-#: basic_mapping.xml:2577
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The built-in <emphasis>basic mapping types</emphasis> can be roughly
"
"categorized into the following:"
msgstr ""
"組み込みの <emphasis>基本的なマッピング型</emphasis> は大まかに以下のように分"
-"けられます。 <placeholder-1/>"
+"けられます。"
-#. Tag: literal
-#: basic_mapping.xml:2582
+#. Tag: term
#, no-c-format
msgid ""
-"integer, long, short, float, double, character, byte, boolean, yes_no, "
-"true_false"
+"<literal>integer, long, short, float, double, character, byte, boolean,
"
+"yes_no, true_false</literal>"
msgstr ""
-"integer, long, short, float, double, character, byte, boolean, yes_no, "
-"true_false"
+"<literal>integer, long, short, float, double, character, byte, boolean,
"
+"yes_no, true_false</literal>"
#. Tag: para
-#: basic_mapping.xml:2585
#, no-c-format
msgid ""
"Type mappings from Java primitives or wrapper classes to appropriate
(vendor-"
@@ -4778,70 +3406,62 @@
"<literal>true_false</literal> are all alternative encodings for a Java
"
"<literal>boolean</literal> or
<literal>java.lang.Boolean</literal>."
msgstr ""
-"Javaのプリミティブやラッパークラスから適切な(ベンダー固有の) SQLカラム型へ"
-"の型マッピング。 <literal>boolean, yes_no</literal> と
<literal>true_false</"
-"literal> は、 すべてJavaの <literal>boolean</literal> または
<literal>java."
-"lang.Boolean</literal> の代替エンコードです。"
+"Java のプリミティブやラッパークラスから適切な(ベンダー固有の) SQL カラム型"
+"への型マッピング。 <literal>boolean, yes_no</literal> と "
+"<literal>true_false</literal> は、すべて Java の
<literal>boolean</literal> "
+"または <literal>java.lang.Boolean</literal> の代替エンコードです。"
-#. Tag: literal
-#: basic_mapping.xml:2594
+#. Tag: term
#, no-c-format
-msgid "string"
-msgstr "string"
+msgid "<literal>string</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:2596
#, no-c-format
msgid ""
"A type mapping from <literal>java.lang.String</literal> to
<literal>VARCHAR</"
"literal> (or Oracle <literal>VARCHAR2</literal>)."
msgstr ""
-"<literal>java.lang.String</literal> から
<literal>VARCHAR</literal> (または"
-"Oracleの <literal>VARCHAR2</literal> )への型マッピング。"
+"<literal>java.lang.String</literal> から
<literal>VARCHAR</literal> (または "
+"Oracle の <literal>VARCHAR2</literal> )への型マッピング。"
-#. Tag: literal
-#: basic_mapping.xml:2603
+#. Tag: term
#, no-c-format
-msgid "date, time, timestamp"
-msgstr "date, time, timestamp"
+msgid "<literal>date, time, timestamp</literal>"
+msgstr "<literal>date, time, timestamp</literal>"
#. Tag: para
-#: basic_mapping.xml:2605
#, no-c-format
msgid ""
"Type mappings from <literal>java.util.Date</literal> and its subclasses
to "
"SQL types <literal>DATE</literal>, <literal>TIME</literal>
and "
"<literal>TIMESTAMP</literal> (or equivalent)."
msgstr ""
-"<literal>java.util.Date</literal> とそのサブクラスからSQL型の
<literal>DATE</"
-"literal>, <literal>TIME</literal> ,
<literal>TIMESTAMP</literal> (またはそれ"
-"らと等価なもの) への型マッピング。"
+"<literal>java.util.Date</literal> とそのサブクラスから SQL 型の "
+"<literal>DATE</literal> 、 <literal>TIME</literal> 、
<literal>TIMESTAMP</"
+"literal> (またはそれらと等価なもの) への型マッピング。"
-#. Tag: literal
-#: basic_mapping.xml:2613
+#. Tag: term
#, no-c-format
-msgid "calendar, calendar_date"
-msgstr "calendar, calendar_date"
+msgid "<literal>calendar, calendar_date</literal>"
+msgstr "<literal>calendar, calendar_date</literal>"
#. Tag: para
-#: basic_mapping.xml:2615
#, no-c-format
msgid ""
"Type mappings from <literal>java.util.Calendar</literal> to SQL types
"
"<literal>TIMESTAMP</literal> and <literal>DATE</literal>
(or equivalent)."
msgstr ""
-"<literal>java.util.Calendar</literal> からSQL型 の「
<literal>TIMESTAMP</"
-"literal> , <literal>DATE</literal> (またはそれらと等価なもの)への型マッピン"
+"<literal>java.util.Calendar</literal> から SQL 型 の「
<literal>TIMESTAMP</"
+"literal> 、 <literal>DATE</literal> (またはそれらと等価なもの)への型マッピン"
"グ。"
-#. Tag: literal
-#: basic_mapping.xml:2623
+#. Tag: term
#, no-c-format
-msgid "big_decimal, big_integer"
-msgstr "big_decimal, big_integer"
+msgid "<literal>big_decimal, big_integer</literal>"
+msgstr "<literal>big_decimal, big_integer</literal>"
#. Tag: para
-#: basic_mapping.xml:2625
#, no-c-format
msgid ""
"Type mappings from <literal>java.math.BigDecimal</literal> and
<literal>java."
@@ -4849,17 +3469,15 @@
"<literal>NUMBER</literal>)."
msgstr ""
"<literal>java.math.BigDecimal</literal> と
<literal>java.math.BigInteger</"
-"literal> から <literal>NUMERIC</literal>(またはOracleの
<literal>NUMBER</"
+"literal> から <literal>NUMERIC</literal>(または Oracle の
<literal>NUMBER</"
"literal> )への型マッピング。"
-#. Tag: literal
-#: basic_mapping.xml:2633
+#. Tag: term
#, no-c-format
-msgid "locale, timezone, currency"
-msgstr "locale, timezone, currency"
+msgid "<literal>locale, timezone, currency</literal>"
+msgstr "<literal>locale, timezone, currency</literal>"
#. Tag: para
-#: basic_mapping.xml:2635
#, no-c-format
msgid ""
"Type mappings from <literal>java.util.Locale</literal>,
<literal>java.util."
@@ -4869,111 +3487,99 @@
"mapped to their ISO codes. Instances of <literal>TimeZone</literal> are
"
"mapped to their <literal>ID</literal>."
msgstr ""
-"<literal>java.util.Locale</literal> ,
<literal>java.util.TimeZone</"
-"literal> , <literal>java.util.Currency</literal> から
<literal>VARCHAR</"
-"literal> (またはOracleの <literal>VARCHAR2</literal> )への型マッピング。 "
-"<literal>Locale</literal> と <literal>Currency</literal>
のインスタンスは、 "
-"それらのISOコードにマッピングされます。 <literal>TimeZone</literal> のインス"
-"タンスは、 それらの <literal>ID</literal> にマッピングされます。"
+"<literal>java.util.Locale</literal> 、
<literal>java.util.TimeZone</"
+"literal> 、 <literal>java.util.Currency</literal> から
<literal>VARCHAR</"
+"literal> (または Oracle の <literal>VARCHAR2</literal> )への型マッピング。
"
+"<literal>Locale</literal> と <literal>Currency</literal>
のインスタンスは、そ"
+"れらの ISO コードにマッピングされます。 <literal>TimeZone</literal> のインス"
+"タンスは、それらの <literal>ID</literal> にマッピングされます。"
-#. Tag: literal
-#: basic_mapping.xml:2647
+#. Tag: term
#, no-c-format
-msgid "class"
-msgstr "class"
+msgid "<literal>class</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:2649
#, no-c-format
msgid ""
"A type mapping from <literal>java.lang.Class</literal> to
<literal>VARCHAR</"
"literal> (or Oracle <literal>VARCHAR2</literal>). A
<literal>Class</literal> "
"is mapped to its fully qualified name."
msgstr ""
-"<literal>java.lang.Class</literal> から
<literal>VARCHAR</literal> (または"
-"Oracleの <literal>VARCHAR2</literal> )への型マッピング。
<literal>Class</"
+"<literal>java.lang.Class</literal> から
<literal>VARCHAR</literal> (または "
+"Oracle の <literal>VARCHAR2</literal> )への型マッピング。
<literal>Class</"
"literal> はその完全修飾された名前にマッピングされます。"
-#. Tag: literal
-#: basic_mapping.xml:2657
+#. Tag: term
#, no-c-format
-msgid "binary"
-msgstr "binary"
+msgid "<literal>binary</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:2659
#, no-c-format
msgid "Maps byte arrays to an appropriate SQL binary type."
-msgstr "バイト配列は、適切なSQLのバイナリ型にマッピングされます。"
+msgstr "バイト配列は、適切な SQL のバイナリ型にマッピングされます。"
-#. Tag: literal
-#: basic_mapping.xml:2665
+#. Tag: term
#, no-c-format
-msgid "text"
-msgstr "text"
+msgid "<literal>text</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:2667
#, no-c-format
msgid ""
"Maps long Java strings to a SQL <literal>CLOB</literal> or
<literal>TEXT</"
"literal> type."
msgstr ""
-"長いJava文字列は、SQLの <literal>CLOB</literal> または
<literal>TEXT</"
+"長い Java 文字列は、 SQL の <literal>CLOB</literal> または
<literal>TEXT</"
"literal> 型にマッピングされます。"
-#. Tag: literal
-#: basic_mapping.xml:2674
+#. Tag: term
#, no-c-format
-msgid "serializable"
-msgstr "serializable"
+msgid "<literal>serializable</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:2676
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Maps serializable Java types to an appropriate SQL binary type. You can also
"
"indicate the Hibernate type <literal>serializable</literal> with the
name of "
"a serializable Java class or interface that does not default to a basic
type."
msgstr ""
-"シリアライズ可能なJava型は、適切なSQLのバイナリ型にマッピングされます。 デ"
-"フォルトで基本型ではないシリアライズ可能なJavaクラスや インターフェイスの名前"
-"を指定することで、 Hibernateの型を <literal>serializable</literal> とすること"
-"もできます。"
+"シリアライズ可能な Java 型は、適切な SQL のバイナリ型にマッピングされます。デ"
+"フォルトで基本型ではないシリアライズ可能な Java クラスやインターフェースの名"
+"前を指定することで、 Hibernate の型を <literal>serializable</literal> とする"
+"こともできます。"
-#. Tag: literal
-#: basic_mapping.xml:2685
+#. Tag: term
#, no-c-format
-msgid "clob, blob"
-msgstr "clob, blob"
+msgid "<literal>clob, blob</literal>"
+msgstr ""
#. Tag: para
-#: basic_mapping.xml:2687
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Type mappings for the JDBC classes <literal>java.sql.Clob</literal> and
"
"<literal>java.sql.Blob</literal>. These types can be inconvenient for
some "
"applications, since the blob or clob object cannot be reused outside of a "
"transaction. Driver support is patchy and inconsistent."
msgstr ""
-"JDBCクラス <literal>java.sql.Clob</literal> と
<literal>java.sql.Blob</"
-"literal> に対する型マッピング。 blobやclobオブジェクトはトランザクションの外"
-"では再利用できないため、 アプリケーションによっては不便かもしれません。 (さ"
+"JDBC クラス <literal>java.sql.Clob</literal> と
<literal>java.sql.Blob</"
+"literal> に対する型マッピング。 blob や clob オブジェクトはトランザクションの"
+"外では再利用できないため、アプリケーションによっては不便かもしれません。(さ"
"らにはドライバサポートが一貫していません。)"
-#. Tag: literal
-#: basic_mapping.xml:2697
+#. Tag: term
#, no-c-format
msgid ""
-"imm_date, imm_time, imm_timestamp, imm_calendar, imm_calendar_date, "
-"imm_serializable, imm_binary"
+"<literal>imm_date, imm_time, imm_timestamp, imm_calendar, imm_calendar_date,
"
+"imm_serializable, imm_binary</literal>"
msgstr ""
-"imm_date, imm_time, imm_timestamp, imm_calendar, imm_calendar_date, "
-"imm_serializable, imm_binary"
+"<literal>imm_date, imm_time, imm_timestamp, imm_calendar, imm_calendar_date,
"
+"imm_serializable, imm_binary</literal>"
#. Tag: para
-#: basic_mapping.xml:2701
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Type mappings for what are considered mutable Java types. This is where "
"Hibernate makes certain optimizations appropriate only for immutable Java "
@@ -4983,28 +3589,27 @@
"have that change made persistent, the application must assign a new, "
"nonidentical, object to the property."
msgstr ""
-"ほとんどの場合に可変であるJavaの型に対する型マッピング。 Hibernateは不変な"
-"Javaの型に対しては最適化を行い、 アプリケーションはそれを不変オブジェクトとし"
-"て扱います。 例えば <literal>imm_timestamp</literal> としてマップしたインスタ"
-"ンスに対して、 <literal>Date.setTime()</literal> を呼び出してはなりません。 "
-"プロパティの値を変更しその変更を永続化するためには、 アプリケーションはプロパ"
-"ティに対して新しい(同一でない)オブジェクトを割り当てなければなりません。"
+"ほとんどの場合に可変である Java の型に対する型マッピング。 Hibernate は不変"
+"な Java の型に対しては最適化を行い、アプリケーションはそれを不変オブジェクト"
+"として扱います。例えば <literal>imm_timestamp</literal> としてマップしたイン"
+"スタンスに対して、 <literal>Date.setTime()</literal> を呼び出してはなりませ"
+"ん。プロパティの値を変更しその変更を永続化するためには、アプリケーションはプ"
+"ロパティに対して新しい (同一でない) オブジェクトを割り当てなければなりませ"
+"ん。"
#. Tag: para
-#: basic_mapping.xml:2716
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Unique identifiers of entities and collections can be of any basic type "
"except <literal>binary</literal>, <literal>blob</literal>
and <literal>clob</"
"literal>. Composite identifiers are also allowed. See below for more "
"information."
msgstr ""
-"エンティティとコレクションのユニークな識別子は、<literal>binary</literal> , "
-"<literal>blob</literal> , <literal>clob</literal>
を除く、どんな基本型でも構"
-"いません。 (複合識別子でも構いません。以下を見てください。)"
+"エンティティとコレクションのユニークな識別子は、 <literal>binary</"
+"literal> 、 <literal>blob</literal> 、
<literal>clob</literal> を除く、どんな"
+"基本型でも構いません。(複合識別子でも構いません。以下を見てください。)"
#. Tag: para
-#: basic_mapping.xml:2722
#, no-c-format
msgid ""
"The basic value types have corresponding <literal>Type</literal>
constants "
@@ -5012,19 +3617,17 @@
"<literal>Hibernate.STRING</literal> represents the
<literal>string</literal> "
"type."
msgstr ""
-"基本的な値型には、<literal>org.hibernate.Hibernate</literal> で定義された "
-"<literal>Type</literal> 定数がそれぞれあります。
例えば、<literal>Hibernate."
+"基本的な値型には、 <literal>org.hibernate.Hibernate</literal> で定義された "
+"<literal>Type</literal> 定数がそれぞれあります。例えば、
<literal>Hibernate."
"STRING</literal> は <literal>string</literal> 型を表現しています。"
#. Tag: title
-#: basic_mapping.xml:2731
#, no-c-format
msgid "Custom value types"
msgstr "カスタム型"
#. Tag: para
-#: basic_mapping.xml:2733
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is relatively easy for developers to create their own value types. For "
"example, you might want to persist properties of type
<literal>java.lang."
@@ -5036,19 +3639,18 @@
"that is persisted to the columns <literal>FIRST_NAME</literal>, "
"<literal>INITIAL</literal>,
<literal>SURNAME</literal>."
msgstr ""
-"開発者が独自の値型を作成することは、比較的簡単です。 例えば、<literal>java."
+"開発者が独自の値型を作成することは、比較的簡単です。例えば、 <literal>java."
"lang.BigInteger</literal> 型のプロパティを <literal>VARCHAR</literal>
カラム"
-"に永続化したいかもしれません。 Hibernateはこのための組み込み型を用意していま"
-"せん。 しかしカスタム型は、プロパティ(またはコレクションの要素)を1つのテー"
-"ブルカラムに マッピングするのに制限はありません。 そのため例えば、"
-"<literal>java.lang.String</literal> 型の
<literal>getName()</literal> / "
-"<literal>setName()</literal> Javaプロパティを
<literal>FIRST_NAME</"
-"literal> , <literal>INITIAL</literal>,
<literal>SURNAME</literal> カラムに永"
-"続化できます。"
+"に永続化したいかもしれません。 Hibernate はこのための組み込み型を用意していま"
+"せん。しかしカスタム型は、プロパティ(またはコレクションの要素)を1つのテーブ"
+"ルカラムにマッピングするのに制限はありません。そのため例えば、 <literal>java."
+"lang.String</literal> 型の <literal>getName()</literal> /
<literal>setName()"
+"</literal> Java プロパティを <literal>FIRST_NAME</literal> 、 "
+"<literal>INITIAL</literal> 、 <literal>SURNAME</literal>
カラムに永続化できま"
+"す。"
#. Tag: para
-#: basic_mapping.xml:2744
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"To implement a custom type, implement either <literal>org.hibernate."
"UserType</literal> or
<literal>org.hibernate.CompositeUserType</literal> and "
@@ -5056,35 +3658,22 @@
"<literal>org.hibernate.test.DoubleStringType</literal> to see the kind
of "
"things that are possible."
msgstr ""
-"カスタム型を実装するには、<literal>org.hibernate.UserType</literal> または "
-"<literal>org.hibernate.CompositeUserType</literal> を実装し、 型の完全修飾さ"
-"れた名前を使ってプロパティを定義します。 どのような種類のものが可能かを調べる"
-"には、 <literal>org.hibernate.test.DoubleStringType</literal>
を確認してくだ"
-"さい。"
+"カスタム型を実装するには、 <literal>org.hibernate.UserType</literal> または "
+"<literal>org.hibernate.CompositeUserType</literal> を実装し、型の完全修飾され"
+"た名前を使ってプロパティを定義します。どのような種類のものが可能かを調べるに"
+"は、 <literal>org.hibernate.test.DoubleStringType</literal>
を確認してくださ"
+"い。"
-#. Tag: programlisting
-#: basic_mapping.xml:2752
-#, no-c-format
-msgid ""
-"<![CDATA[<property name=\"twoStrings\"
type=\"org.hibernate.test."
-"DoubleStringType\">\n"
-" <column name=\"first_string\"/>\n"
-" <column name=\"second_string\"/>\n"
-"</property>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:2754
#, no-c-format
msgid ""
"Notice the use of <literal><column></literal> tags to map
a property "
"to multiple columns."
msgstr ""
-"<literal><column></literal> タグで、 プロパティを複数のカラムへマッピン"
+"<literal><column></literal> タグで、プロパティを複数のカラムへマッピン"
"グできることに注目してください。"
#. Tag: para
-#: basic_mapping.xml:2759
#, no-c-format
msgid ""
"The <literal>CompositeUserType</literal>,
<literal>EnhancedUserType</"
@@ -5092,13 +3681,13 @@
"<literal>UserVersionType</literal> interfaces provide support for more
"
"specialized uses."
msgstr ""
-"<literal>CompositeUserType</literal> ,
<literal>EnhancedUserType</literal> , "
-"<literal>UserCollectionType</literal> ,
<literal>UserVersionType</literal> イ"
-"ンターフェイスは、より特殊な使用法に対してのサポートを提供します。"
+"<literal>CompositeUserType</literal> 、
<literal>EnhancedUserType</"
+"literal> 、 <literal>UserCollectionType</literal> 、 "
+"<literal>UserVersionType</literal> インターフェースは、より特殊な使用法に対し"
+"てのサポートを提供します。"
#. Tag: para
-#: basic_mapping.xml:2765
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can even supply parameters to a <literal>UserType</literal> in the
"
"mapping file. To do this, your <literal>UserType</literal> must
implement "
@@ -5107,37 +3696,24 @@
"type></literal> element in your mapping files."
msgstr ""
"マッピングファイル内で <literal>UserType</literal> へパラメータを提供できま"
-"す。 このためには、<literal>UserType</literal> は
<literal>org.hibernate."
-"usertype.ParameterizedType</literal> を実装しなくてはなりません。 カスタム型"
-"パラメータを提供するために、 マッピングファイル内で <literal><type></"
+"す。このためには、 <literal>UserType</literal> は
<literal>org.hibernate."
+"usertype.ParameterizedType</literal> を実装しなくてはなりません。カスタム型パ"
+"ラメータを提供するために、マッピングファイル内で <literal><type></"
"literal> 要素を使用できます。"
-#. Tag: programlisting
-#: basic_mapping.xml:2773
-#, no-c-format
-msgid ""
-"<![CDATA[<property name=\"priority\">\n"
-" <type
name=\"com.mycompany.usertypes.DefaultValueIntegerType\">\n"
-" <param name=\"default\">0</param>\n"
-" </type>\n"
-"</property>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:2775
#, no-c-format
msgid ""
"The <literal>UserType</literal> can now retrieve the value for the
parameter "
"named <literal>default</literal> from the
<literal>Properties</literal> "
"object passed to it."
msgstr ""
-"<literal>UserType</literal> は、 引数として渡された
<literal>Properties</"
+"<literal>UserType</literal> は、引数として渡された
<literal>Properties</"
"literal> オブジェクトから、 <literal>default</literal> で指定したパラメータに"
"対する値を検索することができます。"
#. Tag: para
-#: basic_mapping.xml:2780
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you regularly use a certain <literal>UserType</literal>, it is
useful to "
"define a shorter name for it. You can do this using the
<literal><"
@@ -5147,37 +3723,19 @@
msgstr ""
"特定の <literal>UserType</literal> を頻繁に使用するならば、短い名前を定義する"
"と便利になるでしょう。 <literal><typedef></literal> 要素を使ってこのよ"
-"うなことが行えます。 Typedefsはカスタム型に名前を割り当てます。 その型がパラ"
-"メータを持つならば、 パラメータのデフォルト値のリストを含むこともできます。"
+"うなことが行えます。 Typedefs はカスタム型に名前を割り当てます。その型がパラ"
+"メータを持つならば、パラメータのデフォルト値のリストを含むこともできます。"
-#. Tag: programlisting
-#: basic_mapping.xml:2787
-#, no-c-format
-msgid ""
-"<![CDATA[<typedef
class=\"com.mycompany.usertypes.DefaultValueIntegerType\" "
-"name=\"default_zero\">\n"
-" <param name=\"default\">0</param>\n"
-"</typedef>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: basic_mapping.xml:2789
-#, no-c-format
-msgid "<![CDATA[<property name=\"priority\"
type=\"default_zero\"/>]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:2791
#, no-c-format
msgid ""
"It is also possible to override the parameters supplied in a typedef on a "
"case-by-case basis by using type parameters on the property mapping."
msgstr ""
-"プロパティのマッピングで型パラメータを使うことで、 typedefで提供されたパラ"
+"プロパティのマッピングで型パラメータを使うことで、 typedef で提供されたパラ"
"メータをその都度オーバーライドすることが可能です。"
#. Tag: para
-#: basic_mapping.xml:2796
#, fuzzy, no-c-format
msgid ""
"Even though Hibernate's rich range of built-in types and support for "
@@ -5189,24 +3747,22 @@
"is abstraction. With a custom type, your mapping documents would be "
"protected against changes to the way monetary values are represented."
msgstr ""
-"Hibernateの幅広い組み込み型とコンポーネントに対するサポートは、 カスタム型を"
-"めったに <emphasis>使わない</emphasis> ということを意味します。 それでもな"
-"お、アプリケーションで頻出する(エンティティではない)クラスに対するカスタム型"
-"の使用は、 よいやり方であるとみなされます。 例えば <literal>MonetaryAmount</"
+"Hibernate の幅広い組み込み型とコンポーネントに対するサポートは、カスタム型を"
+"めったに <emphasis>使わない</emphasis> ということを意味します。それでもなお、"
+"アプリケーションで頻出する (エンティティではない) クラスに対するカスタム型の"
+"使用は、よいやり方であるとみなされます。例えば <literal>MonetaryAmount</"
"literal> クラスはコンポーネントとして簡単にマッピングできますが、 "
-"<literal>CompositeUserType</literal> の良い候補です。 カスタム型を使用する動"
-"機の1つは抽象化です。 カスタム型を使うことで、通貨をどのように表現しようとも "
-"マッピングドキュメントは起こりうる変化に対応できます。"
+"<literal>CompositeUserType</literal> の良い候補です。カスタム型を使用する動機"
+"の1つは抽象化です。カスタム型を使うことで、通貨をどのように表現しようともマッ"
+"ピングドキュメントは起こりうる変化に対応できます。"
#. Tag: title
-#: basic_mapping.xml:2812
#, no-c-format
msgid "Mapping a class more than once"
msgstr "1つのクラスに1つ以上のマッピング"
#. Tag: para
-#: basic_mapping.xml:2813
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is possible to provide more than one mapping for a particular persistent "
"class. In this case, you must specify an <emphasis>entity
name</emphasis> to "
@@ -5215,55 +3771,29 @@
"entity name when working with persistent objects, when writing queries, or "
"when mapping associations to the named entity."
msgstr ""
-"ある永続クラスに、一つ以上のマッピングを提供することが出来ます。 この場合、"
+"ある永続クラスに、一つ以上のマッピングを提供することが出来ます。この場合、"
"マッピングする2つのエンティティのインスタンスを明確にするために、 <emphasis>"
"エンティティ名</emphasis> を指定しなければなりません (デフォルトではエンティ"
-"ティ名はクラス名と同じです。)。 永続オブジェクトを扱うとき、クエリを書き込む"
-"とき、 指定されたエンティティへの関連をマッピングするときには、 Hibernateでは"
+"ティ名はクラス名と同じです。)。 Hibernate では、永続オブジェクトを扱うとき、"
+"クエリを書き込むとき、指定されたエンティティへの関連をマッピングするときに、"
"エンティティ名を指定しなければなりません。"
-#. Tag: programlisting
-#: basic_mapping.xml:2821
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Contract\"
table=\"Contracts\"\n"
-" entity-name=\"CurrentContract\">\n"
-" ...\n"
-" <set name=\"history\" inverse=\"true\"\n"
-" order-by=\"effectiveEndDate desc\">\n"
-" <key column=\"currentContractId\"/>\n"
-" <one-to-many entity-name=\"HistoricalContract\"/>\n"
-" </set>\n"
-"</class>\n"
-"\n"
-"<class name=\"Contract\" table=\"ContractHistory\"\n"
-" entity-name=\"HistoricalContract\">\n"
-" ...\n"
-" <many-to-one name=\"currentContract\"\n"
-" column=\"currentContractId\"\n"
-" entity-name=\"CurrentContract\"/>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2823
-#, fuzzy, no-c-format
-msgid ""
"Associations are now specified using <literal>entity-name</literal>
instead "
"of <literal>class</literal>."
msgstr ""
-"関連が<literal>class</literal> の代わりに
<literal>entity-name</literal> を"
-"使って、 どのように指定されるのかに注目してください。"
+"関連が <literal>class</literal> の代わりに
<literal>entity-name</literal> を"
+"使って、どのように指定されるのかに注目してください。"
#. Tag: title
-#: basic_mapping.xml:2831
#, no-c-format
msgid "SQL quoted identifiers"
msgstr "バッククォートで囲んだ SQL 識別子"
#. Tag: para
-#: basic_mapping.xml:2832
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can force Hibernate to quote an identifier in the generated SQL by "
"enclosing the table or column name in backticks in the mapping document. "
@@ -5272,48 +3802,32 @@
"and MySQL uses backticks."
msgstr ""
"マッピングドキュメントでテーブルやカラムの名前をバッククォートで囲むことで、 "
-"Hibernateで生成されたSQL中の識別子を引用させることができます。 HibernateはSQL"
-"の <literal>Dialect</literal> に対応する、正しい引用スタイルを使います (普通"
-"はダブルクォートですが、SQL Serverではかぎ括弧、MySQLではバッククォートで"
-"す)。"
+"Hibernate で生成された SQL 中の識別子を引用させることができます。 Hibernate "
+"は SQL の <literal>Dialect</literal> に対応する、正しい引用スタイルを使います"
+"(普通はダブルクォートですが、 SQL Server ではかぎ括弧、 MySQL ではバック"
+"クォートです)。"
-#. Tag: programlisting
-#: basic_mapping.xml:2839
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"LineItem\" table=\"`Line
Item`\">\n"
-" <id name=\"id\" column=\"`Item Id`\"/><generator
class=\"assigned\"/></"
-"id>\n"
-" <property name=\"itemNumber\" column=\"`Item
#`\"/>\n"
-" ...\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: basic_mapping.xml:2845
#, no-c-format
msgid "Metadata alternatives"
msgstr "メタデータの代替手段"
#. Tag: para
-#: basic_mapping.xml:2847
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"XML does not suit all users so there are some alternative ways to define O/R
"
"mapping metadata in Hibernate."
msgstr ""
-"XMLの記述以外に、 HibernateではO/Rマッピングのメタデータを定義する代替方法が"
-"あります。"
+"XML の記述以外に、 Hibernate では O/R マッピングのメタデータを定義する代替方"
+"法があります。"
#. Tag: title
-#: basic_mapping.xml:2852
#, no-c-format
msgid "Using XDoclet markup"
msgstr "XDoclet マークアップの使用"
#. Tag: para
-#: basic_mapping.xml:2854
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Many Hibernate users prefer to embed mapping information directly in "
"sourcecode using XDoclet <literal>(a)hibernate.tags</literal>. We do not
cover "
@@ -5321,138 +3835,26 @@
"XDoclet. However, we include the following example of the
<literal>Cat</"
"literal> class with XDoclet mappings:"
msgstr ""
-"多くのHibernateユーザはXDocletの <literal>(a)hibernate.tags</literal> を使っ"
-"て、 ソースコード内に直接マッピング情報を埋め込むことを好みます。 これは厳密"
-"に言えばXDocletの分野なので、本ドキュメントではこの方法を対象とはしません。 "
-"しかしXDocletを使った以下の <literal>Cat</literal> マッピングの例を示します。"
+"多くの Hibernate ユーザーは XDoclet の <literal>(a)hibernate.tags</literal>
を"
+"使って、ソースコード内に直接マッピング情報を埋め込むことを好みます。これは厳"
+"密に言えば XDoclet の分野なので、本ドキュメントではこの方法を対象とはしませ"
+"ん。しかし XDoclet を使った以下の <literal>Cat</literal> マッピングの例を示し"
+"ます。"
-#. Tag: programlisting
-#: basic_mapping.xml:2861
-#, no-c-format
-msgid ""
-"<![CDATA[package eg;\n"
-"import java.util.Set;\n"
-"import java.util.Date;\n"
-"\n"
-"/**\n"
-" * @hibernate.class\n"
-" * table=\"CATS\"\n"
-" */\n"
-"public class Cat {\n"
-" private Long id; // identifier\n"
-" private Date birthdate;\n"
-" private Cat mother;\n"
-" private Set kittens\n"
-" private Color color;\n"
-" private char sex;\n"
-" private float weight;\n"
-"\n"
-" /*\n"
-" * @hibernate.id\n"
-" * generator-class=\"native\"\n"
-" * column=\"CAT_ID\"\n"
-" */\n"
-" public Long getId() {\n"
-" return id;\n"
-" }\n"
-" private void setId(Long id) {\n"
-" this.id=id;\n"
-" }\n"
-"\n"
-" /**\n"
-" * @hibernate.many-to-one\n"
-" * column=\"PARENT_ID\"\n"
-" */\n"
-" public Cat getMother() {\n"
-" return mother;\n"
-" }\n"
-" void setMother(Cat mother) {\n"
-" this.mother = mother;\n"
-" }\n"
-"\n"
-" /**\n"
-" * @hibernate.property\n"
-" * column=\"BIRTH_DATE\"\n"
-" */\n"
-" public Date getBirthdate() {\n"
-" return birthdate;\n"
-" }\n"
-" void setBirthdate(Date date) {\n"
-" birthdate = date;\n"
-" }\n"
-" /**\n"
-" * @hibernate.property\n"
-" * column=\"WEIGHT\"\n"
-" */\n"
-" public float getWeight() {\n"
-" return weight;\n"
-" }\n"
-" void setWeight(float weight) {\n"
-" this.weight = weight;\n"
-" }\n"
-"\n"
-" /**\n"
-" * @hibernate.property\n"
-" * column=\"COLOR\"\n"
-" * not-null=\"true\"\n"
-" */\n"
-" public Color getColor() {\n"
-" return color;\n"
-" }\n"
-" void setColor(Color color) {\n"
-" this.color = color;\n"
-" }\n"
-" /**\n"
-" * @hibernate.set\n"
-" * inverse=\"true\"\n"
-" * order-by=\"BIRTH_DATE\"\n"
-" * @hibernate.collection-key\n"
-" * column=\"PARENT_ID\"\n"
-" * @hibernate.collection-one-to-many\n"
-" */\n"
-" public Set getKittens() {\n"
-" return kittens;\n"
-" }\n"
-" void setKittens(Set kittens) {\n"
-" this.kittens = kittens;\n"
-" }\n"
-" // addKitten not needed by Hibernate\n"
-" public void addKitten(Cat kitten) {\n"
-" kittens.add(kitten);\n"
-" }\n"
-"\n"
-" /**\n"
-" * @hibernate.property\n"
-" * column=\"SEX\"\n"
-" * not-null=\"true\"\n"
-" * update=\"false\"\n"
-" */\n"
-" public char getSex() {\n"
-" return sex;\n"
-" }\n"
-" void setSex(char sex) {\n"
-" this.sex=sex;\n"
-" }\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: basic_mapping.xml:2863
-#, fuzzy, no-c-format
+#, no-c-format
msgid "See the Hibernate website for more examples of XDoclet and Hibernate."
msgstr ""
-"Hibernateのウェブサイトには、XDocletとHibernateに関するサンプルが多数ありま"
-"す。"
+"Hibernate のウェブサイトには、 XDoclet と Hibernate に関するサンプルが多数あ"
+"ります。"
#. Tag: title
-#: basic_mapping.xml:2870
#, no-c-format
msgid "Using JDK 5.0 Annotations"
msgstr "JDK 5.0 アノテーションの使用"
#. Tag: para
-#: basic_mapping.xml:2872
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"JDK 5.0 introduced XDoclet-style annotations at the language level that are "
"type-safe and checked at compile time. This mechanism is more powerful than "
@@ -5465,72 +3867,40 @@
"<emphasis>Hibernate Annotations</emphasis> package as a separate
download. "
"Both EJB3 (JSR-220) and Hibernate3 metadata is supported."
msgstr ""
-"JDK5.0ではタイプセーフかつコンパイル時にチェックできる、 言語レベルのXDoclet"
-"スタイルのアノテーションを導入しました。 このメカニズムはXDocletのアノテー"
-"ションよりも強力で、ツールやIDEも多くがサポートしています。 例えばIntelliJ "
-"IDEAは、JDK5.0にアノテーションの自動補完と構文の強調表示をサポートしていま"
-"す。 EJB仕様 (JSR-220)の新しいバージョンでは、エンティティビーンに対する主要"
-"なメタデータメカニズムとして JDK5.0のアノテーションを使用しています。 "
-"Hibernate3ではJSR-220 (永続化API)の <literal>EntityManager</literal>
を実装"
-"し、 メタデータマッピングに対するサポートは、 別ダウンロードの "
-"<emphasis>Hibernate Annotations</emphasis> パッケージにより利用可能です。 こ"
-"れはEJB3(JSR-220)とHibernate3のメタデータをどちらもサポートしています。"
+"JDK5.0 ではタイプセーフかつコンパイル時にチェックできる、言語レベルの "
+"XDoclet スタイルのアノテーションを導入しました。このメカニズムは XDoclet のア"
+"ノテーションよりも強力で、ツールや IDE も多くがサポートしています。例えば "
+"IntelliJ IDEA は、 JDK5.0 にアノテーションの自動補完と構文の強調表示をサポー"
+"トしています。 EJB 仕様 (JSR-220) の新しいバージョンでは、エンティティ Bean "
+"に対する主要なメタデータメカニズムとして JDK5.0 のアノテーションを使用してい"
+"ます。 Hibernate3 では JSR-220 (永続化 API) の <literal>EntityManager</"
+"literal> を実装し、メタデータマッピングに対するサポートは、別ダウンロードの "
+"<emphasis>Hibernate Annotations</emphasis> パッケージにより利用可能です。これ"
+"は EJB3 (JSR-220) と Hibernate3 のメタデータをどちらもサポートしています。"
#. Tag: para
-#: basic_mapping.xml:2883
#, no-c-format
msgid "This is an example of a POJO class annotated as an EJB entity bean:"
-msgstr "以下はEJBのエンティティビーンとして注釈されたPOJOクラスの例です。"
+msgstr "以下は EJB のエンティティ Bean として注釈された POJO クラスの例です:"
-#. Tag: programlisting
-#: basic_mapping.xml:2887
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[@Entity(access = AccessType.FIELD)\n"
-"public class Customer implements Serializable {\n"
-"\n"
-" @Id;\n"
-" Long id;\n"
-"\n"
-" String firstName;\n"
-" String lastName;\n"
-" Date birthday;\n"
-"\n"
-" @Transient\n"
-" Integer age;\n"
-"\n"
-" @Embedded\n"
-" private Address homeAddress;\n"
-"\n"
-" @OneToMany(cascade=CascadeType.ALL)\n"
-" @JoinColumn(name=\"CUSTOMER_ID\")\n"
-" Set<Order> orders;\n"
-"\n"
-" // Getter/setter and business methods\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2891
-#, fuzzy, no-c-format
-msgid ""
"Support for JDK 5.0 Annotations (and JSR-220) is currently under "
"development. Please refer to the Hibernate Annotations module for more "
"details."
msgstr ""
-"JDK5.0のアノテーション(とJSR-220)のサポートは進行中の作業であり、完全ではない"
-"ことに注意してください。 さらに詳しい情報はHibernateのアノテーション・モ"
+"JDK5.0 のアノテーション (と JSR-220) のサポートは進行中の作業であり、完全では"
+"ないことに注意してください。さらに詳しい情報は Hibernate のアノテーションモ"
"ジュールを参照してください。"
#. Tag: title
-#: basic_mapping.xml:2901
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Generated properties"
msgstr "生成プロパティ"
#. Tag: para
-#: basic_mapping.xml:2902
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Generated properties are properties that have their values generated by the "
"database. Typically, Hibernate applications needed to
<literal>refresh</"
@@ -5540,61 +3910,56 @@
"an SQL INSERT or UPDATE for an entity that has defined generated properties,
"
"it immediately issues a select afterwards to retrieve the generated values."
msgstr ""
-"生成プロパティとは、データベースによって生成された値を持つプロパティです。 通"
-"常、Hibernateアプリケーションは、データベースが値を生成したプロパティを含むオ"
-"ブジェクトを <literal>リフレッシュ</literal> する必要がありました。 しかし、"
-"プロパティが生成されたということをマークすることで、 アプリケーションはリフ"
-"レッシュの責任をHibernateに委譲します。 基本的に、生成プロパティを持つと定義"
-"したエンティティに対して HibernateがINSERTやUPDATEのSQLを発行した後すぐに、 "
-"生成された値を読み込むための SELECT SQL が発行されます。"
+"生成プロパティとは、データベースによって生成された値を持つプロパティです。通"
+"常、 Hibernate アプリケーションは、データベースが値を生成したプロパティを含む"
+"オブジェクトを <literal>リフレッシュ</literal> する必要がありました。しかし、"
+"プロパティが生成されたということをマークすることで、アプリケーションはリフ"
+"レッシュの責任を Hibernate に委譲します。基本的に、生成プロパティを持つと定義"
+"したエンティティに対して Hibernate が INSERT や UPDATE の SQL を発行した後す"
+"ぐに、生成された値を読み込むための SELECT SQL が発行されます。"
#. Tag: para
-#: basic_mapping.xml:2911
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Properties marked as generated must additionally be non-insertable and non-"
-"updateable. Only <link
linkend=\"mapping-declaration-version\">versions</"
-"link>, <link
linkend=\"mapping-declaration-timestamp\">timestamps</link>, "
-"and <link linkend=\"mapping-declaration-property\">simple
properties</link>, "
-"can be marked as generated."
+"updateable. Only versions (<xref
linkend=\"mapping-declaration-version\" /"
+">), timestamps (<xref linkend=\"mapping-declaration-timestamp\"
/>), and "
+"simple properties (<xref linkend=\"mapping-declaration-property\"
/>), can "
+"be marked as generated."
msgstr ""
"生成プロパティは、挿入不可能かつ更新不可能でなければなりません。 <xref "
-"linkend=\"mapping-declaration-version\">versions</xref> 、
<xref linkend="
-"\"mapping-declaration-timestamp\">timestamps</xref> 、 <xref
linkend="
-"\"mapping-declaration-property\">simple properties</xref>
だけが生成されたと"
-"マークできます。"
+"linkend=\"mapping-declaration-version\"/> バージョン、 <xref
linkend="
+"\"mapping-declaration-timestamp\"/> タイムスタンプ、 <xref
linkend=\"mapping-"
+"declaration-property\"/> 簡単なプロパティだけが生成されたとマークできます。"
#. Tag: para
-#: basic_mapping.xml:2918
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>never</literal> (the default): the given property value is not
"
"generated within the database."
msgstr ""
-"<literal>never</literal> (デフォルト) - 与えられたプロパティの値は、 データ"
+"<literal>never</literal> (デフォルト) - 与えられたプロパティの値は、データ"
"ベースから生成されないことを意味します。"
#. Tag: para
-#: basic_mapping.xml:2922
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>insert</literal>: the given property value is generated on
insert, "
"but is not regenerated on subsequent updates. Properties like created-date "
-"fall into this category. Even though <link
linkend=\"mapping-declaration-"
-"version\">version</link> and <link
linkend=\"mapping-declaration-timestamp"
-"\">timestamp</link> properties can be marked as generated, this
option is "
-"not available."
+"fall into this category. Even though version (<xref
linkend=\"mapping-"
+"declaration-version\" />) and timestamp (<xref
linkend=\"mapping-declaration-"
+"timestamp\" />) properties can be marked as generated, this option is not
"
+"available."
msgstr ""
-"<literal>insert</literal> - 与えられたプロパティの値は挿入時に生成されるが、 "
-"続いて起こる更新時には生成されないこと示します。 作成された日付などは、このカ"
-"テゴリに分類されます。 <xref linkend=\"mapping-declaration-version"
-"\">version</xref> や <xref
linkend=\"mapping-declaration-timestamp"
-"\">timestamp</xref> の プロパティは生成されたとマークできますが、このオプショ"
-"ンは利用できないことに注意してください。"
+"<literal>insert</literal> - 与えられたプロパティの値は挿入時に生成されるが、"
+"続いて起こる更新時には生成されないこと示します。作成された日付などは、このカ"
+"テゴリに分類されます。 <xref linkend=\"mapping-declaration-version\"/>
バー"
+"ジョンや <xref linkend=\"mapping-declaration-timestamp\"/>
タイムスタンプのプ"
+"ロパティは生成されたとマークできますが、このオプションは利用できないことに注"
+"意してください。"
#. Tag: para
-#: basic_mapping.xml:2930
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>always</literal>: the property value is generated both on
insert "
"and on update."
@@ -5603,14 +3968,12 @@
"示します。"
#. Tag: title
-#: basic_mapping.xml:2937
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Auxiliary database objects"
-msgstr "補助的なデータベース・オブジェクト"
+msgstr "補助的なデータベースオブジェクト"
#. Tag: para
-#: basic_mapping.xml:2938
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Auxiliary database objects allow for the CREATE and DROP of arbitrary "
"database objects. In conjunction with Hibernate's schema evolution tools,
"
@@ -5621,142 +3984,1758 @@
"example, ALTERs, INSERTS, etc.). There are essentially two modes for "
"defining auxiliary database objects:"
msgstr ""
-"Hibernateのスキーマ・エボリューションツールと連動することで、 任意のデータ"
-"ベース・オブジェクト(トリガーやストアドプロシージャなど)のCREATEとDROPによ"
-"り、 Hibernateのマッピングファイル内のユーザ・スキーマをすべて定義することが"
-"出来ます。 主にトリガやストアドプロシージャのようなデータベース・オブジェクト"
-"を生成や削除することを意図していますが、 実際には <literal>java.sql."
-"Statement.execute()</literal> メソッドによって実行できる 任意のSQLコマンド"
-"(ALTER、INSERTなど)が実行できます。 補助的なデータベース・オブジェクトを定"
-"義するための、2つの基本的な方法があります。"
+"Hibernate のスキーマエボリューションツールと連動することで、任意のデータベー"
+"スオブジェクト(トリガーやストアドプロシージャなど)の CREATE と DROP によ"
+"り、 Hibernate のマッピングファイル内のユーザースキーマをすべて定義することが"
+"出来ます。主にトリガやストアドプロシージャのようなデータベースオブジェクトを"
+"生成や削除することを意図していますが、実際には <literal>java.sql.Statement."
+"execute()</literal> メソッドによって実行できる任意の SQL コマンド(ALTER、"
+"INSERTなど)が実行できます。補助的なデータベースオブジェクトを定義するため"
+"の、2つの基本的な方法があります。"
#. Tag: para
-#: basic_mapping.xml:2947
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The first mode is to explicitly list the CREATE and DROP commands in the "
"mapping file:"
msgstr ""
-"1つ目の方法は、CREATEとDROPコマンドをマッピングファイルの外に、明示的に記載す"
-"ることです。"
+"1つ目の方法は、 CREATE と DROP コマンドをマッピングファイルの外に、明示的に記"
+"載することです:"
-#. Tag: programlisting
-#: basic_mapping.xml:2951
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-" ...\n"
-" <database-object>\n"
-" <create>CREATE TRIGGER my_trigger ...</create>\n"
-" <drop>DROP TRIGGER my_trigger</drop>\n"
-" </database-object>\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2952
-#, fuzzy, no-c-format
-msgid ""
"The second mode is to supply a custom class that constructs the CREATE and "
"DROP commands. This custom class must implement the
<literal>org.hibernate."
"mapping.AuxiliaryDatabaseObject</literal> interface."
msgstr ""
-"2つ目の方法は、CREATEとDROPコマンドの組み立て方を知っているカスタムクラスを提"
-"供することです。 このカスタムクラスは <literal>org.hibernate.mapping."
-"AuxiliaryDatabaseObject</literal> インタフェースを 実装しなければなりません。"
+"2つ目の方法は、 CREATE と DROP コマンドの組み立て方を知っているカスタムクラス"
+"を提供することです。このカスタムクラスは <literal>org.hibernate.mapping."
+"AuxiliaryDatabaseObject</literal> インタフェースを実装しなければなりません。"
-#. Tag: programlisting
-#: basic_mapping.xml:2957
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-" ...\n"
-" <database-object>\n"
-" <definition class=\"MyTriggerDefinition\"/>\n"
-" </database-object>\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: para
-#: basic_mapping.xml:2958
-#, fuzzy, no-c-format
-msgid ""
"Additionally, these database objects can be optionally scoped so that they "
"only apply when certain dialects are used."
msgstr ""
-"さらに、あるデータベース方言が使用される時にだけ適用するといったように、 デー"
-"タベース・オブジェクトが使われるケースを限定できます。"
+"さらに、あるデータベース方言が使用される時にだけ適用するといったように、デー"
+"タベースオブジェクトが使われるケースを限定できます。"
-#. Tag: programlisting
-#: basic_mapping.xml:2962
-#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-" ...\n"
-" <database-object>\n"
-" <definition class=\"MyTriggerDefinition\"/>\n"
-" <dialect-scope
name=\"org.hibernate.dialect.Oracle9iDialect\"/>\n"
-" <dialect-scope
name=\"org.hibernate.dialect.Oracle10gDialect\"/>\n"
-" </database-object>\n"
-"</hibernate-mapping>]]>"
-msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
+#~ "\">\n"
+#~ "\n"
+#~ "<hibernate-mapping package=\"eg\">\n"
+#~ "\n"
+#~ " <class name=\"Cat\"\n"
+#~ " table=\"cats\"\n"
+#~ " discriminator-value=\"C\">\n"
+#~ "\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <discriminator column=\"subclass\"\n"
+#~ " type=\"character\"/>\n"
+#~ "\n"
+#~ " <property name=\"weight\"/>\n"
+#~ "\n"
+#~ " <property name=\"birthdate\"\n"
+#~ " type=\"date\"\n"
+#~ " not-null=\"true\"\n"
+#~ " update=\"false\"/>\n"
+#~ "\n"
+#~ " <property name=\"color\"\n"
+#~ " type=\"eg.types.ColorUserType\"\n"
+#~ " not-null=\"true\"\n"
+#~ " update=\"false\"/>\n"
+#~ "\n"
+#~ " <property name=\"sex\"\n"
+#~ " not-null=\"true\"\n"
+#~ " update=\"false\"/>\n"
+#~ "\n"
+#~ " <property name=\"litterId\"\n"
+#~ " column=\"litterId\"\n"
+#~ " update=\"false\"/>\n"
+#~ "\n"
+#~ " <many-to-one name=\"mother\"\n"
+#~ " column=\"mother_id\"\n"
+#~ " update=\"false\"/>\n"
+#~ "\n"
+#~ " <set name=\"kittens\"\n"
+#~ " inverse=\"true\"\n"
+#~ " order-by=\"litter_id\">\n"
+#~ " <key column=\"mother_id\"/>\n"
+#~ " <one-to-many class=\"Cat\"/>\n"
+#~ " </set>\n"
+#~ "\n"
+#~ " <subclass name=\"DomesticCat\"\n"
+#~ " discriminator-value=\"D\">\n"
+#~ "\n"
+#~ " <property name=\"name\"\n"
+#~ " type=\"string\"/>\n"
+#~ "\n"
+#~ " </subclass>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Dog\">\n"
+#~ " <!-- mapping for Dog could go here -->\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
+#~ "\">\n"
+#~ "\n"
+#~ "<hibernate-mapping package=\"eg\">\n"
+#~ "\n"
+#~ " <class name=\"Cat\" \n"
+#~ " table=\"cats\"\n"
+#~ " discriminator-value=\"C\">\n"
+#~ " \n"
+#~ " <id name=\"id\">\n"
+#~ " <generator
class=\"native\"/>\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <discriminator column=\"subclass\" \n"
+#~ " type=\"character\"/>\n"
+#~ "\n"
+#~ " <property name=\"weight\"/>\n"
+#~ "\n"
+#~ " <property name=\"birthdate\"\n"
+#~ " type=\"date\" \n"
+#~ " not-null=\"true\" \n"
+#~ " update=\"false\"/>\n"
+#~ "\n"
+#~ " <property name=\"color\"\n"
+#~ " type=\"eg.types.ColorUserType\"\n"
+#~ " not-null=\"true\"\n"
+#~ " update=\"false\"/>\n"
+#~ "\n"
+#~ " <property name=\"sex\"\n"
+#~ " not-null=\"true\" \n"
+#~ " update=\"false\"/>\n"
+#~ "\n"
+#~ " <property name=\"litterId\"\n"
+#~ " column=\"litterId\"\n"
+#~ " update=\"false\"/>\n"
+#~ "\n"
+#~ " <many-to-one name=\"mother\"\n"
+#~ " column=\"mother_id\"\n"
+#~ " update=\"false\"/>\n"
+#~ "\n"
+#~ " <set name=\"kittens\"\n"
+#~ " inverse=\"true\"\n"
+#~ " order-by=\"litter_id\">\n"
+#~ " <key
column=\"mother_id\"/>\n"
+#~ " <one-to-many
class=\"Cat\"/>\n"
+#~ " </set>\n"
+#~ "\n"
+#~ " <subclass name=\"DomesticCat\"\n"
+#~ " discriminator-value=\"D\">\n"
+#~ "\n"
+#~ " <property name=\"name\" \n"
+#~ " type=\"string\"/>\n"
+#~ "\n"
+#~ " </subclass>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Dog\">\n"
+#~ " <!-- mapping for Dog could go here -->\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>type</literal> (optional): A name that indicates the
Hibernate "
-#~ "type."
-#~ msgstr "<literal>type</literal>(オプション):Hibernateの型を示す名前。"
+#~ "<![CDATA[<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
+#~ " \"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\"
[\n"
+#~ " <!ENTITY types SYSTEM
\"classpath://your/domain/types.xml\">\n"
+#~ "]>\n"
+#~ "\n"
+#~ "<hibernate-mapping package=\"your.domain\">\n"
+#~ " <class name=\"MyEntity\">\n"
+#~ " <id name=\"id\"
type=\"my-custom-id-type\">\n"
+#~ " ...\n"
+#~ " </id>\n"
+#~ " <class>\n"
+#~ " &types;\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
+#~ " \"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\"
[\n"
+#~ " <!ENTITY types SYSTEM
\"classpath://your/domain/types.xml\">\n"
+#~ "]>\n"
+#~ "\n"
+#~ "<hibernate-mapping package=\"your.domain\">\n"
+#~ " <class name=\"MyEntity\">\n"
+#~ " <id name=\"id\"
type=\"my-custom-id-type\">\n"
+#~ " ...\n"
+#~ " </id>\n"
+#~ " </class>\n"
+#~ " & types;\n"
+#~ "</hibernate-mapping>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>cascade</literal> (optional): Specifies which operations
should "
-#~ "be cascaded from the parent object to the associated object."
+#~ "<![CDATA[<hibernate-mapping\n"
+#~ " schema=\"schemaName\"\n"
+#~ " catalog=\"catalogName\"\n"
+#~ " default-cascade=\"cascade_style\"\n"
+#~ " default-access=\"field|property|ClassName\"\n"
+#~ " default-lazy=\"true|false\"\n"
+#~ " auto-import=\"true|false\"\n"
+#~ " package=\"package.name\"\n"
+#~ " />]]>"
#~ msgstr ""
-#~ "<literal>cascade</literal>(オプション): どの操作を、親オブジェクトから"
-#~ "関連オブジェクトへとカスケードさせるかを指定します。"
+#~ "<hibernate-mapping\n"
+#~ " schema=\"schemaName\"\n"
+#~ " catalog=\"catalogName\"\n"
+#~ " default-cascade=\"cascade_style\"\n"
+#~ " default-access=\"field|property|ClassName\"\n"
+#~ " default-lazy=\"true|false\"\n"
+#~ " auto-import=\"true|false\"\n"
+#~ " package=\"package.name\"\n"
+#~ " />"
+#, fuzzy
#~ msgid ""
-#~ "<literal>optimistic-lock</literal> (optional - defaults to
<literal>true</"
-#~ "literal>): Specifies that updates to this property do or do not require
"
-#~ "acquisition of the optimistic lock. In other words, dertermines if a "
-#~ "version increment should occur when this property is dirty."
+#~ "<![CDATA[<class\n"
+#~ " name=\"ClassName\"\n"
+#~ " table=\"tableName\"\n"
+#~ " discriminator-value=\"discriminator_value\"\n"
+#~ " mutable=\"true|false\"\n"
+#~ " schema=\"owner\"\n"
+#~ " catalog=\"catalog\"\n"
+#~ " proxy=\"ProxyInterface\"\n"
+#~ " dynamic-update=\"true|false\"\n"
+#~ " dynamic-insert=\"true|false\"\n"
+#~ " select-before-update=\"true|false\"\n"
+#~ " polymorphism=\"implicit|explicit\"\n"
+#~ " where=\"arbitrary sql where condition\"\n"
+#~ " persister=\"PersisterClass\"\n"
+#~ " batch-size=\"N\"\n"
+#~ " optimistic-lock=\"none|version|dirty|all\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " check=\"arbitrary sql check condition\"\n"
+#~ " rowid=\"rowid\"\n"
+#~ " subselect=\"SQL expression\"\n"
+#~ " abstract=\"true|false\"\n"
+#~ " node=\"element-name\"\n"
+#~ "/>]]>"
#~ msgstr ""
-#~ "<literal>optimistic-lock</literal> (オプション - デフォルトは "
-#~ "<literal>true</literal> ): このプロパティの更新に楽観的ロックの取得を要求"
-#~ "するかどうかを指定します。 言い換えれば、このプロパティがダーティであると"
-#~ "きにバージョンを増やすべきかを決定します。"
+#~ "<class\n"
+#~ " name=\"ClassName\"\n"
+#~ " table=\"tableName\"\n"
+#~ " discriminator-value=\"discriminator_value\"\n"
+#~ " mutable=\"true|false\"\n"
+#~ " schema=\"owner\"\n"
+#~ " catalog=\"catalog\"\n"
+#~ " proxy=\"ProxyInterface\"\n"
+#~ " dynamic-update=\"true|false\"\n"
+#~ " dynamic-insert=\"true|false\"\n"
+#~ " select-before-update=\"true|false\"\n"
+#~ " polymorphism=\"implicit|explicit\"\n"
+#~ " where=\"arbitrary sql where condition\"\n"
+#~ " persister=\"PersisterClass\"\n"
+#~ " batch-size=\"N\"\n"
+#~ " optimistic-lock=\"none|version|dirty|all\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " check=\"arbitrary sql check condition\"\n"
+#~ " rowid=\"rowid\"\n"
+#~ " subselect=\"SQL expression\"\n"
+#~ " abstract=\"true|false\"\n"
+#~ " node=\"element-name\"\n"
+#~ "/>"
+#, fuzzy
#~ msgid ""
-#~ "To understand the behaviour of various Java language-level objects with "
-#~ "respect to the persistence service, we need to classify them into two "
-#~ "groups:"
+#~ "<![CDATA[<class name=\"Summary\">\n"
+#~ " <subselect>\n"
+#~ " select item.name, max(bid.amount), count(*)\n"
+#~ " from item\n"
+#~ " join bid on bid.item_id = item.id\n"
+#~ " group by item.name\n"
+#~ " </subselect>\n"
+#~ " <synchronize table=\"item\"/>\n"
+#~ " <synchronize table=\"bid\"/>\n"
+#~ " <id name=\"name\"/>\n"
+#~ " ...\n"
+#~ "</class>]]>"
#~ msgstr ""
-#~ "永続サービスに関わる様々なJava言語レベルのオブジェクトの振る舞いを理解する"
-#~ "ためには、 オブジェクトを2つのグループに分ける必要があります:"
+#~ "<class name=\"Summary\">\n"
+#~ " <subselect>\n"
+#~ " select item.name, max(bid.amount), count(*)\n"
+#~ " from item\n"
+#~ " join bid on bid.item_id = item.id\n"
+#~ " group by item.name\n"
+#~ " </subselect>\n"
+#~ " <synchronize table=\"item\"/>\n"
+#~ " <synchronize table=\"bid\"/>\n"
+#~ " <id name=\"name\"/>\n"
+#~ " ...\n"
+#~ "</class>"
#, fuzzy
-#~ msgid "<literal>class</literal>"
-#~ msgstr "<literal>all</literal> すべてのカラムをチェックします。"
+#~ msgid ""
+#~ "<![CDATA[<id\n"
+#~ " name=\"propertyName\"\n"
+#~ " type=\"typename\"\n"
+#~ " column=\"column_name\"\n"
+#~ " unsaved-value=\"null|any|none|undefined|id_value\"\n"
+#~ " access=\"field|property|ClassName\">\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ "\n"
+#~ " <generator class=\"generatorClass\"/>\n"
+#~ "</id>]]>"
+#~ msgstr ""
+#~ "<id\n"
+#~ " name=\"propertyName\"\n"
+#~ " type=\"typename\"\n"
+#~ " column=\"column_name\"\n"
+#~ " unsaved-value=\"null|any|none|undefined|id_value\"\n"
+#~ " access=\"field|property|ClassName\">\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ "\n"
+#~ " <generator class=\"generatorClass\"/>\n"
+#~ "</id>"
-#~ msgid "id"
-#~ msgstr "id"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<id name=\"id\" type=\"long\"
column=\"cat_id\">\n"
+#~ " <generator
class=\"org.hibernate.id.TableHiLoGenerator\">\n"
+#~ " <param
name=\"table\">uid_table</param>\n"
+#~ " <param
name=\"column\">next_hi_value_column</param>\n"
+#~ " </generator>\n"
+#~ "</id>]]>"
+#~ msgstr ""
+#~ "<id name=\"id\" type=\"long\"
column=\"cat_id\">\n"
+#~ " <generator
class=\"org.hibernate.id.TableHiLoGenerator\">\n"
+#~ " <param
name=\"table\">uid_table</param>\n"
+#~ " <param
name=\"column\">next_hi_value_column</"
+#~ "param>\n"
+#~ " </generator>\n"
+#~ "</id>"
+#~ msgid "increment"
+#~ msgstr "increment"
+
+#~ msgid "identity"
+#~ msgstr "identity"
+
+#~ msgid "sequence"
+#~ msgstr "sequence"
+
+#~ msgid "hilo"
+#~ msgstr "hilo"
+
+#~ msgid "seqhilo"
+#~ msgstr "seqhilo"
+
+#~ msgid "guid"
+#~ msgstr "guid"
+
+#~ msgid "native"
+#~ msgstr "native"
+
+#~ msgid "assigned"
+#~ msgstr "assigned"
+
+#~ msgid "select"
+#~ msgstr "select"
+
+#~ msgid "foreign"
+#~ msgstr "foreign"
+
+#, fuzzy
#~ msgid ""
-#~ "<literal>optimizer</literal> (optional, defaults to
<literal>none</"
-#~ "literal>): See <xref
linkend=\"mapping-declaration-id-enhanced-optimizers"
-#~ "\"/>"
+#~ "<![CDATA[<id name=\"id\" type=\"long\"
column=\"cat_id\">\n"
+#~ " <generator class=\"hilo\">\n"
+#~ " <param
name=\"table\">hi_value</param>\n"
+#~ " <param
name=\"column\">next_value</param>\n"
+#~ " <param
name=\"max_lo\">100</param>\n"
+#~ " </generator>\n"
+#~ "</id>]]>"
#~ msgstr ""
-#~ "<literal>optimizer</literal> (optional, defaults to
<literal>none</"
-#~ "literal>): See <xref
linkend=\"mapping-declaration-id-enhanced-optimizers"
-#~ "\"/>"
+#~ "<id name=\"id\" type=\"long\"
column=\"cat_id\">\n"
+#~ " <generator class=\"hilo\">\n"
+#~ " <param
name=\"table\">hi_value</param>\n"
+#~ " <param
name=\"column\">next_value</param>\n"
+#~ " <param
name=\"max_lo\">100</param>\n"
+#~ " </generator>\n"
+#~ "</id>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>optimizer</literal> (optional, defaults to
<literal/>): See "
-#~ "<xref
linkend=\"mapping-declaration-id-enhanced-optimizers\"/>"
+#~ "<![CDATA[<id name=\"id\" type=\"long\"
column=\"cat_id\">\n"
+#~ " <generator class=\"seqhilo\">\n"
+#~ " <param
name=\"sequence\">hi_value</param>\n"
+#~ " <param
name=\"max_lo\">100</param>\n"
+#~ " </generator>\n"
+#~ "</id>]]>"
#~ msgstr ""
-#~ "<literal>optimizer</literal> (optional, defaults to
<literal/>): See "
-#~ "<xref
linkend=\"mapping-declaration-id-enhanced-optimizers\"/>"
+#~ "<id name=\"id\" type=\"long\"
column=\"cat_id\">\n"
+#~ " <generator class=\"seqhilo\">\n"
+#~ " <param
name=\"sequence\">hi_value</param>\n"
+#~ " <param
name=\"max_lo\">100</param>\n"
+#~ " </generator>\n"
+#~ "</id>"
-#~ msgid "key"
-#~ msgstr "key"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<id name=\"id\" type=\"long\"
column=\"person_id\">\n"
+#~ " <generator class=\"sequence\">\n"
+#~ " <param
name=\"sequence\">person_id_sequence</param>\n"
+#~ " </generator>\n"
+#~ "</id>]]>"
+#~ msgstr ""
+#~ "<id name=\"id\" type=\"long\"
column=\"person_id\">\n"
+#~ " <generator class=\"sequence\">\n"
+#~ " <param
name=\"sequence\">person_id_sequence</"
+#~ "param>\n"
+#~ " </generator>\n"
+#~ "</id>"
-#~ msgid "any"
-#~ msgstr "any"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<id name=\"id\" type=\"long\"
column=\"person_id\" unsaved-value="
+#~ "\"0\">\n"
+#~ " <generator class=\"identity\"/>\n"
+#~ "</id>]]>"
+#~ msgstr ""
+#~ "<id name=\"id\" type=\"long\"
column=\"person_id\" unsaved-value=\"0"
+#~ "\">\n"
+#~ " <generator class=\"identity\"/>\n"
+#~ "</id>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<id name=\"id\" type=\"long\"
column=\"person_id\">\n"
+#~ " <generator class=\"select\">\n"
+#~ " <param
name=\"key\">socialSecurityNumber</param>\n"
+#~ " </generator>\n"
+#~ "</id>]]>"
+#~ msgstr ""
+#~ "<id name=\"id\" type=\"long\"
column=\"person_id\">\n"
+#~ " <generator class=\"select\">\n"
+#~ " <param
name=\"key\">socialSecurityNumber</"
+#~ "param>\n"
+#~ " </generator>\n"
+#~ "</id>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<composite-id\n"
+#~ " name=\"propertyName\"\n"
+#~ " class=\"ClassName\"\n"
+#~ " mapped=\"true|false\"\n"
+#~ " access=\"field|property|ClassName\">\n"
+#~ " node=\"element-name|.\"\n"
+#~ "\n"
+#~ " <key-property name=\"propertyName\"
type=\"typename\" column="
+#~ "\"column_name\"/>\n"
+#~ " <key-many-to-one name=\"propertyName
class=\"ClassName\" column="
+#~ "\"column_name\"/>\n"
+#~ " ......\n"
+#~ "</composite-id>]]>"
+#~ msgstr ""
+#~ "<composite-id\n"
+#~ " name=\"propertyName\"\n"
+#~ " class=\"ClassName\"\n"
+#~ " mapped=\"true|false\"\n"
+#~ " access=\"field|property|ClassName\">\n"
+#~ " node=\"element-name|.\"\n"
+#~ "\n"
+#~ " <key-property name=\"propertyName\"
type=\"typename\" column="
+#~ "\"column_name\"/>\n"
+#~ " <key-many-to-one name=\"propertyName
class=\"ClassName\" "
+#~ "column=\"column_name\"/>\n"
+#~ " ......\n"
+#~ "</composite-id>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<composite-id>\n"
+#~ " <key-property name=\"medicareNumber\"/>\n"
+#~ " <key-property name=\"dependent\"/>\n"
+#~ "</composite-id>]]>"
+#~ msgstr ""
+#~ "<composite-id>\n"
+#~ " <key-property name=\"medicareNumber\"/>\n"
+#~ " <key-property name=\"dependent\"/>\n"
+#~ "</composite-id>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<composite-id class=\"MedicareId\"
mapped=\"true\">\n"
+#~ " <key-property name=\"medicareNumber\"/>\n"
+#~ " <key-property name=\"dependent\"/>\n"
+#~ "</composite-id>]]>"
+#~ msgstr ""
+#~ "<composite-id class=\"MedicareId\"
mapped=\"true\">\n"
+#~ " <key-property name=\"medicareNumber\"/>\n"
+#~ " <key-property name=\"dependent\"/>\n"
+#~ "</composite-id>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<discriminator\n"
+#~ " column=\"discriminator_column\"\n"
+#~ " type=\"discriminator_type\"\n"
+#~ " force=\"true|false\"\n"
+#~ " insert=\"true|false\"\n"
+#~ " formula=\"arbitrary sql expression\"\n"
+#~ "/>]]>"
+#~ msgstr ""
+#~ "<discriminator\n"
+#~ " column=\"discriminator_column\"\n"
+#~ " type=\"discriminator_type\"\n"
+#~ " force=\"true|false\"\n"
+#~ " insert=\"true|false\"\n"
+#~ " formula=\"arbitrary sql expression\"\n"
+#~ "/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<discriminator\n"
+#~ " formula=\"case when CLASS_TYPE in ('a', 'b',
'c') then 0 else 1 end"
+#~ "\"\n"
+#~ " type=\"integer\"/>]]>"
+#~ msgstr ""
+#~ "<discriminator\n"
+#~ " formula=\"case when CLASS_TYPE in ('a', 'b',
'c') then 0 else 1 end"
+#~ "\"\n"
+#~ " type=\"integer\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<version\n"
+#~ " column=\"version_column\"\n"
+#~ " name=\"propertyName\"\n"
+#~ " type=\"typename\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " unsaved-value=\"null|negative|undefined\"\n"
+#~ " generated=\"never|always\"\n"
+#~ " insert=\"true|false\"\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ "/>]]>"
+#~ msgstr ""
+#~ "<version\n"
+#~ " column=\"version_column\"\n"
+#~ " name=\"propertyName\"\n"
+#~ " type=\"typename\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " unsaved-value=\"null|negative|undefined\"\n"
+#~ " generated=\"never|always\"\n"
+#~ " insert=\"true|false\"\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ "/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<timestamp\n"
+#~ " column=\"timestamp_column\"\n"
+#~ " name=\"propertyName\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " unsaved-value=\"null|undefined\"\n"
+#~ " source=\"vm|db\"\n"
+#~ " generated=\"never|always\"\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ "/>]]>"
+#~ msgstr ""
+#~ "<timestamp\n"
+#~ " column=\"timestamp_column\"\n"
+#~ " name=\"propertyName\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " unsaved-value=\"null|undefined\"\n"
+#~ " source=\"vm|db\"\n"
+#~ " generated=\"never|always\"\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ "/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property\n"
+#~ " name=\"propertyName\"\n"
+#~ " column=\"column_name\"\n"
+#~ " type=\"typename\"\n"
+#~ " update=\"true|false\"\n"
+#~ " insert=\"true|false\"\n"
+#~ " formula=\"arbitrary SQL expression\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " unique=\"true|false\"\n"
+#~ " not-null=\"true|false\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ " generated=\"never|insert|always\"\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ " index=\"index_name\"\n"
+#~ " unique_key=\"unique_key_id\"\n"
+#~ " length=\"L\"\n"
+#~ " precision=\"P\"\n"
+#~ " scale=\"S\"\n"
+#~ "/>]]>"
+#~ msgstr ""
+#~ "<property\n"
+#~ " name=\"propertyName\"\n"
+#~ " column=\"column_name\"\n"
+#~ " type=\"typename\"\n"
+#~ " update=\"true|false\"\n"
+#~ " insert=\"true|false\"\n"
+#~ " formula=\"arbitrary SQL expression\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " unique=\"true|false\"\n"
+#~ " not-null=\"true|false\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ " generated=\"never|insert|always\"\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ " index=\"index_name\"\n"
+#~ " unique_key=\"unique_key_id\"\n"
+#~ " length=\"L\"\n"
+#~ " precision=\"P\"\n"
+#~ " scale=\"S\"\n"
+#~ "/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "<property name=\"totalPrice\"\n"
+#~ " formula=\"( SELECT SUM (li.quantity*p.price) FROM LineItem li, "
+#~ "Product p\n"
+#~ " WHERE li.productId = p.productId\n"
+#~ " AND li.customerId = customerId\n"
+#~ " AND li.orderNumber = orderNumber )\"/>]]>"
+#~ msgstr ""
+#~ "<property name=\"totalPrice\"\n"
+#~ " formula=\"( SELECT SUM (li.quantity*p.price) FROM LineItem li, "
+#~ "Product p\n"
+#~ " WHERE li.productId = p.productId\n"
+#~ " AND li.customerId = customerId\n"
+#~ " AND li.orderNumber = orderNumber )\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one\n"
+#~ " name=\"propertyName\"\n"
+#~ " column=\"column_name\"\n"
+#~ " class=\"ClassName\"\n"
+#~ " cascade=\"cascade_style\"\n"
+#~ " fetch=\"join|select\"\n"
+#~ " update=\"true|false\"\n"
+#~ " insert=\"true|false\"\n"
+#~ " property-ref=\"propertyNameFromAssociatedClass\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " unique=\"true|false\"\n"
+#~ " not-null=\"true|false\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ " lazy=\"proxy|no-proxy|false\"\n"
+#~ " not-found=\"ignore|exception\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " formula=\"arbitrary SQL expression\"\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ " embed-xml=\"true|false\"\n"
+#~ " index=\"index_name\"\n"
+#~ " unique_key=\"unique_key_id\"\n"
+#~ " foreign-key=\"foreign_key_name\"\n"
+#~ "/>]]>"
+#~ msgstr ""
+#~ "<many-to-one\n"
+#~ " name=\"propertyName\"\n"
+#~ " column=\"column_name\"\n"
+#~ " class=\"ClassName\"\n"
+#~ " cascade=\"cascade_style\"\n"
+#~ " fetch=\"join|select\"\n"
+#~ " update=\"true|false\"\n"
+#~ " insert=\"true|false\"\n"
+#~ " property-ref=\"propertyNameFromAssociatedClass\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " unique=\"true|false\"\n"
+#~ " not-null=\"true|false\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ " lazy=\"proxy|no-proxy|false\"\n"
+#~ " not-found=\"ignore|exception\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " formula=\"arbitrary SQL expression\"\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ " embed-xml=\"true|false\"\n"
+#~ " index=\"index_name\"\n"
+#~ " unique_key=\"unique_key_id\"\n"
+#~ " foreign-key=\"foreign_key_name\"\n"
+#~ "/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"product\"
class=\"Product\" column="
+#~ "\"PRODUCT_ID\"/>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"product\" class=\"Product\"
column=\"PRODUCT_ID\"/"
+#~ ">"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property name=\"serialNumber\"
unique=\"true\" type=\"string\" "
+#~ "column=\"SERIAL_NUMBER\"/>]]>"
+#~ msgstr ""
+#~ "<property name=\"serialNumber\" unique=\"true\"
type=\"string\" column="
+#~ "\"SERIAL_NUMBER\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"product\"
property-ref=\"serialNumber\" "
+#~ "column=\"PRODUCT_SERIAL_NUMBER\"/>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"product\"
property-ref=\"serialNumber\" column="
+#~ "\"PRODUCT_SERIAL_NUMBER\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"owner\"
property-ref=\"identity.ssn\" column="
+#~ "\"OWNER_SSN\"/>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"owner\"
property-ref=\"identity.ssn\" column="
+#~ "\"OWNER_SSN\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<one-to-one\n"
+#~ " name=\"propertyName\"\n"
+#~ " class=\"ClassName\"\n"
+#~ " cascade=\"cascade_style\"\n"
+#~ " constrained=\"true|false\"\n"
+#~ " fetch=\"join|select\"\n"
+#~ " property-ref=\"propertyNameFromAssociatedClass\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " formula=\"any SQL expression\"\n"
+#~ " lazy=\"proxy|no-proxy|false\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ " embed-xml=\"true|false\"\n"
+#~ " foreign-key=\"foreign_key_name\"\n"
+#~ "/>]]>"
+#~ msgstr ""
+#~ "<one-to-one\n"
+#~ " name=\"propertyName\"\n"
+#~ " class=\"ClassName\"\n"
+#~ " cascade=\"cascade_style\"\n"
+#~ " constrained=\"true|false\"\n"
+#~ " fetch=\"join|select\"\n"
+#~ " property-ref=\"propertyNameFromAssociatedClass\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " formula=\"any SQL expression\"\n"
+#~ " lazy=\"proxy|no-proxy|false\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ "
node=\"element-name|@attribute-name|element/(a)attribute|.\"\n"
+#~ " embed-xml=\"true|false\"\n"
+#~ " foreign-key=\"foreign_key_name\"\n"
+#~ "/>"
+
+#, fuzzy
+#~ msgid "<![CDATA[<one-to-one name=\"person\"
class=\"Person\"/>]]>"
+#~ msgstr "<one-to-one name=\"person\"
class=\"Person\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<one-to-one name=\"employee\"
class=\"Employee\" constrained="
+#~ "\"true\"/>]]>"
+#~ msgstr ""
+#~ "<one-to-one name=\"employee\" class=\"Employee\"
constrained=\"true\"/"
+#~ ">"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"person\"
table=\"PERSON\">\n"
+#~ " <id name=\"id\" column=\"PERSON_ID\">\n"
+#~ " <generator class=\"foreign\">\n"
+#~ " <param
name=\"property\">employee</param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " ...\n"
+#~ " <one-to-one name=\"employee\"\n"
+#~ " class=\"Employee\"\n"
+#~ " constrained=\"true\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"person\"
table=\"PERSON\">\n"
+#~ " <id name=\"id\"
column=\"PERSON_ID\">\n"
+#~ " <generator class=\"foreign\">\n"
+#~ " <param
name=\"property\">employee</param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " ...\n"
+#~ " <one-to-one name=\"employee\"\n"
+#~ " class=\"Employee\"\n"
+#~ " constrained=\"true\"/>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"person\" class=\"Person\"
column=\"PERSON_ID"
+#~ "\" unique=\"true\"/>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"person\" class=\"Person\"
column=\"PERSON_ID\" "
+#~ "unique=\"true\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<one-to-one name=\"employee\"
class=\"Employee\" property-ref="
+#~ "\"person\"/>]]>"
+#~ msgstr ""
+#~ "<one-to-one name\"employee\" class=\"Employee\"
property-ref=\"person"
+#~ "\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<natural-id mutable=\"true|false\"/>\n"
+#~ " <property ... />\n"
+#~ " <many-to-one ... />\n"
+#~ " ......\n"
+#~ "</natural-id>]]>"
+#~ msgstr ""
+#~ "<natural-id mutable=\"true|false\"/>\n"
+#~ " <property ... />\n"
+#~ " <many-to-one ... />\n"
+#~ " ......\n"
+#~ "</natural-id>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<component\n"
+#~ " name=\"propertyName\"\n"
+#~ " class=\"className\"\n"
+#~ " insert=\"true|false\"\n"
+#~ " update=\"true|false\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ " unique=\"true|false\"\n"
+#~ " node=\"element-name|.\"\n"
+#~ ">\n"
+#~ "\n"
+#~ " <property ...../>\n"
+#~ " <many-to-one .... />\n"
+#~ " ........\n"
+#~ "</component>]]>"
+#~ msgstr ""
+#~ "<component \n"
+#~ " name=\"propertyName\" \n"
+#~ " class=\"className\"\n"
+#~ " insert=\"true|false\"\n"
+#~ " update=\"true|false\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ " unique=\"true|false\"\n"
+#~ " node=\"element-name|.\"\n"
+#~ ">\n"
+#~ " \n"
+#~ " <property ...../>\n"
+#~ " <many-to-one .... />\n"
+#~ " ........\n"
+#~ "</component>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<properties\n"
+#~ " name=\"logicalName\"\n"
+#~ " insert=\"true|false\"\n"
+#~ " update=\"true|false\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ " unique=\"true|false\"\n"
+#~ ">\n"
+#~ "\n"
+#~ " <property ...../>\n"
+#~ " <many-to-one .... />\n"
+#~ " ........\n"
+#~ "</properties>]]>"
+#~ msgstr ""
+#~ "<properties \n"
+#~ " name=\"logicalName\" \n"
+#~ " insert=\"true|false\"\n"
+#~ " update=\"true|false\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ " unique=\"true|false\"\n"
+#~ ">\n"
+#~ " \n"
+#~ " <property ...../>\n"
+#~ " <many-to-one .... />\n"
+#~ " ........\n"
+#~ "</properties>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"personNumber\"/>\n"
+#~ "\n"
+#~ " ...\n"
+#~ " <properties name=\"name\"\n"
+#~ " unique=\"true\" update=\"false\">\n"
+#~ " <property name=\"firstName\"/>\n"
+#~ " <property name=\"initial\"/>\n"
+#~ " <property name=\"lastName\"/>\n"
+#~ " </properties>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"personNumber\"/>\n"
+#~ " ...\n"
+#~ " <properties name=\"name\" \n"
+#~ " unique=\"true\"
update=\"false\">\n"
+#~ " <property name=\"firstName\"/>\n"
+#~ " <property name=\"initial\"/>\n"
+#~ " <property name=\"lastName\"/>\n"
+#~ " </properties>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"person\"\n"
+#~ " class=\"Person\" property-ref=\"name\">\n"
+#~ " <column name=\"firstName\"/>\n"
+#~ " <column name=\"initial\"/>\n"
+#~ " <column name=\"lastName\"/>\n"
+#~ "</many-to-one>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"person\" \n"
+#~ " class=\"Person\"
property-ref=\"name\">\n"
+#~ " <column name=\"firstName\"/>\n"
+#~ " <column name=\"initial\"/>\n"
+#~ " <column name=\"lastName\"/>\n"
+#~ "</many-to-one>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<subclass\n"
+#~ " name=\"ClassName\"\n"
+#~ " discriminator-value=\"discriminator_value\"\n"
+#~ " proxy=\"ProxyInterface\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " dynamic-update=\"true|false\"\n"
+#~ " dynamic-insert=\"true|false\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " node=\"element-name\"\n"
+#~ " extends=\"SuperclassName\">\n"
+#~ "\n"
+#~ " <property .... />\n"
+#~ " .....\n"
+#~ "</subclass>]]>"
+#~ msgstr ""
+#~ "<subclass\n"
+#~ " name=\"ClassName\"\n"
+#~ " discriminator-value=\"discriminator_value\"\n"
+#~ " proxy=\"ProxyInterface\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " dynamic-update=\"true|false\"\n"
+#~ " dynamic-insert=\"true|false\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " node=\"element-name\"\n"
+#~ " extends=\"SuperclassName\">\n"
+#~ "\n"
+#~ " <property .... />\n"
+#~ " .....\n"
+#~ "</subclass>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<joined-subclass\n"
+#~ " name=\"ClassName\"\n"
+#~ " table=\"tablename\"\n"
+#~ " proxy=\"ProxyInterface\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " dynamic-update=\"true|false\"\n"
+#~ " dynamic-insert=\"true|false\"\n"
+#~ " schema=\"schema\"\n"
+#~ " catalog=\"catalog\"\n"
+#~ " extends=\"SuperclassName\"\n"
+#~ " persister=\"ClassName\"\n"
+#~ " subselect=\"SQL expression\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " node=\"element-name\">\n"
+#~ "\n"
+#~ " <key .... >\n"
+#~ "\n"
+#~ " <property .... />\n"
+#~ " .....\n"
+#~ "</joined-subclass>]]>"
+#~ msgstr ""
+#~ "<joined-subclass\n"
+#~ " name=\"ClassName\"\n"
+#~ " table=\"tablename\"\n"
+#~ " proxy=\"ProxyInterface\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " dynamic-update=\"true|false\"\n"
+#~ " dynamic-insert=\"true|false\"\n"
+#~ " schema=\"schema\"\n"
+#~ " catalog=\"catalog\"\n"
+#~ " extends=\"SuperclassName\"\n"
+#~ " persister=\"ClassName\"\n"
+#~ " subselect=\"SQL expression\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " node=\"element-name\">\n"
+#~ "\n"
+#~ " <key .... >\n"
+#~ "\n"
+#~ " <property .... />\n"
+#~ " .....\n"
+#~ "</joined-subclass>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
+#~ "\n"
+#~ "<hibernate-mapping package=\"eg\">\n"
+#~ "\n"
+#~ " <class name=\"Cat\" table=\"CATS\">\n"
+#~ " <id name=\"id\" column=\"uid\"
type=\"long\">\n"
+#~ " <generator class=\"hilo\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"birthdate\"
type=\"date\"/>\n"
+#~ " <property name=\"color\"
not-null=\"true\"/>\n"
+#~ " <property name=\"sex\"
not-null=\"true\"/>\n"
+#~ " <property name=\"weight\"/>\n"
+#~ " <many-to-one name=\"mate\"/>\n"
+#~ " <set name=\"kittens\">\n"
+#~ " <key column=\"MOTHER\"/>\n"
+#~ " <one-to-many class=\"Cat\"/>\n"
+#~ " </set>\n"
+#~ " <joined-subclass name=\"DomesticCat\" table="
+#~ "\"DOMESTIC_CATS\">\n"
+#~ " <key column=\"CAT\"/>\n"
+#~ " <property name=\"name\"
type=\"string\"/>\n"
+#~ " </joined-subclass>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"eg.Dog\">\n"
+#~ " <!-- mapping for Dog could go here -->\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD//EN\"\n"
+#~ " \"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
+#~ "\">\n"
+#~ "\n"
+#~ "<hibernate-mapping package=\"eg\">\n"
+#~ "\n"
+#~ " <class name=\"Cat\"
table=\"CATS\">\n"
+#~ " <id name=\"id\" column=\"uid\"
type=\"long\">\n"
+#~ " <generator
class=\"hilo\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"birthdate\"
type=\"date\"/>\n"
+#~ " <property name=\"color\"
not-null=\"true\"/>\n"
+#~ " <property name=\"sex\"
not-null=\"true\"/>\n"
+#~ " <property name=\"weight\"/>\n"
+#~ " <many-to-one name=\"mate\"/>\n"
+#~ " <set name=\"kittens\">\n"
+#~ " <key
column=\"MOTHER\"/>\n"
+#~ " <one-to-many
class=\"Cat\"/>\n"
+#~ " </set>\n"
+#~ " <joined-subclass name=\"DomesticCat\"
table="
+#~ "\"DOMESTIC_CATS\">\n"
+#~ " <key column=\"CAT\"/>\n"
+#~ " <property name=\"name\"
type=\"string\"/>\n"
+#~ " </joined-subclass>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"eg.Dog\">\n"
+#~ " <!-- mapping for Dog could go here -->\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<union-subclass\n"
+#~ " name=\"ClassName\"\n"
+#~ " table=\"tablename\"\n"
+#~ " proxy=\"ProxyInterface\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " dynamic-update=\"true|false\"\n"
+#~ " dynamic-insert=\"true|false\"\n"
+#~ " schema=\"schema\"\n"
+#~ " catalog=\"catalog\"\n"
+#~ " extends=\"SuperclassName\"\n"
+#~ " abstract=\"true|false\"\n"
+#~ " persister=\"ClassName\"\n"
+#~ " subselect=\"SQL expression\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " node=\"element-name\">\n"
+#~ "\n"
+#~ " <property .... />\n"
+#~ " .....\n"
+#~ "</union-subclass>]]>"
+#~ msgstr ""
+#~ "<union-subclass\n"
+#~ " name=\"ClassName\"\n"
+#~ " table=\"tablename\"\n"
+#~ " proxy=\"ProxyInterface\"\n"
+#~ " lazy=\"true|false\"\n"
+#~ " dynamic-update=\"true|false\"\n"
+#~ " dynamic-insert=\"true|false\"\n"
+#~ " schema=\"schema\"\n"
+#~ " catalog=\"catalog\"\n"
+#~ " extends=\"SuperclassName\"\n"
+#~ " abstract=\"true|false\"\n"
+#~ " persister=\"ClassName\"\n"
+#~ " subselect=\"SQL expression\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " node=\"element-name\">\n"
+#~ "\n"
+#~ " <property .... />\n"
+#~ " .....\n"
+#~ "</union-subclass>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<join\n"
+#~ " table=\"tablename\"\n"
+#~ " schema=\"owner\"\n"
+#~ " catalog=\"catalog\"\n"
+#~ " fetch=\"join|select\"\n"
+#~ " inverse=\"true|false\"\n"
+#~ " optional=\"true|false\">\n"
+#~ "\n"
+#~ " <key ... />\n"
+#~ "\n"
+#~ " <property ... />\n"
+#~ " ...\n"
+#~ "</join>]]>"
+#~ msgstr ""
+#~ "<join\n"
+#~ " table=\"tablename\"\n"
+#~ " schema=\"owner\"\n"
+#~ " catalog=\"catalog\"\n"
+#~ " fetch=\"join|select\"\n"
+#~ " inverse=\"true|false\"\n"
+#~ " optional=\"true|false\">\n"
+#~ " \n"
+#~ " <key ... />\n"
+#~ " \n"
+#~ " <property ... />\n"
+#~ " ...\n"
+#~ "</join>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\"\n"
+#~ " table=\"PERSON\">\n"
+#~ "\n"
+#~ " <id name=\"id\"
column=\"PERSON_ID\">...</id>\n"
+#~ "\n"
+#~ " <join table=\"ADDRESS\">\n"
+#~ " <key column=\"ADDRESS_ID\"/>\n"
+#~ " <property name=\"address\"/>\n"
+#~ " <property name=\"zip\"/>\n"
+#~ " <property name=\"country\"/>\n"
+#~ " </join>\n"
+#~ " ...]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\"\n"
+#~ " table=\"PERSON\">\n"
+#~ "\n"
+#~ " <id name=\"id\"
column=\"PERSON_ID\">...</id>\n"
+#~ "\n"
+#~ " <join table=\"ADDRESS\">\n"
+#~ " <key column=\"ADDRESS_ID\"/>\n"
+#~ " <property name=\"address\"/>\n"
+#~ " <property name=\"zip\"/>\n"
+#~ " <property name=\"country\"/>\n"
+#~ " </join>\n"
+#~ " ..."
+
+#, fuzzy
+#~ msgid "<title>Key</title>"
+#~ msgstr "<title>key</title>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<key\n"
+#~ " column=\"columnname\"\n"
+#~ " on-delete=\"noaction|cascade\"\n"
+#~ " property-ref=\"propertyName\"\n"
+#~ " not-null=\"true|false\"\n"
+#~ " update=\"true|false\"\n"
+#~ " unique=\"true|false\"\n"
+#~ "/>]]>"
+#~ msgstr ""
+#~ "<key\n"
+#~ " column=\"columnname\"\n"
+#~ " on-delete=\"noaction|cascade\"\n"
+#~ " property-ref=\"propertyName\"\n"
+#~ " not-null=\"true|false\"\n"
+#~ " update=\"true|false\"\n"
+#~ " unique=\"true|false\"\n"
+#~ "/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<column\n"
+#~ " name=\"column_name\"\n"
+#~ " length=\"N\"\n"
+#~ " precision=\"N\"\n"
+#~ " scale=\"N\"\n"
+#~ " not-null=\"true|false\"\n"
+#~ " unique=\"true|false\"\n"
+#~ " unique-key=\"multicolumn_unique_key_name\"\n"
+#~ " index=\"index_name\"\n"
+#~ " sql-type=\"sql_type_name\"\n"
+#~ " check=\"SQL expression\"\n"
+#~ " default=\"SQL expression\"/>]]>"
+#~ msgstr ""
+#~ "<column\n"
+#~ " name=\"column_name\"\n"
+#~ " length=\"N\"\n"
+#~ " precision=\"N\"\n"
+#~ " scale=\"N\"\n"
+#~ " not-null=\"true|false\"\n"
+#~ " unique=\"true|false\"\n"
+#~ " unique-key=\"multicolumn_unique_key_name\"\n"
+#~ " index=\"index_name\"\n"
+#~ " sql-type=\"sql_type_name\"\n"
+#~ " check=\"SQL expression\"\n"
+#~ " default=\"SQL expression\"/>"
+
+#, fuzzy
+#~ msgid "<![CDATA[<formula>SQL expression</formula>]]>"
+#~ msgstr "<formula>SQL expression</formula>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"homeAddress\"
class=\"Address\"\n"
+#~ " insert=\"false\" update=\"false\">\n"
+#~ " <column name=\"person_id\" not-null=\"true\"
length=\"10\"/>\n"
+#~ " <formula>'MAILING'</formula>\n"
+#~ "</many-to-one>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"homeAddress\"
class=\"Address\"\n"
+#~ " insert=\"false\" update=\"false\">\n"
+#~ " <column name=\"person_id\" not-null=\"true\"
length=\"10\"/>\n"
+#~ " <formula>'MAILING'</formula>\n"
+#~ "</many-to-one>"
+
+#, fuzzy
+#~ msgid "<![CDATA[<import class=\"java.lang.Object\"
rename=\"Universe\"/>]]>"
+#~ msgstr "<import class=\"java.lang.Object\"
rename=\"Universe\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<import\n"
+#~ " class=\"ClassName\"\n"
+#~ " rename=\"ShortName\"\n"
+#~ "/>]]>"
+#~ msgstr ""
+#~ "<import\n"
+#~ " class=\"ClassName\"\n"
+#~ " rename=\"ShortName\"\n"
+#~ "/>"
+
+#, fuzzy
+#~ msgid "<title>Any</title>"
+#~ msgstr "<title>any</title>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<any name=\"being\" id-type=\"long\"
meta-type=\"string\">\n"
+#~ " <meta-value value=\"TBL_ANIMAL\"
class=\"Animal\"/>\n"
+#~ " <meta-value value=\"TBL_HUMAN\"
class=\"Human\"/>\n"
+#~ " <meta-value value=\"TBL_ALIEN\"
class=\"Alien\"/>\n"
+#~ " <column name=\"table_name\"/>\n"
+#~ " <column name=\"id\"/>\n"
+#~ "</any>]]>"
+#~ msgstr ""
+#~ "<any name=\"being\" id-type=\"long\"
meta-type=\"string\">\n"
+#~ " <meta-value value=\"TBL_ANIMAL\"
class=\"Animal\"/>\n"
+#~ " <meta-value value=\"TBL_HUMAN\"
class=\"Human\"/>\n"
+#~ " <meta-value value=\"TBL_ALIEN\"
class=\"Alien\"/>\n"
+#~ " <column name=\"table_name\"/>\n"
+#~ " <column name=\"id\"/>\n"
+#~ "</any>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<any\n"
+#~ " name=\"propertyName\"\n"
+#~ " id-type=\"idtypename\"\n"
+#~ " meta-type=\"metatypename\"\n"
+#~ " cascade=\"cascade_style\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ ">\n"
+#~ " <meta-value ... />\n"
+#~ " <meta-value ... />\n"
+#~ " .....\n"
+#~ " <column .... />\n"
+#~ " <column .... />\n"
+#~ " .....\n"
+#~ "</any>]]>"
+#~ msgstr ""
+#~ "<any\n"
+#~ " name=\"propertyName\"\n"
+#~ " id-type=\"idtypename\"\n"
+#~ " meta-type=\"metatypename\"\n"
+#~ " cascade=\"cascade_style\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ ">\n"
+#~ " <meta-value ... />\n"
+#~ " <meta-value ... />\n"
+#~ " .....\n"
+#~ " <column .... />\n"
+#~ " <column .... />\n"
+#~ " .....\n"
+#~ "</any>"
+
+#~ msgid "string"
+#~ msgstr "string"
+
+#, fuzzy
+#~ msgid "class"
+#~ msgstr "subclass"
+
+#~ msgid "binary"
+#~ msgstr "binary"
+
+#~ msgid "text"
+#~ msgstr "text"
+
+#~ msgid "serializable"
+#~ msgstr "serializable"
+
+#~ msgid "clob, blob"
+#~ msgstr "clob, blob"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property name=\"twoStrings\"
type=\"org.hibernate.test."
+#~ "DoubleStringType\">\n"
+#~ " <column name=\"first_string\"/>\n"
+#~ " <column name=\"second_string\"/>\n"
+#~ "</property>]]>"
+#~ msgstr ""
+#~ "<property name=\"twoStrings\"
type=\"org.hibernate.test."
+#~ "DoubleStringType\">\n"
+#~ " <column name=\"first_string\"/>\n"
+#~ " <column name=\"second_string\"/>\n"
+#~ "</property>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property name=\"priority\">\n"
+#~ " <type
name=\"com.mycompany.usertypes.DefaultValueIntegerType\">\n"
+#~ " <param name=\"default\">0</param>\n"
+#~ " </type>\n"
+#~ "</property>]]>"
+#~ msgstr ""
+#~ "<property name=\"priority\">\n"
+#~ " <type
name=\"com.mycompany.usertypes.DefaultValueIntegerType"
+#~ "\">\n"
+#~ " <param
name=\"default\">0</param>\n"
+#~ " </type>\n"
+#~ "</property>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<typedef
class=\"com.mycompany.usertypes.DefaultValueIntegerType"
+#~ "\" name=\"default_zero\">\n"
+#~ " <param name=\"default\">0</param>\n"
+#~ "</typedef>]]>"
+#~ msgstr ""
+#~ "<typedef
class=\"com.mycompany.usertypes.DefaultValueIntegerType\" "
+#~ "name=\"default_zero\">\n"
+#~ " <param
name=\"default\">0</param>\n"
+#~ "</typedef>"
+
+#, fuzzy
+#~ msgid "<![CDATA[<property name=\"priority\"
type=\"default_zero\"/>]]>"
+#~ msgstr "<property name=\"priority\"
type=\"default_zero\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Contract\"
table=\"Contracts\"\n"
+#~ " entity-name=\"CurrentContract\">\n"
+#~ " ...\n"
+#~ " <set name=\"history\" inverse=\"true\"\n"
+#~ " order-by=\"effectiveEndDate desc\">\n"
+#~ " <key column=\"currentContractId\"/>\n"
+#~ " <one-to-many
entity-name=\"HistoricalContract\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Contract\"
table=\"ContractHistory\"\n"
+#~ " entity-name=\"HistoricalContract\">\n"
+#~ " ...\n"
+#~ " <many-to-one name=\"currentContract\"\n"
+#~ " column=\"currentContractId\"\n"
+#~ " entity-name=\"CurrentContract\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Contract\" table=\"Contracts\"
\n"
+#~ " entity-name=\"CurrentContract\">\n"
+#~ " ...\n"
+#~ " <set name=\"history\" inverse=\"true\" \n"
+#~ " order-by=\"effectiveEndDate desc\">\n"
+#~ " <key column=\"currentContractId\"/>\n"
+#~ " <one-to-many
entity-name=\"HistoricalContract\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Contract\" table=\"ContractHistory\"
\n"
+#~ " entity-name=\"HistoricalContract\">\n"
+#~ " ...\n"
+#~ " <many-to-one name=\"currentContract\" \n"
+#~ " column=\"currentContractId\" \n"
+#~ " entity-name=\"CurrentContract\"/>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"LineItem\" table=\"`Line
Item`\">\n"
+#~ " <id name=\"id\" column=\"`Item
Id`\"/><generator class=\"assigned\"/"
+#~ "></id>\n"
+#~ " <property name=\"itemNumber\" column=\"`Item
#`\"/>\n"
+#~ " ...\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"LineItem\" table=\"`Line
Item`\">\n"
+#~ " <id name=\"id\" column=\"`Item
Id`\"/><generator class="
+#~ "\"assigned\"/></id>\n"
+#~ " <property name=\"itemNumber\" column=\"`Item
#`\"/>\n"
+#~ " ...\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[package eg;\n"
+#~ "import java.util.Set;\n"
+#~ "import java.util.Date;\n"
+#~ "\n"
+#~ "/**\n"
+#~ " * @hibernate.class\n"
+#~ " * table=\"CATS\"\n"
+#~ " */\n"
+#~ "public class Cat {\n"
+#~ " private Long id; // identifier\n"
+#~ " private Date birthdate;\n"
+#~ " private Cat mother;\n"
+#~ " private Set kittens\n"
+#~ " private Color color;\n"
+#~ " private char sex;\n"
+#~ " private float weight;\n"
+#~ "\n"
+#~ " /*\n"
+#~ " * @hibernate.id\n"
+#~ " * generator-class=\"native\"\n"
+#~ " * column=\"CAT_ID\"\n"
+#~ " */\n"
+#~ " public Long getId() {\n"
+#~ " return id;\n"
+#~ " }\n"
+#~ " private void setId(Long id) {\n"
+#~ " this.id=id;\n"
+#~ " }\n"
+#~ "\n"
+#~ " /**\n"
+#~ " * @hibernate.many-to-one\n"
+#~ " * column=\"PARENT_ID\"\n"
+#~ " */\n"
+#~ " public Cat getMother() {\n"
+#~ " return mother;\n"
+#~ " }\n"
+#~ " void setMother(Cat mother) {\n"
+#~ " this.mother = mother;\n"
+#~ " }\n"
+#~ "\n"
+#~ " /**\n"
+#~ " * @hibernate.property\n"
+#~ " * column=\"BIRTH_DATE\"\n"
+#~ " */\n"
+#~ " public Date getBirthdate() {\n"
+#~ " return birthdate;\n"
+#~ " }\n"
+#~ " void setBirthdate(Date date) {\n"
+#~ " birthdate = date;\n"
+#~ " }\n"
+#~ " /**\n"
+#~ " * @hibernate.property\n"
+#~ " * column=\"WEIGHT\"\n"
+#~ " */\n"
+#~ " public float getWeight() {\n"
+#~ " return weight;\n"
+#~ " }\n"
+#~ " void setWeight(float weight) {\n"
+#~ " this.weight = weight;\n"
+#~ " }\n"
+#~ "\n"
+#~ " /**\n"
+#~ " * @hibernate.property\n"
+#~ " * column=\"COLOR\"\n"
+#~ " * not-null=\"true\"\n"
+#~ " */\n"
+#~ " public Color getColor() {\n"
+#~ " return color;\n"
+#~ " }\n"
+#~ " void setColor(Color color) {\n"
+#~ " this.color = color;\n"
+#~ " }\n"
+#~ " /**\n"
+#~ " * @hibernate.set\n"
+#~ " * inverse=\"true\"\n"
+#~ " * order-by=\"BIRTH_DATE\"\n"
+#~ " * @hibernate.collection-key\n"
+#~ " * column=\"PARENT_ID\"\n"
+#~ " * @hibernate.collection-one-to-many\n"
+#~ " */\n"
+#~ " public Set getKittens() {\n"
+#~ " return kittens;\n"
+#~ " }\n"
+#~ " void setKittens(Set kittens) {\n"
+#~ " this.kittens = kittens;\n"
+#~ " }\n"
+#~ " // addKitten not needed by Hibernate\n"
+#~ " public void addKitten(Cat kitten) {\n"
+#~ " kittens.add(kitten);\n"
+#~ " }\n"
+#~ "\n"
+#~ " /**\n"
+#~ " * @hibernate.property\n"
+#~ " * column=\"SEX\"\n"
+#~ " * not-null=\"true\"\n"
+#~ " * update=\"false\"\n"
+#~ " */\n"
+#~ " public char getSex() {\n"
+#~ " return sex;\n"
+#~ " }\n"
+#~ " void setSex(char sex) {\n"
+#~ " this.sex=sex;\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "package eg;\n"
+#~ "import java.util.Set;\n"
+#~ "import java.util.Date;\n"
+#~ "\n"
+#~ "/**\n"
+#~ " * @hibernate.class\n"
+#~ " * table=\"CATS\"\n"
+#~ " */\n"
+#~ "public class Cat {\n"
+#~ " private Long id; // identifier\n"
+#~ " private Date birthdate;\n"
+#~ " private Cat mother;\n"
+#~ " private Set kittens\n"
+#~ " private Color color;\n"
+#~ " private char sex;\n"
+#~ " private float weight;\n"
+#~ "\n"
+#~ " /*\n"
+#~ " * @hibernate.id\n"
+#~ " * generator-class=\"native\"\n"
+#~ " * column=\"CAT_ID\"\n"
+#~ " */\n"
+#~ " public Long getId() {\n"
+#~ " return id;\n"
+#~ " }\n"
+#~ " private void setId(Long id) {\n"
+#~ " this.id=id;\n"
+#~ " }\n"
+#~ "\n"
+#~ " /**\n"
+#~ " * @hibernate.many-to-one\n"
+#~ " * column=\"PARENT_ID\"\n"
+#~ " */\n"
+#~ " public Cat getMother() {\n"
+#~ " return mother;\n"
+#~ " }\n"
+#~ " void setMother(Cat mother) {\n"
+#~ " this.mother = mother;\n"
+#~ " }\n"
+#~ "\n"
+#~ " /**\n"
+#~ " * @hibernate.property\n"
+#~ " * column=\"BIRTH_DATE\"\n"
+#~ " */\n"
+#~ " public Date getBirthdate() {\n"
+#~ " return birthdate;\n"
+#~ " }\n"
+#~ " void setBirthdate(Date date) {\n"
+#~ " birthdate = date;\n"
+#~ " }\n"
+#~ " /**\n"
+#~ " * @hibernate.property\n"
+#~ " * column=\"WEIGHT\"\n"
+#~ " */\n"
+#~ " public float getWeight() {\n"
+#~ " return weight;\n"
+#~ " }\n"
+#~ " void setWeight(float weight) {\n"
+#~ " this.weight = weight;\n"
+#~ " }\n"
+#~ "\n"
+#~ " /**\n"
+#~ " * @hibernate.property\n"
+#~ " * column=\"COLOR\"\n"
+#~ " * not-null=\"true\"\n"
+#~ " */\n"
+#~ " public Color getColor() {\n"
+#~ " return color;\n"
+#~ " }\n"
+#~ " void setColor(Color color) {\n"
+#~ " this.color = color;\n"
+#~ " }\n"
+#~ " /**\n"
+#~ " * @hibernate.set\n"
+#~ " * inverse=\"true\"\n"
+#~ " * order-by=\"BIRTH_DATE\"\n"
+#~ " * @hibernate.collection-key\n"
+#~ " * column=\"PARENT_ID\"\n"
+#~ " * @hibernate.collection-one-to-many\n"
+#~ " */\n"
+#~ " public Set getKittens() {\n"
+#~ " return kittens;\n"
+#~ " }\n"
+#~ " void setKittens(Set kittens) {\n"
+#~ " this.kittens = kittens;\n"
+#~ " }\n"
+#~ " // addKitten not needed by Hibernate\n"
+#~ " public void addKitten(Cat kitten) {\n"
+#~ " kittens.add(kitten);\n"
+#~ " }\n"
+#~ "\n"
+#~ " /**\n"
+#~ " * @hibernate.property\n"
+#~ " * column=\"SEX\"\n"
+#~ " * not-null=\"true\"\n"
+#~ " * update=\"false\"\n"
+#~ " */\n"
+#~ " public char getSex() {\n"
+#~ " return sex;\n"
+#~ " }\n"
+#~ " void setSex(char sex) {\n"
+#~ " this.sex=sex;\n"
+#~ " }\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[@Entity(access = AccessType.FIELD)\n"
+#~ "public class Customer implements Serializable {\n"
+#~ "\n"
+#~ " @Id;\n"
+#~ " Long id;\n"
+#~ "\n"
+#~ " String firstName;\n"
+#~ " String lastName;\n"
+#~ " Date birthday;\n"
+#~ "\n"
+#~ " @Transient\n"
+#~ " Integer age;\n"
+#~ "\n"
+#~ " @Embedded\n"
+#~ " private Address homeAddress;\n"
+#~ "\n"
+#~ " @OneToMany(cascade=CascadeType.ALL)\n"
+#~ " @JoinColumn(name=\"CUSTOMER_ID\")\n"
+#~ " Set<Order> orders;\n"
+#~ "\n"
+#~ " // Getter/setter and business methods\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "@Entity(access = AccessType.FIELD)\n"
+#~ "public class Customer implements Serializable {\n"
+#~ "\n"
+#~ " @Id;\n"
+#~ " Long id;\n"
+#~ "\n"
+#~ " String firstName;\n"
+#~ " String lastName;\n"
+#~ " Date birthday;\n"
+#~ "\n"
+#~ " @Transient\n"
+#~ " Integer age;\n"
+#~ "\n"
+#~ " @Embedded\n"
+#~ " private Address homeAddress;\n"
+#~ "\n"
+#~ " @OneToMany(cascade=CascadeType.ALL)\n"
+#~ " @JoinColumn(name=\"CUSTOMER_ID\")\n"
+#~ " Set<Order> orders;\n"
+#~ "\n"
+#~ " // Getter/setter and business methods\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ " ...\n"
+#~ " <database-object>\n"
+#~ " <create>CREATE TRIGGER my_trigger ...</create>\n"
+#~ " <drop>DROP TRIGGER my_trigger</drop>\n"
+#~ " </database-object>\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ " ...\n"
+#~ " <database-object>\n"
+#~ " <create>CREATE TRIGGER my_trigger
...</create>\n"
+#~ " <drop>DROP TRIGGER
my_trigger</drop>\n"
+#~ " </database-object>\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ " ...\n"
+#~ " <database-object>\n"
+#~ " <definition class=\"MyTriggerDefinition\"/>\n"
+#~ " </database-object>\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ " ...\n"
+#~ " <database-object>\n"
+#~ " <definition
class=\"MyTriggerDefinition\"/>\n"
+#~ " </database-object>\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ " ...\n"
+#~ " <database-object>\n"
+#~ " <definition class=\"MyTriggerDefinition\"/>\n"
+#~ " <dialect-scope
name=\"org.hibernate.dialect.Oracle9iDialect\"/>\n"
+#~ " <dialect-scope
name=\"org.hibernate.dialect.Oracle10gDialect\"/>\n"
+#~ " </database-object>\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ " ...\n"
+#~ " <database-object>\n"
+#~ " <definition
class=\"MyTriggerDefinition\"/>\n"
+#~ " <dialect-scope
name=\"org.hibernate.dialect.Oracle9Dialect\"/"
+#~ ">\n"
+#~ " <dialect-scope
name=\"org.hibernate.dialect.OracleDialect\"/"
+#~ ">\n"
+#~ " </database-object>\n"
+#~ "</hibernate-mapping>"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/batch.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/batch.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/batch.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,207 +1,125 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-23T01:43:44\n"
+"PO-Revision-Date: 2010-01-13 15:16+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: batch.xml:29
#, no-c-format
msgid "Batch processing"
msgstr "バッチ処理"
#. Tag: para
-#: batch.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A naive approach to inserting 100,000 rows in the database using Hibernate "
"might look like this:"
msgstr ""
-"Hibernateを使ってデータベースに100,000行を挿入する愚直な方法は、このようなも"
+"Hibernate を使ってデータベースに100,000行を挿入する愚直な方法は、このようなも"
"のです:"
-#. Tag: programlisting
-#: batch.xml:36
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Session session = sessionFactory.openSession();\n"
-"Transaction tx = session.beginTransaction();\n"
-"for ( int i=0; i<100000; i++ ) {\n"
-" Customer customer = new Customer(.....);\n"
-" session.save(customer);\n"
-"}\n"
-"tx.commit();\n"
-"session.close();]]>"
-msgstr ""
-
-#. Tag: para
-#: batch.xml:38
-#, fuzzy, no-c-format
-msgid ""
"This would fall over with an <literal>OutOfMemoryException</literal>
"
"somewhere around the 50,000th row. That is because Hibernate caches all the "
"newly inserted <literal>Customer</literal> instances in the
session-level "
"cache. In this chapter we will show you how to avoid this problem."
msgstr ""
"これは50,000番目の行のあたりで <literal>OutOfMemoryException</literal> で失敗"
-"するでしょう。 Hibernateがセッションレベルキャッシュで、 新しく挿入されたすべ"
+"するでしょう。 Hibernate がセッションレベルキャッシュで、新しく挿入されたすべ"
"ての <literal>Customer</literal> インスタンスをキャッシュするからです。"
#. Tag: para
-#: batch.xml:45
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you are undertaking batch processing you will need to enable the use of "
"JDBC batching. This is absolutely essential if you want to achieve optimal "
"performance. Set the JDBC batch size to a reasonable number (10-50, for "
"example):"
msgstr ""
-"この章では、この問題を回避する方法を紹介します。 しかしバッチ処理をするなら、"
-"JDBCバッチが使用可能であることが非常に重要です。 そうでなければ手頃なパフォー"
-"マンスが得られません。 JDBCバッチサイズを手頃な数値(例えば、10から50)に設定"
-"してください:"
+"この章では、この問題を回避する方法を紹介します。しかしバッチ処理をするなら、 "
+"JDBC バッチが使用可能であることが非常に重要です。そうでなければ手頃なパフォー"
+"マンスが得られません。 JDBC バッチサイズを手頃な数値(例えば、10から50)に設"
+"定してください:"
-#. Tag: programlisting
-#: batch.xml:52
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[hibernate.jdbc.batch_size 20]]>"
-msgstr ""
-
-#. Tag: para
-#: batch.xml:54
-#, fuzzy, no-c-format
msgid ""
"Hibernate disables insert batching at the JDBC level transparently if you "
"use an <literal>identity</literal> identifier generator."
msgstr ""
-"Note that Hibernate disables insert batching at the JDBC level transparently
"
-"if you use an <literal>identiy</literal> identifier generator."
+"<literal>identiy</literal> 識別子生成を使う場合は、Hibernate は JDBC レベルで"
+"インサートバッチングを無効にすることに注意してください。"
#. Tag: para
-#: batch.xml:59
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also do this kind of work in a process where interaction with the "
"second-level cache is completely disabled:"
msgstr ""
-"また二次キャッシュが全く効かないプロセスで、 このような作業をしたいと思うかも"
+"また二次キャッシュが全く効かないプロセスで、このような作業をしたいと思うかも"
"しれません:"
-#. Tag: programlisting
-#: batch.xml:64
-#, no-c-format
-msgid "<![CDATA[hibernate.cache.use_second_level_cache false]]>"
-msgstr ""
-
#. Tag: para
-#: batch.xml:66
#, no-c-format
msgid ""
"However, this is not absolutely necessary, since we can explicitly set the "
"<literal>CacheMode</literal> to disable interaction with the
second-level "
"cache."
msgstr ""
-"しかし、これは絶対に必要というわけではありません。 なぜなら明示的に "
-"<literal>CacheMode</literal> を設定して、 二次キャッシュとの相互作用を無効に"
-"することができるからです。"
+"しかし、これは絶対に必要というわけではありません。なぜなら明示的に "
+"<literal>CacheMode</literal> を設定して、二次キャッシュとの相互作用を無効にす"
+"ることができるからです。"
#. Tag: title
-#: batch.xml:72
#, no-c-format
msgid "Batch inserts"
msgstr "バッチ挿入"
#. Tag: para
-#: batch.xml:74
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"When making new objects persistent <literal>flush()</literal> and then
"
"<literal>clear()</literal> the session regularly in order to control
the "
"size of the first-level cache."
msgstr ""
-"新しいオブジェクトを永続化するとき、一次キャッシュのサイズを制限するため、 "
+"新しいオブジェクトを永続化するとき、一次キャッシュのサイズを制限するため、"
"セッションを <literal>flush()</literal> して
<literal>clear()</literal> しな"
"ければなりません。"
-#. Tag: programlisting
-#: batch.xml:80
-#, no-c-format
-msgid ""
-"<![CDATA[Session session = sessionFactory.openSession();\n"
-"Transaction tx = session.beginTransaction();\n"
-" \n"
-"for ( int i=0; i<100000; i++ ) {\n"
-" Customer customer = new Customer(.....);\n"
-" session.save(customer);\n"
-" if ( i % 20 == 0 ) { //20, same as the JDBC batch size\n"
-" //flush a batch of inserts and release memory:\n"
-" session.flush();\n"
-" session.clear();\n"
-" }\n"
-"}\n"
-" \n"
-"tx.commit();\n"
-"session.close();]]>"
-msgstr ""
-
#. Tag: title
-#: batch.xml:85
#, no-c-format
msgid "Batch updates"
msgstr "バッチ更新"
#. Tag: para
-#: batch.xml:87
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For retrieving and updating data, the same ideas apply. In addition, you "
"need to use <literal>scroll()</literal> to take advantage of
server-side "
"cursors for queries that return many rows of data."
msgstr ""
-"データを復元したり更新したりするには同じアイディアを適用します。 それに加え"
-"て、データの行を多く返すクエリに対して有効な サーバーサイドのカーソルの利点を"
+"データを復元したり更新したりするには同じアイディアを適用します。それに加え"
+"て、データの行を多く返すクエリに対して有効なサーバーサイドのカーソルの利点を"
"生かしたければ <literal>scroll()</literal> を使う必要があります。"
-#. Tag: programlisting
-#: batch.xml:93
-#, no-c-format
-msgid ""
-"<![CDATA[Session session = sessionFactory.openSession();\n"
-"Transaction tx = session.beginTransaction();\n"
-" \n"
-"ScrollableResults customers =
session.getNamedQuery(\"GetCustomers\")\n"
-" .setCacheMode(CacheMode.IGNORE)\n"
-" .scroll(ScrollMode.FORWARD_ONLY);\n"
-"int count=0;\n"
-"while ( customers.next() ) {\n"
-" Customer customer = (Customer) customers.get(0);\n"
-" customer.updateStuff(...);\n"
-" if ( ++count % 20 == 0 ) {\n"
-" //flush a batch of updates and release memory:\n"
-" session.flush();\n"
-" session.clear();\n"
-" }\n"
-"}\n"
-" \n"
-"tx.commit();\n"
-"session.close();]]>"
-msgstr ""
-
#. Tag: title
-#: batch.xml:98
#, no-c-format
msgid "The StatelessSession interface"
-msgstr "StatelessSessionインターフェイス"
+msgstr "StatelessSession インターフェース"
#. Tag: para
-#: batch.xml:99
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Alternatively, Hibernate provides a command-oriented API that can be used "
"for streaming data to and from the database in the form of detached objects.
"
@@ -217,54 +135,33 @@
"effects. A stateless session is a lower-level abstraction that is much "
"closer to the underlying JDBC."
msgstr ""
-"また別の方法として、Hibernateはコマンド指向のAPIを用意しています。 これは分離"
-"オブジェクトの形で、 データベースとのデータストリームのやり取りに使うことがで"
-"きます。 <literal>StatelessSession</literal> は関連する永続コンテキストを持た"
-"ず、 高レベルのライフサイクルセマンティクスの多くを提供しません。 特にステー"
-"トレスセッションは、一時キャッシュを実装せず、 またどのような二次キャッシュや"
-"クエリキャッシュとも相互作用しません。 トランザクショナルなwrite-behindや自動"
-"ダーティチェックも実装しません。 ステートレスセッションを使って行われる操作"
-"が、 関連するインスタンスへカスケードされることは決してありません。 コレク"
-"ションは、ステートレスセッションからは無視されます。 ステートレスセッションを"
-"通して行われる操作は、 Hibernateのイベントモデルやインターセプタの影響を受け"
-"ません。 一時キャッシュを持たないため、 ステートレスセッションは別名を持つ"
-"データに上手く対処できません。 ステートレスセッションは低レベルの抽象化であ"
-"り、JDBCに非常によく似ています。"
+"また別の方法として、 Hibernate はコマンド指向の API を用意しています。これは"
+"分離オブジェクトの形で、データベースとのデータストリームのやり取りに使うこと"
+"ができます。 <literal>StatelessSession</literal> は関連する永続コンテキストを"
+"持たず、高レベルのライフサイクルセマンティクスの多くを提供しません。特にス"
+"テートレスセッションは、一次キャッシュを実装せず、またどのような二次キャッ"
+"シュやクエリキャッシュとも相互作用しません。トランザクショナルな write-"
+"behind や自動ダーティチェックも実装しません。ステートレスセッションを使って行"
+"われる操作が、関連するインスタンスへカスケードされることは決してありません。"
+"コレクションは、ステートレスセッションからは無視されます。ステートレスセッ"
+"ションを通して行われる操作は、 Hibernate のイベントモデルやインターセプタの影"
+"響を受けません。一次キャッシュを持たないため、ステートレスセッションは別名を"
+"持つデータに上手く対処できません。ステートレスセッションは低レベルの抽象化で"
+"あり、 JDBC に非常によく似ています。"
-#. Tag: programlisting
-#: batch.xml:114
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[StatelessSession session =
sessionFactory.openStatelessSession();\n"
-"Transaction tx = session.beginTransaction();\n"
-" \n"
-"ScrollableResults customers =
session.getNamedQuery(\"GetCustomers\")\n"
-" .scroll(ScrollMode.FORWARD_ONLY);\n"
-"while ( customers.next() ) {\n"
-" Customer customer = (Customer) customers.get(0);\n"
-" customer.updateStuff(...);\n"
-" session.update(customer);\n"
-"}\n"
-" \n"
-"tx.commit();\n"
-"session.close();]]>"
-msgstr ""
-
-#. Tag: para
-#: batch.xml:116
-#, fuzzy, no-c-format
-msgid ""
"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 ""
"このコード例では、クエリが返す <literal>Customer</literal> インスタンスは即座"
-"に(セッションから)分離されることに注意してください。 これは、どのような永続"
-"コンテキストとも決して関連しません。"
+"に (セッションから) 分離されることに注意してください。これは、どのような永"
+"続コンテキストとも決して関連しません。"
#. Tag: para
-#: batch.xml:122
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>insert(), update()</literal> and
<literal>delete()</literal> "
"operations defined by the <literal>StatelessSession</literal> interface
are "
@@ -274,22 +171,21 @@
"<literal>save(), saveOrUpdate()</literal> and
<literal>delete()</literal> "
"operations defined by the <literal>Session</literal> interface."
msgstr ""
-"<literal>StatelessSession</literal> インターフェイスで定義されている "
-"<literal>insert(), update(), delete()</literal> は、 低レベルの直接的なデータ"
-"ベース操作と考えられます。 結果として、SQLの <literal>INSERT, UPDATE, "
-"DELETE</literal> がそれぞれ即座に実行されます。 このように、これらは "
-"<literal>Session</literal> インターフェイスで定義されている <literal>save(),
"
-"saveOrUpdate(), delete()</literal> とは非常に異なる意味を持ちます。"
+"<literal>StatelessSession</literal> インターフェースで定義されている "
+"<literal>insert(), update()</literal> と
<literal>delete()</literal> の操作"
+"は、低レベルの直接的なデータベース操作と考えられます。結果として、 SQL の "
+"<literal>INSERT, UPDATE</literal> または
<literal>DELETE</literal> がそれぞれ"
+"即座に実行されます。このように、これらは <literal>Session</literal> インター"
+"フェースで定義されている <literal>save(), saveOrUpdate()</literal> と "
+"<literal>delete()</literal> とは非常に異なる意味を持ちます。"
#. Tag: title
-#: batch.xml:135
#, no-c-format
msgid "DML-style operations"
-msgstr "DMLスタイルの操作"
+msgstr "DML スタイルの操作"
#. Tag: para
-#: batch.xml:137
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"As already discussed, automatic and transparent object/relational mapping is
"
"concerned with the management of the object state. The object state is "
@@ -298,21 +194,21 @@
"the statements: <literal>INSERT</literal>,
<literal>UPDATE</literal>, "
"<literal>DELETE</literal>) will not affect in-memory state. However,
"
"Hibernate provides methods for bulk SQL-style DML statement execution that "
-"is performed through the Hibernate Query Language (<link
linkend=\"queryhql"
-"\">HQL</link>)."
+"is performed through the Hibernate Query Language (<xref
linkend=\"queryhql"
+"\" />)."
msgstr ""
"すでに議論したように、自動的かつ透過的なオブジェクト/リレーショナルマッピング"
-"は、 オブジェクトの状態の管理であると考えられます。 これはメモリ内のオブジェ"
-"クトの状態を利用できるということです。 そのため(SQLの <literal>データ操作言"
-"語</literal> (DML) 文: <literal>INSERT</literal>,
<literal>UPDATE</"
-"literal>, <literal>DELETE</literal> を使って)データベース内のデータを直接操"
-"作しても、 メモリ内の状態には影響を与えません。 しかしHibernateは、バルクSQL"
-"スタイルのDML文実行に対応するメソッドを用意しています。 これはHibernateクエリ"
-"言語(<xref linkend=\"queryhql\">HQL</xref>) を通して実行されます。"
+"は、オブジェクトの状態の管理であると考えられます。これはメモリ内のオブジェク"
+"トの状態を利用できるということです。そのため (SQLの <literal>データ操作言語"
+"</literal> (DML) 文: <literal>INSERT</literal>、
<literal>UPDATE</"
+"literal>、 <literal>DELETE</literal> を使って)データベース内のデータを直接操"
+"作しても、メモリ内の状態には影響を与えません。しかし Hibernate は、バルク "
+"SQL スタイルの DML 文実行に対応するメソッドを用意しています。これは "
+"Hibernate クエリ言語 (<xref linkend=\"queryhql\"/> HQL) を通して実行されま"
+"す。"
#. Tag: para
-#: batch.xml:146
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The pseudo-syntax for <literal>UPDATE</literal> and
<literal>DELETE</"
"literal> statements is: <literal>( UPDATE | DELETE ) FROM? EntityName
(WHERE "
@@ -320,166 +216,105 @@
msgstr ""
"<literal>UPDATE</literal> と <literal>DELETE</literal>
文の疑似構文は: "
"<literal>( UPDATE | DELETE ) FROM? エンティティ名 (WHERE 条件節)?</literal>
"
-"です。 注意すべき点がいくつかあります:"
+"です。注意すべき点がいくつかあります:"
#. Tag: para
-#: batch.xml:151
#, no-c-format
msgid "Some points to note:"
msgstr ""
#. Tag: para
-#: batch.xml:157
#, no-c-format
msgid "In the from-clause, the FROM keyword is optional"
-msgstr "from節において、FROMキーワードはオプションです。"
+msgstr "from 節において、 FROM キーワードはオプションです。"
#. Tag: para
-#: batch.xml:162
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There can only be a single entity named in the from-clause. It can, however,
"
"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 ""
-"from節では単一のエンティティ名だけが可能で、 任意で別名を付けることができま"
-"す。 エンティティ名に別名が与えられると、どのようなプロパティ参照も、 その別"
-"名を使って修飾しなければなりません。 もしエンティティ名に別名が与えられなけれ"
-"ば、 どのようなプロパティ参照も修飾してはなりません。"
+"from 節では単一のエンティティ名だけが可能で、任意で別名を付けることができま"
+"す。エンティティ名に別名が与えられると、どのようなプロパティ参照も、その別名"
+"を使って修飾しなければなりません。もしエンティティ名に別名が与えられなけれ"
+"ば、どのようなプロパティ参照も修飾してはなりません。"
#. Tag: para
-#: batch.xml:170
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
-"No <link linkend=\"queryhql-joins-forms\">joins</link>,
either implicit or "
-"explicit, can be specified in a bulk HQL query. Sub-queries can be used in "
-"the where-clause, where the subqueries themselves may contain joins."
+"No <xref linkend=\"queryhql-joins-forms\" />, either implicit or
explicit, "
+"can be specified in a bulk HQL query. Sub-queries can be used in the where-"
+"clause, where the subqueries themselves may contain joins."
msgstr ""
-"(暗黙的であれ明示的であれ)<xref linkend=\"queryhql-joins-forms\">結合</"
-"xref> をバルクHQLクエリ内で指定することはできません。 サブクエリはwhere節で使"
-"うことができます サブクエリそのものは、結合を含められます。"
+"(暗黙的であれ明示的であれ) <xref linkend=\"queryhql-joins-forms\"/> 結合を"
+"バルク HQL クエリ内で指定することはできません。サブクエリは where 節で使うこ"
+"とができます。サブクエリそのものは、結合を含められます。"
#. Tag: para
-#: batch.xml:177
#, no-c-format
msgid "The where-clause is also optional."
-msgstr "where節はオプションです。"
+msgstr "where 節はオプションです。"
#. Tag: para
-#: batch.xml:183
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"As an example, to execute an HQL <literal>UPDATE</literal>, use the
"
"<literal>Query.executeUpdate()</literal> method. The method is named
for "
"those familiar with JDBC's
<literal>PreparedStatement.executeUpdate()</"
"literal>:"
msgstr ""
-"例として、HQLの <literal>UPDATE</literal> を実行するには、
<literal>Query."
-"executeUpdate()</literal> メソッドを使ってください。 (このメソッドはおなじみ"
-"のJDBC <literal>PreparedStatement.executeUpdate()</literal>
から名付けられま"
-"した): d"
+"例として、 HQL の <literal>UPDATE</literal> を実行するには、
<literal>Query."
+"executeUpdate()</literal> メソッドを使ってください。(このメソッドはおなじみ"
+"の JDBC <literal>PreparedStatement.executeUpdate()</literal>
から名付けられま"
+"した):"
-#. Tag: programlisting
-#: batch.xml:189
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Session session = sessionFactory.openSession();\n"
-"Transaction tx = session.beginTransaction();\n"
-"\n"
-"String hqlUpdate = \"update Customer c set c.name = :newName where c.name =
:"
-"oldName\";\n"
-"// or String hqlUpdate = \"update Customer set name = :newName where name =
:"
-"oldName\";\n"
-"int updatedEntities = s.createQuery( hqlUpdate )\n"
-" .setString( \"newName\", newName )\n"
-" .setString( \"oldName\", oldName )\n"
-" .executeUpdate();\n"
-"tx.commit();\n"
-"session.close();]]>"
-msgstr ""
-
-#. Tag: para
-#: batch.xml:191
-#, fuzzy, no-c-format
-msgid ""
"In keeping with the EJB3 specification, HQL <literal>UPDATE</literal>
"
-"statements, by default, do not effect the <link linkend=\"mapping-"
-"declaration-version\">version</link> or the <link
linkend=\"mapping-"
-"declaration-timestamp\">timestamp</link> property values for the
affected "
-"entities. However, you can force Hibernate to 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
"
+"statements, by default, do not effect the version (<xref
linkend=\"mapping-"
+"declaration-version\" />) or the timestamp (<xref
linkend=\"mapping-"
+"declaration-timestamp\" />) property values for the affected entities.
"
+"However, you can force Hibernate to 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."
msgstr ""
-"HQLの <literal>UPDATE</literal> 文は、デフォルトでは、作用するエンティティの "
-"<xref linkend=\"mapping-declaration-version\">version</xref>
や <xref "
-"linkend=\"mapping-declaration-timestamp\">timestamp</xref>
プロパティの値には"
-"影響しません。 これはEJB3の仕様にも受け継がれています。 しかし "
+"HQL の <literal>UPDATE</literal> 文は、デフォルトでは、作用するエンティティ"
+"の <xref linkend=\"mapping-declaration-version\"/> バージョンや <xref
"
+"linkend=\"mapping-declaration-timestamp\"/> タイムスタンプのプロパティの値に"
+"は影響しません。これは EJB3 の仕様にも受け継がれています。しかし "
"<literal>versioned update</literal> を使って、
<literal>version</literal> や "
"<literal>timestamp</literal> プロパティの値を強制的にリセットさせることができ"
-"ます。 これは <literal>UPDATE</literal> キーワードの後に
<literal>VERSIONED</"
+"ます。これは <literal>UPDATE</literal> キーワードの後に
<literal>VERSIONED</"
"literal> キーワードを追加することで行えます。"
-#. Tag: programlisting
-#: batch.xml:201
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Session session = sessionFactory.openSession();\n"
-"Transaction tx = session.beginTransaction();\n"
-"String hqlVersionedUpdate = \"update versioned Customer set name = :newName
"
-"where name = :oldName\";\n"
-"int updatedEntities = s.createQuery( hqlUpdate )\n"
-" .setString( \"newName\", newName )\n"
-" .setString( \"oldName\", oldName )\n"
-" .executeUpdate();\n"
-"tx.commit();\n"
-"session.close();]]>"
-msgstr ""
-
-#. Tag: para
-#: batch.xml:203
-#, fuzzy, no-c-format
-msgid ""
"Custom version types,
<literal>org.hibernate.usertype.UserVersionType</"
"literal>, are not allowed in conjunction with a <literal>update
versioned</"
"literal> statement."
msgstr ""
"カスタムバージョン型(<literal>org.hibernate.usertype.UserVersionType</"
-"literal>) は <literal>update versioned</literal> 文と一緒に使えないことに注"
-"意してください。"
+"literal>)は <literal>update versioned</literal> 文と一緒に使えないことに注意"
+"してください。"
#. Tag: para
-#: batch.xml:208
#, no-c-format
msgid ""
"To execute an HQL <literal>DELETE</literal>, use the same
<literal>Query."
"executeUpdate()</literal> method:"
msgstr ""
-"HQLの <literal>DELETE</literal> を実行するには、 同じ <literal>Query."
+"HQL の <literal>DELETE</literal> を実行するには、同じ <literal>Query."
"executeUpdate()</literal> メソッドを使ってください:"
-#. Tag: programlisting
-#: batch.xml:213
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Session session = sessionFactory.openSession();\n"
-"Transaction tx = session.beginTransaction();\n"
-"\n"
-"String hqlDelete = \"delete Customer c where c.name =
:oldName\";\n"
-"// or String hqlDelete = \"delete Customer where name =
:oldName\";\n"
-"int deletedEntities = s.createQuery( hqlDelete )\n"
-" .setString( \"oldName\", oldName )\n"
-" .executeUpdate();\n"
-"tx.commit();\n"
-"session.close();]]>"
-msgstr ""
-
-#. Tag: para
-#: batch.xml:215
-#, fuzzy, no-c-format
-msgid ""
"The <literal>int</literal> value returned by the
<literal>Query.executeUpdate"
"()</literal> method indicates the number of entities effected by the "
"operation. This may or may not correlate to the number of rows effected in "
@@ -492,16 +327,15 @@
"joined-subclass tables further down the inheritance hierarchy."
msgstr ""
"<literal>Query.executeUpdate()</literal> メソッドが返す
<literal>int</"
-"literal> の値は、この操作が影響を及ぼしたエンティティの数です。 これが影響す"
-"るデータベース内の行数と、相互に関係するかどうかを考えてみてください。 HQLバ"
-"ルク操作は、結果として、実際のSQL文が複数実行されることになります。 例えば"
-"joined-subclassです。 返される数は、その文によって影響された実際のエンティ"
-"ティの数を示します。 joined-subclassの例に戻ると、サブクラスの一つに対する削"
-"除は、 そのサブクラスがマッピングされたテーブルだけではなく、 「ルート」テー"
-"ブルと継承階層をさらに下ったjoined-subclassのテーブルの削除になります。"
+"literal> の値は、この操作が影響を及ぼしたエンティティの数です。これが影響する"
+"データベース内の行数と、相互に関係するかどうかを考えてみてください。 HQL バル"
+"ク操作は、結果として、実際の SQL 文が複数実行されることになります。例えば "
+"joined-subclass です。返される数は、その文によって影響された実際のエンティ"
+"ティの数を示します。 joined-subclass の例に戻ると、サブクラスの一つに対する削"
+"除は、そのサブクラスがマッピングされたテーブルだけではなく、「ルート」テーブ"
+"ルと継承階層をさらに下った joined-subclass のテーブルの削除になります。"
#. Tag: para
-#: batch.xml:226
#, no-c-format
msgid ""
"The pseudo-syntax for <literal>INSERT</literal> statements is: "
@@ -509,11 +343,9 @@
"Some points to note:"
msgstr ""
"<literal>INSERT</literal> 文の疑似構文は: <literal>INSERT INTO
エンティティ"
-"名 プロパティリスト select文</literal> です。 注意すべき点がいくつかありま"
-"す:"
+"名プロパティリスト select 文</literal> です。注意すべき点がいくつかあります:"
#. Tag: para
-#: batch.xml:234
#, no-c-format
msgid ""
"Only the INSERT INTO ... SELECT ... form is supported; not the INSERT "
@@ -523,8 +355,7 @@
"INTO ... VALUES ... の形式はサポートされていません。"
#. Tag: para
-#: batch.xml:237
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The properties_list is analogous to the <literal>column
specification</"
"literal> in the SQL <literal>INSERT</literal> statement. For
entities "
@@ -533,16 +364,15 @@
"are not allowed and subclass properties do not make sense. In other words, "
"<literal>INSERT</literal> statements are inherently
non-polymorphic."
msgstr ""
-"プロパティリストは、SQLの <literal>INSERT</literal> 文における <literal>カラ"
-"ムの仕様</literal> に類似しています。 継承のマッピングに含まれるエンティティ"
-"に対して、 クラスレベルで直接定義されたプロパティだけが、プロパティリストに使"
-"えます。 スーパークラスのプロパティは認められず、サブクラスのプロパティは効果"
-"がありません。 言い換えると <literal>INSERT</literal> 文は、本質的にポリモー"
+"プロパティリストは、 SQL の <literal>INSERT</literal> 文における
<literal>カ"
+"ラムの仕様</literal> に類似しています。継承のマッピングに含まれるエンティティ"
+"に対して、クラスレベルで直接定義されたプロパティだけが、プロパティリストに使"
+"えます。スーパークラスのプロパティは認められず、サブクラスのプロパティは効果"
+"がありません。言い換えると <literal>INSERT</literal> 文は、本質的にポリモー"
"フィックではありません。"
#. Tag: para
-#: batch.xml:247
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"select_statement can be any valid HQL select query, with the caveat that the
"
"return types must match the types expected by the insert. Currently, this is
"
@@ -555,19 +385,18 @@
"TimestampType</literal>, even though the database might not make a "
"distinction or might be able to handle the conversion."
msgstr ""
-"select文の返り値の型がinsert文が期待する型とマッチしていれば、 そのselect文は"
-"妥当なHQL selectクエリとなりえます。 現在このチェックをデータベースへ任せるの"
-"ではなく、クエリのコンパイル時にチェックします。 このことは、"
-"<emphasis>equal</emphasis>とは違い、 Hibernateの
<literal>Type</literal> 間"
-"の <emphasis>equivalent</emphasis> に関する 問題を引き起こすことに注意してく"
-"ださい。 これは <literal>org.hibernate.type.DataType</literal> として定義され"
-"たプロパティと、 <literal>org.hibernate.type.TimestampType</literal>
として定"
-"義されたプロパティの間のミスマッチの問題を引き起こします。 データベースがそれ"
-"らを区別できなくても、変換することができても、この問題は発生します。"
+"select 文の返り値の型が insert 文が期待する型とマッチしていれば、その select "
+"文は妥当な HQL select クエリとなりえます。現在このチェックをデータベースへ任"
+"せるのではなく、クエリのコンパイル時にチェックします。このことは、 "
+"<emphasis>equal</emphasis> とは違い、 Hibernate の
<literal>Type</literal> 間"
+"の <emphasis>equivalent</emphasis> に関する問題を引き起こすことに注意してくだ"
+"さい。これは <literal>org.hibernate.type.DateType</literal> として定義された"
+"プロパティと、 <literal>org.hibernate.type.TimestampType</literal>
として定義"
+"されたプロパティの間のミスマッチの問題を引き起こします。データベースがそれら"
+"を区別できなくても、変換することができても、この問題は発生します。"
#. Tag: para
-#: batch.xml:259
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For the id property, the insert statement gives you two options. You can "
"either explicitly specify the id property in the properties_list, in which "
@@ -583,21 +412,21 @@
"TableHiLoGenerator</literal>, which cannot be used because it does not
"
"expose a selectable way to get its values."
msgstr ""
-"idプロパティに対して、insert文には二つの選択肢があります。 プロパティリストで"
-"明示的にidプロパティを指定するか (この場合、対応するselect式から値が取られま"
-"す)、 プロパティリストから除外するか (この場合、生成される値が使われます)"
-"のいずれかです。 後者の選択肢は、データベース内を操作するidジェネレータを使う"
-"ときのみ、利用可能です。 この選択肢を採る場合、「インメモリ」型のジェネレータ"
-"を使うと、構文解析時に例外が発生します。 この議論では、インデータベース型ジェ"
-"ネレータは <literal>org.hibernate.id.SequenceGenerator</literal>
(とそのサブ"
-"クラス)と、<literal>org.hibernate.id.PostInsertIdentifierGenerator</"
-"literal> の実装であると考えています。 ここで最も注意すべき例外は、"
-"<literal>org.hibernate.id.TableHiLoGenerator</literal> です。
値を取得する選"
-"択可能な方法がないため、このジェネレータを使うことはできません。"
+"id プロパティに対して、 insert 文には二つの選択肢があります。プロパティリスト"
+"で明示的に id プロパティを指定するか (この場合、対応する select 式から値が取"
+"られます)、プロパティリストからそれを除外するかのいずれかです (この場合、生"
+"成される値が使われます)。 後者の選択肢は、データベース内を操作する id ジェネ"
+"レータを使うときのみ、利用可能です。この選択肢を採る場合、「インメモリ」型の"
+"ジェネレータを使うと、構文解析時に例外が発生します。この議論では、インデータ"
+"ベース型ジェネレータは <literal>org.hibernate.id.SequenceGenerator</literal>
"
+"(とそのサブクラス) と、 <literal>org.hibernate.id."
+"PostInsertIdentifierGenerator</literal> の実装であると考えています。ここで最"
+"も注意すべき例外は、 <literal>org.hibernate.id.TableHiLoGenerator</literal>
"
+"です。値を取得する選択可能な方法がないため、このジェネレータを使うことはでき"
+"ません。"
#. Tag: para
-#: batch.xml:274
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For properties mapped as either <literal>version</literal> or "
"<literal>timestamp</literal>, the insert statement gives you two
options. "
@@ -607,31 +436,251 @@
"defined by the <literal>org.hibernate.type.VersionType</literal> is
used."
msgstr ""
"<literal>version</literal> や <literal>timestamp</literal>
としてマッピングさ"
-"れるプロパティに対して、 insert文には二つの選択肢があります。 プロパティリス"
-"トで明示的にプロパティを指定するか (この場合、対応するselect式から値が取られ"
-"ます)、 プロパティリストから除外するか (この場合、<literal>org.hibernate."
+"れるプロパティに対して、 insert 文には二つの選択肢があります。プロパティリス"
+"トで明示的にプロパティを指定するか(この場合、対応する select 式から値が取ら"
+"れます)、プロパティリストから除外するか(この場合、 <literal>org.hibernate."
"type.VersionType</literal> で定義された <literal>シード値</literal>
が使われ"
"ます)のいずれかです。"
#. Tag: para
-#: batch.xml:284
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following is an example of an HQL <literal>INSERT</literal>
statement "
"execution:"
-msgstr "HQLの <literal>INSERT</literal> 文の実行例です:"
+msgstr "HQL の <literal>INSERT</literal> 文の実行例です:"
-#. Tag: programlisting
-#: batch.xml:288
-#, no-c-format
-msgid ""
-"<![CDATA[Session session = sessionFactory.openSession();\n"
-"Transaction tx = session.beginTransaction();\n"
-"\n"
-"String hqlInsert = \"insert into DelinquentAccount (id, name) select c.id,
c."
-"name from Customer c where ...\";\n"
-"int createdEntities = s.createQuery( hqlInsert )\n"
-" .executeUpdate();\n"
-"tx.commit();\n"
-"session.close();]]>"
-msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "for ( int i=0; i<100000; i++ ) {\n"
+#~ " Customer customer = new Customer(.....);\n"
+#~ " session.save(customer);\n"
+#~ "}\n"
+#~ "tx.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "for ( int i=0; i<100000; i++ ) {\n"
+#~ " Customer customer = new Customer(.....);\n"
+#~ " session.save(customer);\n"
+#~ "}\n"
+#~ "tx.commit();\n"
+#~ "session.close();"
+
+#, fuzzy
+#~ msgid "<![CDATA[hibernate.jdbc.batch_size 20]]>"
+#~ msgstr "hibernate.jdbc.batch_size 20"
+
+#, fuzzy
+#~ msgid "<![CDATA[hibernate.cache.use_second_level_cache false]]>"
+#~ msgstr "hibernate.cache.use_second_level_cache false"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ " \n"
+#~ "for ( int i=0; i<100000; i++ ) {\n"
+#~ " Customer customer = new Customer(.....);\n"
+#~ " session.save(customer);\n"
+#~ " if ( i % 20 == 0 ) { //20, same as the JDBC batch size\n"
+#~ " //flush a batch of inserts and release memory:\n"
+#~ " session.flush();\n"
+#~ " session.clear();\n"
+#~ " }\n"
+#~ "}\n"
+#~ " \n"
+#~ "tx.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ " \n"
+#~ "for ( int i=0; i<100000; i++ ) {\n"
+#~ " Customer customer = new Customer(.....);\n"
+#~ " session.save(customer);\n"
+#~ " if ( i % 20 == 0 ) { //20, same as the JDBC batch size\n"
+#~ " //flush a batch of inserts and release memory:\n"
+#~ " session.flush();\n"
+#~ " session.clear();\n"
+#~ " }\n"
+#~ "}\n"
+#~ " \n"
+#~ "tx.commit();\n"
+#~ "session.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ " \n"
+#~ "ScrollableResults customers =
session.getNamedQuery(\"GetCustomers\")\n"
+#~ " .setCacheMode(CacheMode.IGNORE)\n"
+#~ " .scroll(ScrollMode.FORWARD_ONLY);\n"
+#~ "int count=0;\n"
+#~ "while ( customers.next() ) {\n"
+#~ " Customer customer = (Customer) customers.get(0);\n"
+#~ " customer.updateStuff(...);\n"
+#~ " if ( ++count % 20 == 0 ) {\n"
+#~ " //flush a batch of updates and release memory:\n"
+#~ " session.flush();\n"
+#~ " session.clear();\n"
+#~ " }\n"
+#~ "}\n"
+#~ " \n"
+#~ "tx.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ " \n"
+#~ "ScrollableResults customers =
session.getNamedQuery(\"GetCustomers\")\n"
+#~ " .setCacheMode(CacheMode.IGNORE)\n"
+#~ " .scroll(ScrollMode.FORWARD_ONLY);\n"
+#~ "int count=0;\n"
+#~ "while ( customers.next() ) {\n"
+#~ " Customer customer = (Customer) customers.get(0);\n"
+#~ " customer.updateStuff(...);\n"
+#~ " if ( ++count % 20 == 0 ) {\n"
+#~ " //flush a batch of updates and release memory:\n"
+#~ " session.flush();\n"
+#~ " session.clear();\n"
+#~ " }\n"
+#~ "}\n"
+#~ " \n"
+#~ "tx.commit();\n"
+#~ "session.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[StatelessSession session =
sessionFactory.openStatelessSession"
+#~ "();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ " \n"
+#~ "ScrollableResults customers =
session.getNamedQuery(\"GetCustomers\")\n"
+#~ " .scroll(ScrollMode.FORWARD_ONLY);\n"
+#~ "while ( customers.next() ) {\n"
+#~ " Customer customer = (Customer) customers.get(0);\n"
+#~ " customer.updateStuff(...);\n"
+#~ " session.update(customer);\n"
+#~ "}\n"
+#~ " \n"
+#~ "tx.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "StatelessSession session = sessionFactory.openStatelessSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ " \n"
+#~ "ScrollableResults customers =
session.getNamedQuery(\"GetCustomers\")\n"
+#~ " .scroll(ScrollMode.FORWARD_ONLY);\n"
+#~ "while ( customers.next() ) {\n"
+#~ " Customer customer = (Customer) customers.get(0);\n"
+#~ " customer.updateStuff(...);\n"
+#~ " session.update(customer);\n"
+#~ "}\n"
+#~ " \n"
+#~ "tx.commit();\n"
+#~ "session.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "\n"
+#~ "String hqlUpdate = \"update Customer c set c.name = :newName where c.name
"
+#~ "= :oldName\";\n"
+#~ "// or String hqlUpdate = \"update Customer set name = :newName where name
"
+#~ "= :oldName\";\n"
+#~ "int updatedEntities = s.createQuery( hqlUpdate )\n"
+#~ " .setString( \"newName\", newName )\n"
+#~ " .setString( \"oldName\", oldName )\n"
+#~ " .executeUpdate();\n"
+#~ "tx.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "\n"
+#~ "String hqlUpdate = \"update Customer c set c.name = :newName where c.name
"
+#~ "= :oldName\";\n"
+#~ "// or String hqlUpdate = \"update Customer set name = :newName where name
"
+#~ "= :oldName\";\n"
+#~ "int updatedEntities = s.createQuery( hqlUpdate )\n"
+#~ " .setString( \"newName\", newName )\n"
+#~ " .setString( \"oldName\", oldName )\n"
+#~ " .executeUpdate();\n"
+#~ "tx.commit();\n"
+#~ "session.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "String hqlVersionedUpdate = \"update versioned Customer set name = :"
+#~ "newName where name = :oldName\";\n"
+#~ "int updatedEntities = s.createQuery( hqlUpdate )\n"
+#~ " .setString( \"newName\", newName )\n"
+#~ " .setString( \"oldName\", oldName )\n"
+#~ " .executeUpdate();\n"
+#~ "tx.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "String hqlVersionedUpdate = \"update versioned Customer set name = :"
+#~ "newName where name = :oldName\";\n"
+#~ "int updatedEntities = s.createQuery( hqlUpdate )\n"
+#~ " .setString( \"newName\", newName )\n"
+#~ " .setString( \"oldName\", oldName )\n"
+#~ " .executeUpdate();\n"
+#~ "tx.commit();\n"
+#~ "session.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "\n"
+#~ "String hqlDelete = \"delete Customer c where c.name =
:oldName\";\n"
+#~ "// or String hqlDelete = \"delete Customer where name =
:oldName\";\n"
+#~ "int deletedEntities = s.createQuery( hqlDelete )\n"
+#~ " .setString( \"oldName\", oldName )\n"
+#~ " .executeUpdate();\n"
+#~ "tx.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "\n"
+#~ "String hqlDelete = \"delete Customer c where c.name =
:oldName\";\n"
+#~ "// or String hqlDelete = \"delete Customer where name =
:oldName\";\n"
+#~ "int deletedEntities = s.createQuery( hqlDelete )\n"
+#~ " .setString( \"oldName\", oldName )\n"
+#~ " .executeUpdate();\n"
+#~ "tx.commit();\n"
+#~ "session.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "\n"
+#~ "String hqlInsert = \"insert into DelinquentAccount (id, name) select
c."
+#~ "id, c.name from Customer c where ...\";\n"
+#~ "int createdEntities = s.createQuery( hqlInsert )\n"
+#~ " .executeUpdate();\n"
+#~ "tx.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "Session session = sessionFactory.openSession();\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "\n"
+#~ "String hqlInsert = \"insert into DelinquentAccount (id, name) select
c."
+#~ "id, c.name from Customer \n"
+#~ " c where ...\";\n"
+#~ "int createdEntities = s.createQuery( hqlInsert )\n"
+#~ " .executeUpdate();\n"
+#~ "tx.commit();\n"
+#~ "session.close();"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/best_practices.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/best_practices.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/best_practices.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,24 +1,25 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:26\n"
+"PO-Revision-Date: 2010-01-20 16:59+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: best_practices.xml:29
#, no-c-format
msgid "Best Practices"
msgstr "ベストプラクティス"
#. Tag: term
-#: best_practices.xml:33
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Write fine-grained classes and map them using
<literal><component></"
"literal>:"
@@ -27,7 +28,6 @@
"ましょう。"
#. Tag: para
-#: best_practices.xml:35
#, no-c-format
msgid ""
"Use an <literal>Address</literal> class to encapsulate
<literal>street</"
@@ -35,37 +35,33 @@
"<literal>postcode</literal>. This encourages code reuse and simplifies
"
"refactoring."
msgstr ""
-"<literal>street</literal>(通り), <literal>suburb</literal>
(都市), "
-"<literal>state</literal>(州), <literal>postcode</literal>
(郵便番号)をカ"
-"プセル化する <literal>Address</literal>(住所)クラスを使いましょう。 そうす"
-"ればコードが再利用しやすくなり、リファクタリングも簡単になります。"
+"<literal>street</literal> (通り)、 <literal>suburb</literal>
(都市)、 "
+"<literal>state</literal> (州)、 <literal>postcode</literal>
(郵便番号)を"
+"カプセル化する <literal>Address</literal> (住所)クラスを使いましょう。そう"
+"すればコードが再利用しやすくなり、リファクタリングも簡単になります。"
#. Tag: term
-#: best_practices.xml:43
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Declare identifier properties on persistent classes:"
msgstr "永続クラスには識別子プロパティを定義しましょう。"
#. Tag: para
-#: best_practices.xml:45
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate makes identifier properties optional. There are a range of reasons
"
"why you should use them. We recommend that identifiers be 'synthetic', that
"
"is, generated with no business meaning."
msgstr ""
-"Hibernateでは識別子プロパティはオプションですが、 使用すべき理由がたくさんあ"
-"ります。 識別子は「人工的」(生成された、業務的な意味を持たない) なものにす"
-"ることをおすすめします。"
+"Hibernate では識別子プロパティはオプションですが、使用すべき理由がたくさんあ"
+"ります。識別子は「人工的」(生成された、業務的な意味を持たない)なものにする"
+"ことをおすすめします。"
#. Tag: term
-#: best_practices.xml:53
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Identify natural keys:"
msgstr "自然キーを見つけましょう。"
#. Tag: para
-#: best_practices.xml:55
#, no-c-format
msgid ""
"Identify natural keys for all entities, and map them using
<literal><"
@@ -74,19 +70,17 @@
"natural key."
msgstr ""
"すべてのエンティティに対して自然キーを見つけて、 <literal><natural-id>"
-"</literal> でマッピングしましょう。 自然キーを構成するプロパティを比較するた"
-"めに、 <literal>equals()</literal> と
<literal>hashCode()</literal> を実装し"
-"ましょう。"
+"</literal> でマッピングしましょう。自然キーを構成するプロパティを比較するため"
+"に、 <literal>equals()</literal> と
<literal>hashCode()</literal> を実装しま"
+"しょう。"
#. Tag: term
-#: best_practices.xml:63
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Place each class mapping in its own file:"
msgstr "クラスのマッピングはそれぞれのクラス専用のファイルに書きましょう。"
#. Tag: para
-#: best_practices.xml:65
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Do not use a single monolithic mapping document. Map
<literal>com.eg.Foo</"
"literal> in the file <literal>com/eg/Foo.hbm.xml</literal>. This
makes "
@@ -94,85 +88,75 @@
msgstr ""
"単一の巨大なマッピングドキュメントを使用しないでください。 <literal>com.eg."
"Foo</literal> クラスなら <literal>com/eg/Foo.hbm.xml</literal>
ファイルにマッ"
-"ピングしましょう。 このことは、特にチームでの開発に意味があります。"
+"ピングしましょう。このことは、特にチームでの開発に意味があります。"
#. Tag: term
-#: best_practices.xml:73
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Load mappings as resources:"
msgstr "リソースとしてマッピングをロードしましょう。"
#. Tag: para
-#: best_practices.xml:75
#, no-c-format
msgid "Deploy the mappings along with the classes they map."
-msgstr "マッピングを、それらがマッピングするするクラスと一緒に配置しましょう。"
+msgstr "マッピングを、それらがマッピングするクラスと一緒に配置しましょう。"
#. Tag: term
-#: best_practices.xml:81
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Consider externalizing query strings:"
msgstr "クエリ文字列を外部に置くことを考えましょう"
#. Tag: para
-#: best_practices.xml:83
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This is recommended if your queries call non-ANSI-standard SQL functions. "
"Externalizing the query strings to mapping files will make the application "
"more portable."
msgstr ""
-"クエリがANSI標準でないSQL関数を呼んでいるなら、これはよいプラクティスです。 "
-"クエリ文字列をマッピングファイルへ外出しすればアプリケーションがポータブルに"
-"なります。"
+"クエリが ANSI 標準でない SQL 関数を呼んでいるなら、これはよいプラクティスで"
+"す。クエリ文字列をマッピングファイルへ外出しすればアプリケーションがポータブ"
+"ルになります。"
#. Tag: term
-#: best_practices.xml:91
#, no-c-format
msgid "Use bind variables."
msgstr "バインド変数を使いましょう。"
#. Tag: para
-#: best_practices.xml:93
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"As in JDBC, always replace non-constant values by \"?\". Do not use
string "
"manipulation to bind a non-constant value in a query. You should also "
"consider using named parameters in queries."
msgstr ""
-"JDBCの場合と同じように、定数でない値は必ず\"?\"で置き換えましょう。 定数でな"
-"い値をバインドするために、クエリで文字列操作を使ってはいけません。 名前付きの"
-"パラメータを使うようにするとさらに良いです。"
+"JDBC の場合と同じように、定数でない値は必ず \"?\" で置き換えましょう。定数で"
+"ない値をバインドするために、クエリで文字列操作を使ってはいけません。名前付き"
+"のパラメータを使うようにするとさらに良いです。"
#. Tag: term
-#: best_practices.xml:101
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Do not manage your own JDBC connections:"
-msgstr "JDBCコネクションを管理してはいけません。"
+msgstr "JDBC コネクションを管理してはいけません。"
#. Tag: para
-#: best_practices.xml:103
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate allows the application to manage JDBC connections, but his "
"approach should be considered a last-resort. If you cannot use the built-in "
"connection providers, consider providing your own implementation of "
"<literal>org.hibernate.connection.ConnectionProvider</literal>."
msgstr ""
-"HibernateではアプリケーションがJDBCコネクションを管理することが許されていま"
-"す。 しかしこれは最終手段だと思ってください。 組み込みのコネクションプロバイ"
+"Hibernate ではアプリケーションが JDBC コネクションを管理することが許されてい"
+"ます。しかしこれは最終手段だと思ってください。組み込みのコネクションプロバイ"
"ダを使うことができなければ、 <literal>org.hibernate.connection."
"ConnectionProvider</literal> を実装することを考えてください。"
#. Tag: term
-#: best_practices.xml:111
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Consider using a custom type:"
msgstr "カスタム型の使用を考えましょう。"
#. Tag: para
-#: best_practices.xml:113
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Suppose you have a Java type from a library that needs to be persisted but "
"does not provide the accessors needed to map it as a component. You should "
@@ -180,21 +164,19 @@
"approach frees the application code from implementing transformations to/"
"from a Hibernate type."
msgstr ""
-"あるライブラリから持ってきたJava型を永続化する必要があるとしましょう。 しかし"
-"その型には、コンポーネントとしてマッピングするために必要なアクセサがないとし"
-"ます。 このような場合は <literal>org.hibernate.UserType</literal> の実装を考"
-"えるべきです。 そうすればHibernate型との実装変換を心配せずにアプリケーション"
+"あるライブラリから持ってきた Java 型を永続化する必要があるとしましょう。しか"
+"しその型には、コンポーネントとしてマッピングするために必要なアクセサがないと"
+"します。このような場合は <literal>org.hibernate.UserType</literal> の実装を考"
+"えるべきです。そうすれば Hibernate 型との実装変換を心配せずにアプリケーション"
"のコードを扱えます。"
#. Tag: term
-#: best_practices.xml:122
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Use hand-coded JDBC in bottlenecks:"
-msgstr "ボトルネックを解消するにはJDBCをハンドコードしましょう。"
+msgstr "ボトルネックを解消するには JDBC をハンドコードしましょう。"
#. Tag: para
-#: best_practices.xml:124
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In performance-critical areas of the system, some kinds of operations might "
"benefit from direct JDBC. Do not assume, however, that JDBC is necessarily "
@@ -204,23 +186,21 @@
"html that JDBC connection. This way you can still use the same transaction "
"strategy and underlying connection provider."
msgstr ""
-"システムのパフォーマンスクリティカルな領域では、 ある種の操作にJDBCを直接使う"
-"と良いかもしれません。 しかし何がボトルネックになっているか <emphasis>はっき"
-"りする</emphasis> までは待ってください。 またJDBCを直接使うからといって、必ず"
-"しも速くなるとは限らないことも理解してください。 JDBCを直接使う必要があれば、"
-"Hibernateの <literal>Session</literal> をオープンして、 JDBCコネクションを使"
-"うと良いかもしれません。 依然として同じトランザクション戦略とコネクションプロ"
-"バイダが使えるからです。"
+"システムのパフォーマンスクリティカルな領域では、ある種の操作に JDBC を直接使"
+"うと良いかもしれません。しかし何がボトルネックになっているか <emphasis>はっき"
+"りする</emphasis> までは待ってください。また JDBC を直接使うからといって、必"
+"ずしも速くなるとは限らないことも理解してください。 JDBC を直接使う必要があれ"
+"ば、 Hibernate の <literal>Session</literal> をオープンして、 JDBC コネク"
+"ションを使うと良いかもしれません。依然として同じトランザクション戦略とコネク"
+"ションプロバイダが使えるからです。"
#. Tag: term
-#: best_practices.xml:134
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Understand <literal>Session</literal> flushing:"
msgstr "<literal>Session</literal> のフラッシュを理解しましょう。"
#. Tag: para
-#: best_practices.xml:136
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Sometimes the Session synchronizes its persistent state with the database. "
"Performance will be affected if this process occurs too often. You can "
@@ -228,20 +208,18 @@
"even by changing the order of queries and other operations within a "
"particular transaction."
msgstr ""
-"Sessionが永続状態をデータベースと同期させることがときどきあります。 しかしこ"
-"れがあまりに頻繁に起こるようだと、パフォーマンスに影響が出てきます。 自動フ"
+"Session が永続状態をデータベースと同期させることがときどきあります。しかしこ"
+"れがあまりに頻繁に起こるようだと、パフォーマンスに影響が出てきます。自動フ"
"ラッシュを無効にしたり、特定のトランザクションのクエリや操作の順番を変更する"
-"ことで、 不必要なフラッシュを最小限にできます。"
+"ことで、不必要なフラッシュを最小限にできます。"
#. Tag: term
-#: best_practices.xml:145
-#, fuzzy, no-c-format
+#, no-c-format
msgid "In a three tiered architecture, consider using detached objects:"
msgstr "3層アーキテクチャでは分離オブジェクトの使用を考えましょう。"
#. Tag: para
-#: best_practices.xml:147
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"When using a servlet/session bean architecture, you can pass persistent "
"objects loaded in the session bean to and from the servlet/JSP layer. Use a "
@@ -249,21 +227,19 @@
"or <literal>Session.saveOrUpdate()</literal> to synchronize objects
with the "
"database."
msgstr ""
-"サーブレット / セッションビーンアーキテクチャを使うとき、 サーブレット層 / "
-"JSP層間でセッションビーンでロードした永続オブジェクトをやり取りできます。 そ"
-"の際リクエストごとに新しいSessionを使ってください。 また <literal>Session."
+"サーブレット / セッション Bean アーキテクチャを使うとき、サーブレット層 / "
+"JSP 層間でセッション Bean でロードした永続オブジェクトをやり取りできます。そ"
+"の際リクエストごとに新しい Session を使ってください。また <literal>Session."
"merge()</literal> や <literal>Session.saveOrUpdate()</literal>
を使って、オブ"
"ジェクトとデータベースを同期させてください。"
#. Tag: term
-#: best_practices.xml:156
-#, fuzzy, no-c-format
+#, no-c-format
msgid "In a two tiered architecture, consider using long persistence
contexts:"
msgstr "2層アーキテクチャでは長い永続コンテキストの使用を考えましょう。"
#. Tag: para
-#: best_practices.xml:158
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Database Transactions have to be as short as possible for best scalability. "
"However, it is often necessary to implement long running "
@@ -278,28 +254,26 @@
"across more than one application transaction or you will be working with "
"stale data."
msgstr ""
-"最高のスケーラビリティを得るには、 データベーストランザクションをできるだけ短"
-"くしなければなりません。 しかし長い間実行する <emphasis>アプリケーショントラ"
-"ンザクション</emphasis> の実装が必要なことはしばしばです。 これはユーザの視点"
-"からは1個の作業単位(unit of work)になります。 アプリケーショントランザク"
-"ションはいくつかのクライアントのリクエスト/レスポンスサイクルにまたがりま"
-"す。 アプリケーショントランザクションの実装に分離オブジェクトを使うのは一般的"
-"です。 そうでなければ、2層アーキテクチャの場合は特に適切なことですが、 アプリ"
-"ケーショントランザクションのライフサイクル全体に対して 単一のオープンな永続化"
-"コンテキスト(セッション)を維持してください。 そして単純にリクエストの最後に"
-"JDBCコネクションから切断し、 次のリクエストの最初に再接続します。 決して複数"
-"のアプリケーショントランザクションユースケースに渡って 1個のSessionを使い回さ"
-"ないでください。 そうでなければ、古いデータで作業することになります。"
+"最高のスケーラビリティを得るには、データベーストランザクションをできるだけ短"
+"くしなければなりません。しかし長い間実行する <emphasis>アプリケーショントラン"
+"ザクション</emphasis> の実装が必要なことはしばしばです。これはユーザーの視点"
+"からは1個の作業単位(unit of work)になります。アプリケーショントランザクショ"
+"ンはいくつかのクライアントのリクエスト/レスポンスサイクルにまたがります。アプ"
+"リケーショントランザクションの実装に分離オブジェクトを使うのは一般的です。そ"
+"うでなければ、2層アーキテクチャの場合は特に適切なことですが、アプリケーション"
+"トランザクションのライフサイクル全体に対して単一のオープンな永続化コンテキス"
+"ト(セッション)を維持してください。そして単純にリクエストの最後に JDBC コネ"
+"クションから切断し、次のリクエストの最初に再接続します。決して複数のアプリ"
+"ケーショントランザクションユースケースに渡って1個の Session を使い回さないで"
+"ください。そうでなければ、古いデータで作業することになります。"
#. Tag: term
-#: best_practices.xml:172
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Do not treat exceptions as recoverable:"
msgstr "例外を復帰可能なものとして扱ってはいけません。"
#. Tag: para
-#: best_practices.xml:174
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This is more of a necessary practice than a \"best\" practice. When an
"
"exception occurs, roll back the <literal>Transaction</literal> and
close the "
@@ -309,23 +283,21 @@
"instance with the given identifier exists on the database; use "
"<literal>Session.get()</literal> or a query instead."
msgstr ""
-"これは「ベスト」プラクティス以上の、必須のプラクティスです。 例外が発生したと"
+"これは「ベスト」プラクティス以上の、必須のプラクティスです。例外が発生したと"
"きは <literal>Transaction</literal> をロールバックして、
<literal>Session</"
-"literal> をクローズしてください。 そうしないとHibernateはメモリの状態が永続状"
-"態を正確に表現していることを保証できません。 この特別な場合として、与えられた"
-"識別子を持つインスタンスがデータベースに存在するかどうかを判定するために、 "
-"<literal>Session.load()</literal> を使うことはやめてください。 その代わりに "
+"literal> をクローズしてください。そうしないと Hibernate はメモリの状態が永続"
+"状態を正確に表現していることを保証できません。この特別な場合として、与えられ"
+"た識別子を持つインスタンスがデータベースに存在するかどうかを判定するために、 "
+"<literal>Session.load()</literal> を使うことはやめてください。その代わりに "
"<literal>Session.get()</literal> かクエリを使ってください。"
#. Tag: term
-#: best_practices.xml:184
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Prefer lazy fetching for associations:"
msgstr "関連にはなるべく遅延フェッチを使いましょう。"
#. Tag: para
-#: best_practices.xml:186
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Use eager fetching sparingly. Use proxies and lazy collections for most "
"associations to classes that are not likely to be completely held in the "
@@ -335,27 +307,26 @@
"to a particular use case, use a query with a <literal>left join
fetch</"
"literal>."
msgstr ""
-"即時フェッチは控えめにしましょう。 二次キャッシュには完全に保持されないような"
-"クラスの関連には、 プロキシと遅延コレクションを使ってください。 キャッシュさ"
-"れるクラスの関連、つまりキャッシュがヒットする可能性が非常に高い関連は、 "
+"即時フェッチは控えめにしましょう。二次キャッシュには完全に保持されないような"
+"クラスの関連には、プロキシと遅延コレクションを使ってください。キャッシュされ"
+"るクラスの関連、つまりキャッシュがヒットする可能性が非常に高い関連は、 "
"<literal>lazy=\"false\"</literal>
で積極的なフェッチを明示的に無効にしてくだ"
-"さい。 結合フェッチが適切な特定のユースケースには、 クエリで <literal>left "
+"さい。結合フェッチが適切な特定のユースケースには、クエリで <literal>left "
"join fetch</literal> を使ってください。"
#. Tag: term
-#: best_practices.xml:196
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Use the <emphasis>open session in view</emphasis> pattern, or a
disciplined "
"<emphasis>assembly phase</emphasis> to avoid problems with unfetched
data:"
msgstr ""
"フェッチされていないデータに関わる問題を避けるために、 <emphasis>ビューの中で"
-"オープンセッションを使う(open session in view)</emphasis> パターンか、統制さ"
-"れた <emphasis>組み立てフェーズ(assembly phase)</emphasis> を使いましょう。"
+"オープンセッションを使う (open session in view) </emphasis> パターンか、統制"
+"された <emphasis>組み立てフェーズ (assembly phase) </emphasis> を使いましょ"
+"う。"
#. Tag: para
-#: best_practices.xml:201
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate frees the developer from writing tedious <emphasis>Data Transfer
"
"Objects</emphasis> (DTO). In a traditional EJB architecture, DTOs serve dual
"
@@ -370,27 +341,25 @@
"objects. This is not a limitation of Hibernate. It is a fundamental "
"requirement of safe transactional data access."
msgstr ""
-"Hibernateは <emphasis>Data Transfer Objects</emphasis>
(DTO)を書く退屈な作業"
-"から開発者を解放します。 伝統的なEJBアーキテクチャではDTOは二つ目的がありま"
-"す: 1つ目は、エンティティビーンがシリアライズされない問題への対策です。 2つ"
-"目は、プレゼンテーション層に制御が戻る前に、 ビューに使われるすべてのデータが"
-"フェッチされて、DTOに復元されるような組み立てフェーズを暗黙的に定義します。 "
-"Hibernateでは1つ目の目的が不要になります。 しかしビューのレンダリング処理の"
-"間、永続コンテキスト(セッション)をオープンにしたままにしなければ、 組み立て"
-"フェーズはまだ必要です(分離オブジェクトの中のどのデータが利用可能かについ"
-"て、 プレゼンテーション層と厳密な取り決めをしているビジネスメソッドを考えてみ"
-"てください)。 これはHibernate側の問題ではありません。 トランザクション内で安"
-"全にデータアクセスするための基本的な要件です。"
+"Hibernate は <emphasis>Data Transfer Objects</emphasis> (DTO)
を書く退屈な作"
+"業から開発者を解放します。伝統的な EJB アーキテクチャでは DTO は2つ目的があり"
+"ます: 1つ目は、エンティティ Bean がシリアライズされない問題への対策です。2つ"
+"目は、プレゼンテーション層に制御が戻る前に、ビューに使われるすべてのデータが"
+"フェッチされて、 DTO に復元されるような組み立てフェーズを暗黙的に定義しま"
+"す。 Hibernate では1つ目の目的が不要になります。しかしビューのレンダリング処"
+"理の間、永続コンテキスト(セッション)をオープンにしたままにしなければ、組み"
+"立てフェーズはまだ必要です(分離オブジェクトの中のどのデータが利用可能かにつ"
+"いて、プレゼンテーション層と厳密な取り決めをしているビジネスメソッドを考えて"
+"みてください)。これは Hibernate 側の問題ではありません。トランザクション内で"
+"安全にデータアクセスするための基本的な要件です。"
#. Tag: term
-#: best_practices.xml:215
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Consider abstracting your business logic from Hibernate:"
-msgstr "Hibernateからビジネスロジックを抽象化することを考えましょう。"
+msgstr "Hibernate からビジネスロジックを抽象化することを考えましょう。"
#. Tag: para
-#: best_practices.xml:217
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hide Hibernate data-access code behind an interface. Combine the "
"<emphasis>DAO</emphasis> and <emphasis>Thread Local
Session</emphasis> "
@@ -399,22 +368,20 @@
"however, intended for \"sufficiently large\" applications. It is not
"
"appropriate for an application with five tables."
msgstr ""
-"インターフェイスで(Hibernateの)データアクセスコードを隠蔽しましょう。 "
+"インターフェースで(Hibernate の)データアクセスコードを隠蔽しましょう。 "
"<emphasis>DAO</emphasis> と <emphasis>Thread Local
Session</emphasis> パター"
-"ンを組み合わせましょう。 <literal>UserType</literal> でHibernateに関連付ける"
-"と、 ハンドコードしたJDBCで永続化するクラスを持つこともできます。 (このアド"
-"バイスは「十分大きな」アプリケーションに対してのものです。 テーブルが5個しか"
+"ンを組み合わせましょう。 <literal>UserType</literal> で Hibernate に関連付け"
+"ると、ハンドコードした JDBC で永続化するクラスを持つこともできます。(このア"
+"ドバイスは「十分大きな」アプリケーションに対してのものです。テーブルが5個しか"
"ないようなアプリケーションには当てはまりません。)"
#. Tag: term
-#: best_practices.xml:227
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Do not use exotic association mappings:"
msgstr "珍しい関連マッピングは使わないようにしましょう。"
#. Tag: para
-#: best_practices.xml:229
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Practical test cases for real many-to-many associations are rare. Most of "
"the time you need additional information stored in the \"link table\". In
"
@@ -423,25 +390,22 @@
"to-one. For this reason, you should proceed cautiously when using any other "
"association style."
msgstr ""
-"よいユースケースに本当の多対多関連があることは稀(まれ)です。 ほとんどの場合"
-"「リンクテーブル」の付加的な情報が必要になります。 この場合、リンククラスに2"
-"つの1対多関連を使う方がずっと良いです。 実際ほとんどの場合関連は1対多と多対1"
-"なので、 他のスタイルの関連を使うときは本当に必要かどうかを考えてみてくださ"
-"い。"
+"よいユースケースに本当の多対多関連があることは稀です。ほとんどの場合「リンク"
+"テーブル」の付加的な情報が必要になります。この場合、リンククラスに2つの一対多"
+"関連を使う方がずっとよいです。実際ほとんどの場合、関連は一対多と多対一なの"
+"で、他のスタイルの関連を使うときは本当に必要かどうかを考えてみてください。"
#. Tag: term
-#: best_practices.xml:239
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Prefer bidirectional associations:"
msgstr "なるべく双方向関連にしましょう。"
#. Tag: para
-#: best_practices.xml:241
#, no-c-format
msgid ""
"Unidirectional associations are more difficult to query. In a large "
"application, almost all associations must be navigable in both directions in
"
"queries."
msgstr ""
-"単方向関連は双方向に比べて検索が難しくなります。 大きなアプリケーションで"
-"は、 ほとんどすべての関連が双方向にナビゲーションできなければなりません。"
+"単方向関連は双方向に比べて検索が難しくなります。大きなアプリケーションでは、"
+"ほとんどすべての関連が双方向にナビゲーションできなければなりません。"
Deleted:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/bibliography.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/bibliography.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/bibliography.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,68 +0,0 @@
-# Language ja-JP translations for Branch package.
-# Automatically generated, 2009.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: Branch 3_3\n"
-"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: 2009-06-10 21:02+0000\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#. Tag: title
-#: bibliography.xml:27
-#, no-c-format
-msgid "References"
-msgstr ""
-
-#. Tag: title
-#: bibliography.xml:31
-#, no-c-format
-msgid "Patterns of Enterprise Application Architecture"
-msgstr ""
-
-#. Tag: author
-#: bibliography.xml:34
-#, no-c-format
-msgid "<firstname>Martin</firstname>
<surname>Fowler</surname>"
-msgstr ""
-
-#. Tag: holder
-#: bibliography.xml:41
-#, no-c-format
-msgid "Pearson Education, Inc."
-msgstr ""
-
-#. Tag: title
-#: bibliography.xml:50
-#, no-c-format
-msgid "Java Persistence with Hibernate"
-msgstr ""
-
-#. Tag: subtitle
-#: bibliography.xml:51
-#, no-c-format
-msgid "Second Edition of Hibernate in Action"
-msgstr ""
-
-#. Tag: author
-#: bibliography.xml:57
-#, no-c-format
-msgid "<firstname>Christian</firstname>
<surname>Bauer</surname>"
-msgstr ""
-
-#. Tag: author
-#: bibliography.xml:61
-#, no-c-format
-msgid "<firstname>Gavin</firstname>
<surname>King</surname>"
-msgstr ""
-
-#. Tag: holder
-#: bibliography.xml:68
-#, no-c-format
-msgid "Manning Publications Co."
-msgstr ""
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/collection_mapping.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/collection_mapping.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/collection_mapping.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,56 +1,40 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:26\n"
+"PO-Revision-Date: 2010-01-06 16:08+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: collection_mapping.xml:29
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Collection mapping"
msgstr "コレクションのマッピング"
#. Tag: title
-#: collection_mapping.xml:32
#, no-c-format
msgid "Persistent collections"
msgstr "コレクションの永続化"
#. Tag: para
-#: collection_mapping.xml:34
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate requires that persistent collection-valued fields be declared as "
"an interface type. For example:"
msgstr ""
-"コレクション型のフィールドを永続化するには、 そのコレクション型がインターフェ"
-"イス型である必要があります。 例えば、"
+"コレクション型のフィールドを永続化するには、そのコレクション型がインター"
+"フェース型である必要があります。例えば、"
-#. Tag: programlisting
-#: collection_mapping.xml:39
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[public class Product {\n"
-" private String serialNumber;\n"
-" private Set parts = new HashSet();\n"
-" \n"
-" public Set getParts() { return parts; }\n"
-" void setParts(Set parts) { this.parts = parts; }\n"
-" public String getSerialNumber() { return serialNumber; }\n"
-" void setSerialNumber(String sn) { serialNumber = sn; }\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:41
-#, fuzzy, no-c-format
-msgid ""
"The actual interface might be <literal>java.util.Set</literal>, "
"<literal>java.util.Collection</literal>,
<literal>java.util.List</literal>, "
"<literal>java.util.Map</literal>,
<literal>java.util.SortedSet</literal>, "
@@ -58,17 +42,16 @@
"like\" means you will have to write an implementation of
<literal>org."
"hibernate.usertype.UserCollectionType</literal>.)"
msgstr ""
-"実在するインターフェイスには <literal>java.util.Set</literal>、 "
-"<literal>java.util.Collection</literal>、<literal>java.util.List</literal>、
"
-"<literal>java.util.Map</literal>、<literal>java.util.SortedSet</literal>、
"
-"<literal>java.util.SortedMap</literal> などがあります。 または、任意のイン"
-"ターフェイスが使えます! (ただし、任意のインターフェイスを使用する場合は、 "
-"<literal>org.hibernate.usertype.UserCollectionType</literal>
の実装クラスを作"
-"成する必要があります。)"
+"実在するインターフェースには <literal>java.util.Set</literal>、 "
+"<literal>java.util.Collection</literal>、
<literal>java.util.List</"
+"literal>、 <literal>java.util.Map</literal>、
<literal>java.util.SortedSet</"
+"literal>、 <literal>java.util.SortedMap</literal>
などがあります。または、任"
+"意のインターフェースが使えます。 (ただし、「任意のインターフェース」を使用す"
+"る場合は、 <literal>org.hibernate.usertype.UserCollectionType</literal>
の実"
+"装クラスを作成する必要があります。)"
#. Tag: para
-#: collection_mapping.xml:50
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Notice how the instance variable was initialized with an instance of "
"<literal>HashSet</literal>. This is the best way to initialize
collection "
@@ -78,46 +61,29 @@
"an instance of Hibernate's own implementation of
<literal>Set</literal>. Be "
"aware of the following errors:"
msgstr ""
-"<literal>HashSet</literal> のインスタンスを持つインスタンス変数が どのように"
-"初期化されるかに注目してみましょう。 これは新たに生成された(永続化されていな"
-"い)コレクション型のプロパティを 初期化する最適な方法です。 (例えば "
+"<literal>HashSet</literal> のインスタンスを持つインスタンス変数がどのように初"
+"期化されるかに注目してみましょう。これは新たに生成された(永続化されていな"
+"い)コレクション型のプロパティを初期化する最適な方法です。 (例えば "
"<literal>persist()</literal> により)インスタンスを永続化しようとしたとき、 "
-"Hibernateは <literal>HashSet</literal> をHibernate独自の
<literal>Set</"
-"literal> の実装クラスに置き換えます。 このため、次のようなエラーには注意が必"
-"要です。"
+"Hibernate は <literal>HashSet</literal> を Hibernate 独自の
<literal>Set</"
+"literal> の実装クラスに置き換えます。このため、次のようなエラーには注意が必要"
+"です。"
-#. Tag: programlisting
-#: collection_mapping.xml:60
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Cat cat = new DomesticCat();\n"
-"Cat kitten = new DomesticCat();\n"
-"....\n"
-"Set kittens = new HashSet();\n"
-"kittens.add(kitten);\n"
-"cat.setKittens(kittens);\n"
-"session.persist(cat);\n"
-"kittens = cat.getKittens(); // Okay, kittens collection is a Set\n"
-"(HashSet) cat.getKittens(); // Error!]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:62
-#, fuzzy, no-c-format
-msgid ""
"The persistent collections injected by Hibernate behave like "
"<literal>HashMap</literal>, <literal>HashSet</literal>,
<literal>TreeMap</"
"literal>, <literal>TreeSet</literal> or
<literal>ArrayList</literal>, "
"depending on the interface type."
msgstr ""
-"Hibernateにより注入された永続性コレクションは、インターフェイス型に応じて、 "
+"Hibernate により注入された永続性コレクションは、インターフェース型に応じて、 "
"<literal>HashMap</literal> や <literal>HashSet</literal>、
<literal>TreeMap</"
"literal>、 <literal>TreeSet</literal>、
<literal>ArrayList</literal> のように"
"振舞います。"
#. Tag: para
-#: collection_mapping.xml:69
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Collections instances have the usual behavior of value types. They are "
"automatically persisted when referenced by a persistent object and are "
@@ -128,74 +94,56 @@
"properties do not support null value semantics. Hibernate does not "
"distinguish between a null collection reference and an empty collection."
msgstr ""
-"コレクションインスタンスは、値型として普通に振舞います。 永続化オブジェクトに"
-"参照されたときに自動的に永続化され、 参照がなくなったときに自動的に削除されま"
-"す。 もしある永続化オブジェクトから別の永続化オブジェクトに渡されたら、 その"
-"要素は現在のテーブルから別のテーブルに移動するかもしれません。 2つのエンティ"
-"ティが同じコレクションインスタンスを共有してはいけません。 リレーショナルモデ"
-"ルをベースにしているため、コレクション型のプロパティに null値を代入しても意味"
-"がありません。 つまりHibernateは参照先のないコレクションと空のコレクションを"
-"区別しません。"
+"コレクションインスタンスは、値型として普通に振舞います。永続化オブジェクトに"
+"参照されたときに自動的に永続化され、参照がなくなったときに自動的に削除されま"
+"す。もしある永続化オブジェクトから別の永続化オブジェクトに渡されたら、その要"
+"素は現在のテーブルから別のテーブルに移動するかもしれません。2つのエンティ"
+"ティが同じコレクションインスタンスを共有してはいけません。リレーショナルモデ"
+"ルをベースにしているため、コレクション型のプロパティに null 値を代入しても意"
+"味がありません。つまり Hibernate は参照先のないコレクションと空のコレクション"
+"を区別しません。"
#. Tag: para
-#: collection_mapping.xml:80
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Use persistent collections the same way you use ordinary Java collections. "
"However, please ensure you understand the semantics of bidirectional "
"associations (these are discussed later)."
msgstr ""
-"しかしそれほど心配しなくても構いません。 普段使っているJavaのコレクションと同"
-"じように、永続化コレクションを使ってください。 双方向関連の意味を理解すればよ"
-"いのです(これは後ほど説明します)。"
+"しかしそれほど心配しなくても構いません。普段使っている Java のコレクションと"
+"同じように、永続化コレクションを使ってください。双方向関連の意味を理解すれば"
+"よいのです(これは後ほど説明します)。"
#. Tag: title
-#: collection_mapping.xml:89
#, no-c-format
msgid "Collection mappings"
msgstr "コレクションのマッピング"
#. Tag: para
-#: collection_mapping.xml:92
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There are quite a range of mappings that can be generated for collections "
"that cover many common relational models. We suggest you experiment with the
"
"schema generation tool so that you understand how various mapping "
"declarations translate to database tables."
msgstr ""
-"多くの一般的なリレーショナルモデルをカバーしたために、 コレクションのために利"
-"用できるマッピングにはかなりの幅があります。 様々なマッピング宣言がどのように"
-"データベーステーブルに変換されるかを知るために、 スキーマ生成ツールを使ってみ"
+"多くの一般的なリレーショナルモデルをカバーしたために、コレクションのために利"
+"用できるマッピングにはかなりの幅があります。様々なマッピング宣言がどのように"
+"データベーステーブルに変換されるかを知るために、スキーマ生成ツールを使ってみ"
"ると良いでしょう。"
#. Tag: para
-#: collection_mapping.xml:99
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The Hibernate mapping element used for mapping a collection depends upon the
"
"type of interface. For example, a
<literal><set></literal> element is "
"used for mapping properties of type <literal>Set</literal>."
msgstr ""
-"コレクションをマッピングするためのマッピング要素は、インターフェイスの型に依"
-"存します。 例えば、<literal><set></literal> 要素は
<literal>Set</"
-"literal> 型を マッピングするために使います。"
+"コレクションをマッピングするためのマッピング要素は、インターフェースの型に依"
+"存します。例えば、 <literal><set></literal> 要素は
<literal>Set</"
+"literal> 型のプロパティをマッピングするために使います。"
-#. Tag: programlisting
-#: collection_mapping.xml:105
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Product\">\n"
-" <id name=\"serialNumber\"
column=\"productSerialNumber\"/>\n"
-" <set name=\"parts\">\n"
-" <key column=\"productSerialNumber\"
not-null=\"true\"/>\n"
-" <one-to-many class=\"Part\"/>\n"
-" </set>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: collection_mapping.xml:107
#, no-c-format
msgid ""
"Apart from <literal><set></literal>, there is also
<literal><"
@@ -205,69 +153,36 @@
"element is representative:"
msgstr ""
"マッピング要素には <literal><set></literal> の他に
<literal><"
-"list></literal>、
<literal><map></literal>、<literal><bag></"
-"literal>、
<literal><array></literal>、<literal><primitive-array>"
-"</literal> があります。 代表として、<literal><map></literal>
要素を下記"
-"に示します。"
+"list></literal>、 <literal><map></literal>、
<literal><bag></"
+"literal>、 <literal><array></literal>、
<literal><primitive-"
+"array></literal> があります。代表として、
<literal><map></literal> "
+"要素を下記に示します。"
-#. Tag: programlisting
-#: collection_mapping.xml:132
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[<map\n"
-" name=\"propertyName\"\n"
-" table=\"table_name\"\n"
-" schema=\"schema_name\"\n"
-" lazy=\"true|extra|false\"\n"
-" inverse=\"true|false\"\n"
-"
cascade=\"all|none|save-update|delete|all-delete-orphan|delete-orphan\"\n"
-" sort=\"unsorted|natural|comparatorClass\"\n"
-" order-by=\"column_name asc|desc\"\n"
-" where=\"arbitrary sql where condition\"\n"
-" fetch=\"join|select|subselect\"\n"
-" batch-size=\"N\"\n"
-" access=\"field|property|ClassName\"\n"
-" optimistic-lock=\"true|false\"\n"
-" mutable=\"true|false\"\n"
-" node=\"element-name|.\"\n"
-" embed-xml=\"true|false\"\n"
-">\n"
-"\n"
-" <key .... />\n"
-" <map-key .... />\n"
-" <element .... />\n"
-"</map>]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:135
-#, fuzzy, no-c-format
msgid "<literal>name</literal>: the collection property name"
-msgstr "<literal>name</literal> コレクション型であるプロパティの名前"
+msgstr "<literal>name</literal> :コレクション型であるプロパティの名前"
#. Tag: para
-#: collection_mapping.xml:140
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>table</literal> (optional - defaults to property name): the
name of "
"the collection table. It is not used for one-to-many associations."
msgstr ""
-"<literal>table</literal> (オプション - デフォルトはプロパティ名)コレクショ"
-"ンテーブルの名前 (一対多関連では使用しません)。"
+"<literal>table</literal> (オプション - デフォルトはプロパティ名):コレク"
+"ションテーブルの名前(一対多関連では使用しません)。"
#. Tag: para
-#: collection_mapping.xml:146
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>schema</literal> (optional): the name of a table schema to
override "
"the schema declared on the root element"
msgstr ""
-"<literal>schema</literal> (オプション)テーブルスキーマの名前。 ルート要素で"
-"宣言されているスキーマより優先されます。"
+"<literal>schema</literal> (オプション):テーブルスキーマの名前。ルート要素"
+"で宣言されているスキーマより優先されます。"
#. Tag: para
-#: collection_mapping.xml:152
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>lazy</literal> (optional - defaults to
<literal>true</literal>): "
"disables lazy fetching and specifies that the association is always eagerly "
@@ -276,122 +191,113 @@
"collections."
msgstr ""
"<literal>lazy</literal> (オプション - デフォルトは <literal>true</"
-"literal>) 遅延フェッチを無効にし、関連を常に即時にフェッチにするために使用し"
-"ます。 または、「extra-lazy」フェッチを有効にするために使用します。 「extra-"
+"literal>): 遅延フェッチを無効にし、関連を常に即時にフェッチにするために使用"
+"します。または、「extra-lazy」フェッチを有効にするために使用します。「extra-"
"lazy」フェッチは、ほとんどの操作ではコレクションを初期化しません (非常に大き"
"なコレクションに適しています)。"
#. Tag: para
-#: collection_mapping.xml:161
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>inverse</literal> (optional - defaults to
<literal>false</"
"literal>): marks this collection as the \"inverse\" end of a
bidirectional "
"association."
msgstr ""
"<literal>inverse</literal> (オプション - デフォルトは
<literal>false</"
-"literal>) このコレクションが双方向関連の「逆」側であるとマークします。"
+"literal>):このコレクションが双方向関連の「逆」側であるとマークします。"
#. Tag: para
-#: collection_mapping.xml:167
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>cascade</literal> (optional - defaults to
<literal>none</literal>): "
"enables operations to cascade to child entities."
msgstr ""
"<literal>cascade</literal> (オプション - デフォルトは
<literal>none</"
-"literal>) 子エンティティへのカスケード操作を有効にします。"
+"literal>):子エンティティへのカスケード操作を有効にします。"
#. Tag: para
-#: collection_mapping.xml:173
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>sort</literal> (optional): specifies a sorted collection with
"
"<literal>natural</literal> sort order or a given comparator
class."
msgstr ""
-"<literal>sort</literal> (オプション)コレクションを自然な順序でソートする場"
-"合は <literal>natural</literal> を指定します。 あるいはComparatorクラスを指定"
-"します。"
+"<literal>sort</literal> (オプション):コレクションを自然な順序でソートする"
+"場合は <literal>natural</literal> を指定します。あるいは Comparator クラスを"
+"指定します。"
#. Tag: para
-#: collection_mapping.xml:179
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>order-by</literal> (optional, JDK1.4 only): specifies a table
"
"column or columns that define the iteration order of the
<literal>Map</"
"literal>, <literal>Set</literal> or bag, together with an optional
"
"<literal>asc</literal> or <literal>desc</literal>."
msgstr ""
-"<literal>order-by</literal> (オプション、JDK1.4のみ)
<literal>Map</"
-"literal>、<literal>Set</literal>、bagのイテレーション順序を定義する テーブル"
-"カラムを指定すると共に、 オプションとして <literal>asc</literal>、"
+"<literal>order-by</literal> (オプション、 JDK1.4 のみ)
<literal>Map</"
+"literal>、 <literal>Set</literal>、 bag のイテレーション順序を定義するテーブ"
+"ルカラムを指定すると共に、オプションとして <literal>asc</literal>、 "
"<literal>desc</literal> を指定します。"
#. Tag: para
-#: collection_mapping.xml:186
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>where</literal> (optional): specifies an arbitrary SQL "
"<literal>WHERE</literal> condition that is used when retrieving or
removing "
"the collection. This is useful if the collection needs to contain only a "
"subset of the available data."
msgstr ""
-"<literal>where</literal> (オプション)コレクションの検索や削除の際に使う 任"
-"意のSQLの<literal>WHERE</literal> 条件を指定します (利用可能なデータの一部分"
-"だけをコレクションが含むべきときに、これは有用です)。"
+"<literal>where</literal> (オプション):コレクションの検索や削除の際に使う任"
+"意の SQL の<literal>WHERE</literal> 条件を指定します (利用可能なデータの一部"
+"分だけをコレクションが含むべきときに、これは有用です)。"
#. Tag: para
-#: collection_mapping.xml:193
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>fetch</literal> (optional, defaults to
<literal>select</literal>): "
"chooses between outer-join fetching, fetching by sequential select, and "
"fetching by sequential subselect."
msgstr ""
-"<literal>fetch</literal>(オプション - デフォルトは
<literal>select</"
-"literal>) 外部結合によるフェッチ、順次選択フェッチ(sequential select "
-"fetch)、 順次サブセレクトフェッチ(sequential subselect fetch)のどれかを選"
-"択してください。"
+"<literal>fetch</literal> (オプション - デフォルトは
<literal>select</"
+"literal>):外部結合によるフェッチ、順次選択フェッチ (sequential select "
+"fetch) 、順次サブセレクトフェッチ (sequential subselect fetch) のどれかを"
+"選択してください。"
#. Tag: para
-#: collection_mapping.xml:200
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>batch-size</literal> (optional, defaults to
<literal>1</literal>): "
"specifies a \"batch size\" for lazily fetching instances of this
collection."
msgstr ""
"<literal>batch-size</literal> (オプション - デフォルトは
<literal>1</"
-"literal>) コレクションのインスタンスの遅延フェッチのための「バッチサイズ」を"
-"指定します。"
+"literal>):コレクションのインスタンスの遅延フェッチのための「バッチサイズ」"
+"を指定します。"
#. Tag: para
-#: collection_mapping.xml:206
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>access</literal> (optional - defaults to
<literal>property</"
"literal>): the strategy Hibernate uses for accessing the collection property
"
"value."
msgstr ""
"<literal>access</literal> (オプション - デフォルトは
<literal>property</"
-"literal>) コレクション型プロパティの値にアクセスするために使用する戦略です。"
+"literal>):コレクション型プロパティの値にアクセスするために使用する戦略で"
+"す。"
#. Tag: para
-#: collection_mapping.xml:212
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>optimistic-lock</literal> (optional - defaults to
<literal>true</"
"literal>): specifies that changes to the state of the collection results in
"
"increments of the owning entity's version. For one-to-many associations you
"
"may want to disable this setting."
msgstr ""
-"<literal>optimistic-lock</literal>(オプション - デフォルトは
<literal>true</"
-"literal>) コレクションの状態を変えることによって、 そのオーナーであるエン"
-"ティティのバージョンがインクリメントされるかを指定します。 (一対多関連では、"
-"ほとんどの場合において無効に設定するのが妥当です。)"
+"<literal>optimistic-lock</literal> (オプション - デフォルトは "
+"<literal>true</literal>) コレクションの状態を変えることによって、そのオー"
+"ナーであるエンティティのバージョンがインクリメントされるかを指定します。 (一"
+"対多関連では、ほとんどの場合において無効に設定するのが妥当です。)"
#. Tag: para
-#: collection_mapping.xml:220
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>mutable</literal> (optional - defaults to
<literal>true</literal>): "
"a value of <literal>false</literal> specifies that the elements of the
"
@@ -403,14 +309,12 @@
"とを表します (ある場合には、少しパフォーマンスを高めます)。"
#. Tag: title
-#: collection_mapping.xml:230
#, no-c-format
msgid "Collection foreign keys"
msgstr "コレクションの外部キー"
#. Tag: para
-#: collection_mapping.xml:232
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Collection instances are distinguished in the database by the foreign key of
"
"the entity that owns the collection. This foreign key is referred to as the "
@@ -418,47 +322,33 @@
"table. The collection key column is mapped by the
<literal><key></"
"literal> element."
msgstr ""
-"コレクションのインスタンスは、データベース内では、 そのコレクションを所有する"
-"エンティティの外部キーによって識別されます。 この外部キーはコレクションテーブ"
-"ルの <emphasis>コレクションキーカラム</emphasis> と呼ばれます。 コレクション"
-"キーカラムは <literal><key></literal> 要素によりマッピングします。"
+"コレクションのインスタンスは、データベース内では、そのコレクションを所有する"
+"エンティティの外部キーによって識別されます。この外部キーはコレクションテーブ"
+"ルの <emphasis>コレクションキーカラム</emphasis> (またはカラム) と呼ばれま"
+"す。コレクションキーカラムは <literal><key></literal> 要素によりマッピ"
+"ングします。"
#. Tag: para
-#: collection_mapping.xml:240
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There can be a nullability constraint on the foreign key column. For most "
"collections, this is implied. For unidirectional one-to-many associations, "
"the foreign key column is nullable by default, so you may need to specify "
"<literal>not-null=\"true\"</literal>."
msgstr ""
-"外部キーカラムにはnull設定制約があるかもしれません。 ほとんどのコレクションに"
-"当てはまるでしょう。 単方向の一対多関連において、外部キーカラムはデフォルトで"
-"nullを許す設定になっています。 よって、<literal>not-null=\"true\"</literal>
"
-"を指定する必要があるかもしれません。"
+"外部キーカラムには null 設定制約があるかもしれません。ほとんどのコレクション"
+"に当てはまるでしょう。単方向の一対多関連において、外部キーカラムはデフォルト"
+"で null を許す設定になっています。よって、 <literal>not-null=\"true\"</"
+"literal> を指定する必要があるかもしれません。"
-#. Tag: programlisting
-#: collection_mapping.xml:247
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[<key column=\"productSerialNumber\"
not-null=\"true\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:249
-#, fuzzy, no-c-format
msgid ""
"The foreign key constraint can use <literal>ON DELETE
CASCADE</literal>."
msgstr ""
"外部キーの制約が <literal>ON DELETE CASCADE</literal> を使うかもしれません。"
-#. Tag: programlisting
-#: collection_mapping.xml:253
-#, no-c-format
-msgid "<![CDATA[<key column=\"productSerialNumber\"
on-delete=\"cascade\"/>]]>"
-msgstr ""
-
#. Tag: para
-#: collection_mapping.xml:255
#, no-c-format
msgid ""
"See the previous chapter for a full definition of the
<literal><key></"
@@ -468,14 +358,12 @@
"ださい。"
#. Tag: title
-#: collection_mapping.xml:263
#, no-c-format
msgid "Collection elements"
msgstr "コレクションの要素"
#. Tag: para
-#: collection_mapping.xml:265
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Collections can contain almost any other Hibernate type, including: basic "
"types, custom types, components and references to other entities. This is an
"
@@ -485,16 +373,15 @@
"latter case, only the \"link\" between the two objects is considered to
be a "
"state held by the collection."
msgstr ""
-"コレクションは他のHibernateの型のほとんど(すべての基本型、カスタム型、コン"
-"ポーネント、 他のエンティティへの参照)を格納することができます。 次の点は重"
-"要な違いになります。 コレクションに格納されたオブジェクトが「値」セマンティク"
-"スとして扱われるのか (ライフサイクルはコレクションのオーナーに完全に依存しま"
-"す)、 もしくはそれ自身のライフサイクルを持った別のエンティティへの参照である"
-"かのかという違いです。 後者は、2つのオブジェクト間の「リンク」をコレクション"
-"に保持していると見なしているだけです。"
+"コレクションは他の Hibernate の型のほとんど(すべての基本型、カスタム型、コン"
+"ポーネント、他のエンティティへの参照)を格納することができます。次の点は重要"
+"な違いになります。コレクションに格納されたオブジェクトが「値」セマンティクス"
+"として扱われるのか (ライフサイクルはコレクションのオーナーに完全に依存しま"
+"す)、もしくはそれ自身のライフサイクルを持った別のエンティティへの参照である"
+"かのかという違いです。後者は、2つのオブジェクト間の「リンク」をコレクションに"
+"保持していると見なしているだけです。"
#. Tag: para
-#: collection_mapping.xml:274
#, no-c-format
msgid ""
"The contained type is referred to as the <emphasis>collection element
type</"
@@ -504,22 +391,20 @@
"<literal><many-to-many></literal>. The first two map
elements with "
"value semantics, the next two are used to map entity associations."
msgstr ""
-"格納される型は <emphasis>コレクション要素型</emphasis> と呼ばれます。 コレク"
-"ション要素は、<literal><element></literal> または
<literal><"
+"格納される型は <emphasis>コレクション要素型</emphasis> と呼ばれます。コレク"
+"ション要素は、 <literal><element></literal> または
<literal><"
"composite-element></literal> によりマッピングされ、エンティティへの参照の"
"場合には <literal><one-to-many></literal> または
<literal><many-to-"
-"many></literal> によりマッピングされます。 最初の二つは値として要素をマッ"
-"ピングし、次の二つはエンティティの関連をマッピングするのに使われます。"
+"many></literal> によりマッピングされます。最初の二つは値として要素をマッピ"
+"ングし、次の二つはエンティティの関連をマッピングするのに使われます。"
#. Tag: title
-#: collection_mapping.xml:286
#, no-c-format
msgid "Indexed collections"
msgstr "インデックス付きのコレクション"
#. Tag: para
-#: collection_mapping.xml:288
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"All collection mappings, except those with set and bag semantics, need an "
"<emphasis>index column</emphasis> in the collection table. An index
column "
@@ -533,66 +418,73 @@
"index></literal> element. The mapped column contains sequential
integers "
"that are numbered from zero by default."
msgstr ""
-"setとbagを除く全てのコレクションマッピングには、 コレクションテーブルの中に "
-"<emphasis>インデックス用のカラム</emphasis> が必要です。 そのカラムに、配列"
-"や <literal>List</literal> のインデックス、 もしくは
<literal>Map</literal> "
-"のキーをマッピングします。 <literal>Map</literal> のインデックスは、 "
+"set と bag を除く全てのコレクションマッピングには、コレクションテーブルの中"
+"に <emphasis>インデックス用のカラム</emphasis> が必要です。そのカラムに、配列"
+"や <literal>List</literal> のインデックス、もしくは
<literal>Map</literal> の"
+"キーをマッピングします。 <literal>Map</literal> のインデックスは、 "
"<literal><map-key></literal> によりマッピングされた基本型か、 "
"<literal><map-key-many-to-many></literal>
によりマッピングされたエン"
-"ティティの関連か、 あるいは <literal><composite-map-key></literal>
によ"
-"りマッピングされたコンポジット型になります。 配列かリストのインデックスは、常"
+"ティティの関連か、あるいは <literal><composite-map-key></literal>
によ"
+"りマッピングされたコンポジット型になります。配列かリストのインデックスは、常"
"に <literal>integer</literal> 型で、
<literal><list-index></literal> 要"
-"素によりマッピングします。 マッピングされたカラムにはシーケンシャルな整数を格"
-"納します(デフォルトでは0から番号が付けられます)。"
+"素によりマッピングします。マッピングされたカラムにはシーケンシャルな整数を格"
+"納します (デフォルトでは0から番号が付けられます)。"
-#. Tag: sect2
-#: collection_mapping.xml:299
+#. Tag: para
#, no-c-format
msgid ""
-"<programlistingco> <areaspec> <area id=\"index1\"
coords=\"2 45\"/> <area id="
-"\"index2\" coords=\"3 45\"/> </areaspec>
<programlisting><![CDATA[<list-"
-"index \n"
-" column=\"column_name\"\n"
-" base=\"0|1|...\"/>]]></programlisting>
<calloutlist> <callout "
-"arearefs=\"index1\"> <para>
<literal>column_name</literal> (required): the "
-"name of the column holding the collection index values. </para>
</callout> "
-"<callout arearefs=\"index1\"> <para>
<literal>base</literal> (optional - "
-"defaults to <literal>0</literal>): the value of the index column that
"
-"corresponds to the first element of the list or array. </para>
</callout> </"
-"calloutlist> </programlistingco> <programlistingco> <areaspec>
<area id="
-"\"mapkey1\" coords=\"2 45\"/> <area
id=\"mapkey2\" coords=\"3 45\"/> <area "
-"id=\"mapkey3\" coords=\"4 45\"/> </areaspec>
<programlisting><![CDATA[<map-"
-"key \n"
-" column=\"column_name\"\n"
-" formula=\"any SQL expression\"\n"
-" type=\"type_name\"\n"
-" node=\"@attribute-name\"\n"
-" length=\"N\"/>]]></programlisting>
<calloutlist> <callout arearefs="
-"\"mapkey1\"> <para> <literal>column</literal>
(optional): the name of the "
-"column holding the collection index values. </para> </callout>
<callout "
-"arearefs=\"mapkey2\"> <para>
<literal>formula</literal> (optional): a SQL "
-"formula used to evaluate the key of the map. </para> </callout>
<callout "
-"arearefs=\"mapkey3\"> <para> <literal>type</literal>
(required): the type of "
-"the map keys. </para> </callout> </calloutlist>
</programlistingco> "
-"<programlistingco> <areaspec> <area
id=\"indexmanytomany1\" coords=\"2 45\"/"
-"> <area id=\"indexmanytomany2\" coords=\"3 45\"/>
<area id=\"indexmanytomany3"
-"\" coords=\"3 45\"/> </areaspec>
<programlisting><![CDATA[<map-key-many-to-"
-"many\n"
-" column=\"column_name\"\n"
-" formula=\"any SQL expression\"\n"
-" class=\"ClassName\"\n"
-"/>]]></programlisting> <calloutlist> <callout
arearefs=\"indexmanytomany1\"> "
-"<para> <literal>column</literal> (optional): the name of the
foreign key "
-"column for the collection index values. </para> </callout> <callout
arearefs="
-"\"indexmanytomany2\"> <para>
<literal>formula</literal> (optional): a SQ "
-"formula used to evaluate the foreign key of the map key. </para>
</callout> "
-"<callout arearefs=\"indexmanytomany3\"> <para>
<literal>class</literal> "
-"(required): the entity class used as the map key. </para> </callout>
</"
-"calloutlist> </programlistingco>"
+"<literal>column_name</literal> (required): the name of the column
holding "
+"the collection index values."
msgstr ""
#. Tag: para
-#: collection_mapping.xml:380
+#, no-c-format
+msgid ""
+"<literal>base</literal> (optional - defaults to
<literal>0</literal>): the "
+"value of the index column that corresponds to the first element of the list "
+"or array."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"<literal>column</literal> (optional): the name of the column holding
the "
+"collection index values."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"<literal>formula</literal> (optional): a SQL formula used to evaluate
the "
+"key of the map."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "<literal>type</literal> (required): the type of the map
keys."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"<literal>column</literal> (optional): the name of the foreign key
column for "
+"the collection index values."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"<literal>formula</literal> (optional): a SQ formula used to evaluate
the "
+"foreign key of the map key."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"<literal>class</literal> (required): the entity class used as the map
key."
+msgstr ""
+
+#. Tag: para
#, fuzzy, no-c-format
msgid ""
"If your table does not have an index column, and you still wish to use "
@@ -602,20 +494,18 @@
"ordered."
msgstr ""
"もしテーブルにインデックスカラムがなくても、プロパティ型として "
-"<literal>List</literal> を使いたければ、 Hibernateの
<emphasis><bag></"
-"emphasis> としてプロパティをマッピングします。 bagはデータベースから復元され"
-"る時、順序を保持しません。 しかし、(メモリ上で)ソートしたり、(SQLで)順序"
-"付けしたり(order by)することもできます。"
+"<literal>List</literal> を使いたければ、 Hibernate の
<emphasis><bag></"
+"emphasis> としてプロパティをマッピングします。 bag はデータベースから復元され"
+"る時、順序を保持しません。しかし、(メモリ上で)ソートしたり、(SQLで)順序付"
+"けしたり(order by)することもできます。"
#. Tag: title
-#: collection_mapping.xml:390
#, no-c-format
msgid "Collections of values and many-to-many associations"
msgstr "値のコレクションと多対多関連"
#. Tag: para
-#: collection_mapping.xml:392
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Any collection of values or many-to-many associations requires a dedicated "
"<emphasis>collection table</emphasis> with a foreign key column or
columns, "
@@ -623,237 +513,184 @@
"index column or columns."
msgstr ""
"値のコレクションや多対多関連は、専用の <emphasis>コレクションテーブル</"
-"emphasis> が必要です。 このテーブルは、外部キーカラムと、 <emphasis>コレク"
-"ション要素のカラム</emphasis> と、 場合によってはインデックスカラムを持ちま"
-"す。"
+"emphasis> が必要です。このテーブルは、外部キーカラムと、 <emphasis>コレクショ"
+"ン要素のカラム</emphasis> と、場合によってはインデックスカラムを持ちます。"
#. Tag: para
-#: collection_mapping.xml:399
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For a collection of values use the
<literal><element></literal> tag. "
"For example:"
msgstr ""
-"値のコレクションのために、<literal><element></literal>タグを使用しま"
+"値のコレクションのために、 <literal><element></literal> タグを使用しま"
"す。"
-#. Tag: sect2
-#: collection_mapping.xml:401
+#. Tag: para
#, no-c-format
msgid ""
-"<programlistingco> <areaspec> <area id=\"element1b\"
coords=\"2 50\"/> <area "
-"id=\"element2b\" coords=\"3 50\"/> <area
id=\"element3b\" coords=\"4 50\"/> "
-"</areaspec> <programlisting><![CDATA[<element\n"
-" column=\"column_name\"\n"
-" formula=\"any SQL expression\"\n"
-" type=\"typename\"\n"
-" length=\"L\"\n"
-" precision=\"P\"\n"
-" scale=\"S\"\n"
-" not-null=\"true|false\"\n"
-" unique=\"true|false\"\n"
-" node=\"element-name\"\n"
-"/>]]></programlisting> <calloutlist> <callout
arearefs=\"element1b\"> <para> "
"<literal>column</literal> (optional): the name of the column holding
the "
-"collection element values. </para> </callout> <callout
arearefs=\"element2b"
-"\"> <para> <literal>formula</literal> (optional): an SQL
formula used to "
-"evaluate the element. </para> </callout> <callout
arearefs=\"element3b\"> "
-"<para> <literal>type</literal> (required): the type of the
collection "
-"element. </para> </callout> </calloutlist>
</programlistingco> <para> A "
-"<emphasis>many-to-many association</emphasis> is specified using the
"
-"<literal><many-to-many></literal> element. </para>
<programlistingco> "
-"<areaspec> <area id=\"manytomany1\" coords=\"2
60\"/> <area id=\"manytomany2"
-"\" coords=\"3 60\"/> <area id=\"manytomany3\"
coords=\"4 60\"/> <area id="
-"\"manytomany4\" coords=\"5 60\"/> <area
id=\"manytomany5\" coords=\"6 60\"/> "
-"<area id=\"manytomany6\" coords=\"7 60\"/> <area
id=\"manytomany7\" coords="
-"\"8 60\"/> <area id=\"manytomany8\" coords=\"9
60\"/> </areaspec> "
-"<programlisting><![CDATA[<many-to-many\n"
-" column=\"column_name\"\n"
-" formula=\"any SQL expression\"\n"
-" class=\"ClassName\"\n"
-" fetch=\"select|join\"\n"
-" unique=\"true|false\"\n"
-" not-found=\"ignore|exception\"\n"
-" entity-name=\"EntityName\"\n"
-" property-ref=\"propertyNameFromAssociatedClass\"\n"
-" node=\"element-name\"\n"
-" embed-xml=\"true|false\"\n"
-" />]]></programlisting> <calloutlist> <callout
arearefs=\"manytomany1\"> "
-"<para> <literal>column</literal> (optional): the name of the
element foreign "
-"key column. </para> </callout> <callout
arearefs=\"manytomany2\"> <para> "
+"collection element values."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid ""
"<literal>formula</literal> (optional): an SQL formula used to evaluate
the "
-"element foreign key value. </para> </callout> <callout
arearefs=\"manytomany3"
-"\"> <para> <literal>class</literal> (required): the name
of the associated "
-"class. </para> </callout> <callout
arearefs=\"manytomany4\"> <para> "
-"<literal>fetch</literal> (optional - defaults to
<literal>join</literal>): "
-"enables outer-join or sequential select fetching for this association. This "
-"is a special case; for full eager fetching in a single
<literal>SELECT</"
-"literal> of an entity and its many-to-many relationships to other entities,
"
-"you would enable <literal>join</literal> fetching,not only of the
collection "
-"itself, but also with this attribute on the
<literal><many-to-many></"
-"literal> nested element. </para> </callout> <callout
arearefs=\"manytomany5"
-"\"> <para> <literal>unique</literal> (optional): enables
the DDL generation "
-"of a unique constraint for the foreign-key column. This makes the "
-"association multiplicity effectively one-to-many. </para> </callout>
"
-"<callout arearefs=\"manytomany6\"> <para>
<literal>not-found</literal> "
-"(optional - defaults to <literal>exception</literal>): specifies how
foreign "
-"keys that reference missing rows will be handled:
<literal>ignore</literal> "
-"will treat a missing row as a null association. </para> </callout>
<callout "
-"arearefs=\"manytomany7\"> <para>
<literal>entity-name</literal> (optional): "
-"the entity name of the associated class, as an alternative to "
-"<literal>class</literal>. </para> </callout> <callout
arearefs=\"manytomany8"
-"\"> <para> <literal>property-ref</literal> (optional):
the name of a "
-"property of the associated class that is joined to this foreign key. If not "
-"specified, the primary key of the associated class is used. </para>
</"
-"callout> </calloutlist> </programlistingco>"
+"element."
msgstr ""
#. Tag: para
-#: collection_mapping.xml:506
#, no-c-format
-msgid "Here are some examples."
+msgid "<literal>type</literal> (required): the type of the collection
element."
msgstr ""
#. Tag: para
-#: collection_mapping.xml:509
#, no-c-format
-msgid "A set of strings:"
+msgid ""
+"A <emphasis>many-to-many association</emphasis> is specified using the
"
+"<literal><many-to-many></literal> element."
msgstr ""
-#. Tag: programlisting
-#: collection_mapping.xml:513
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<set name=\"names\"
table=\"person_names\">\n"
-" <key column=\"person_id\"/>\n"
-" <element column=\"person_name\"
type=\"string\"/>\n"
-"</set>]]>"
+"<literal>column</literal> (optional): the name of the element foreign
key "
+"column."
msgstr ""
#. Tag: para
-#: collection_mapping.xml:515
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
-"A bag containing integers with an iteration order determined by the "
-"<literal>order-by</literal> attribute:"
+"<literal>formula</literal> (optional): an SQL formula used to evaluate
the "
+"element foreign key value."
msgstr ""
-"整数値を含むbag(bagは <literal>order-by</literal> 属性によって反復順序が定義"
-"されています)"
-#. Tag: programlisting
-#: collection_mapping.xml:520
+#. Tag: para
#, no-c-format
+msgid "<literal>class</literal> (required): the name of the associated
class."
+msgstr "<literal>class</literal> (必須): 関連クラスの名前。"
+
+#. Tag: para
+#, no-c-format
msgid ""
-"<![CDATA[<bag name=\"sizes\" \n"
-" table=\"item_sizes\" \n"
-" order-by=\"size asc\">\n"
-" <key column=\"item_id\"/>\n"
-" <element column=\"size\" type=\"integer\"/>\n"
-"</bag>]]>"
+"<literal>fetch</literal> (optional - defaults to
<literal>join</literal>): "
+"enables outer-join or sequential select fetching for this association. This "
+"is a special case; for full eager fetching in a single
<literal>SELECT</"
+"literal> of an entity and its many-to-many relationships to other entities,
"
+"you would enable <literal>join</literal> fetching,not only of the
collection "
+"itself, but also with this attribute on the
<literal><many-to-many></"
+"literal> nested element."
msgstr ""
#. Tag: para
-#: collection_mapping.xml:522
+#, no-c-format
+msgid ""
+"<literal>unique</literal> (optional): enables the DDL generation of a
unique "
+"constraint for the foreign-key column. This makes the association "
+"multiplicity effectively one-to-many."
+msgstr ""
+
+#. Tag: para
#, fuzzy, no-c-format
-msgid "An array of entities, in this case, a many-to-many association:"
-msgstr "エンティティの配列 - この場合、多対多の関連です。"
+msgid ""
+"<literal>not-found</literal> (optional - defaults to
<literal>exception</"
+"literal>): specifies how foreign keys that reference missing rows will be
"
+"handled: <literal>ignore</literal> will treat a missing row as a null
"
+"association."
+msgstr ""
+"<literal>not-found</literal> (オプション - デフォルトは
<literal>exception</"
+"literal>): 参照先の行がないキャッシュされた識別子をどのように扱うかを指定し"
+"ます: <literal>ignore</literal> を指定すると、行がないことを関連がないものと"
+"して扱います。"
-#. Tag: programlisting
-#: collection_mapping.xml:526
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<array name=\"addresses\" \n"
-" table=\"PersonAddress\" \n"
-" cascade=\"persist\">\n"
-" <key column=\"personId\"/>\n"
-" <list-index column=\"sortOrder\"/>\n"
-" <many-to-many column=\"addressId\"
class=\"Address\"/>\n"
-"</array>]]>"
+"<literal>entity-name</literal> (optional): the entity name of the
associated "
+"class, as an alternative to <literal>class</literal>."
msgstr ""
+"<literal>entity-name</literal> (オプション):
<literal>class</literal> の代"
+"替である関連クラスのエンティティ名。 <literal>class</literal> の代わりに指定"
+"する、関連クラスのエンティティ名。"
#. Tag: para
-#: collection_mapping.xml:528
#, no-c-format
-msgid "A map from string indices to dates:"
-msgstr "文字列と日付のmap"
+msgid ""
+"<literal>property-ref</literal> (optional): the name of a property of
the "
+"associated class that is joined to this foreign key. If not specified, the "
+"primary key of the associated class is used."
+msgstr ""
-#. Tag: programlisting
-#: collection_mapping.xml:532
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[<map name=\"holidays\" \n"
-" table=\"holidays\" \n"
-" schema=\"dbo\" \n"
-" order-by=\"hol_name asc\">\n"
-" <key column=\"id\"/>\n"
-" <map-key column=\"hol_name\"
type=\"string\"/>\n"
-" <element column=\"hol_date\" type=\"date\"/>\n"
-"</map>]]>"
+msgid "Here are some examples."
msgstr ""
#. Tag: para
-#: collection_mapping.xml:534
-#, fuzzy, no-c-format
-msgid "A list of components (this is discussed in the next chapter):"
-msgstr "コンポーネントのlist(次の章で詳しく説明します)"
+#, no-c-format
+msgid "A set of strings:"
+msgstr ""
-#. Tag: programlisting
-#: collection_mapping.xml:538
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<list name=\"carComponents\" \n"
-" table=\"CarComponents\">\n"
-" <key column=\"carId\"/>\n"
-" <list-index column=\"sortOrder\"/>\n"
-" <composite-element class=\"CarComponent\">\n"
-" <property name=\"price\"/>\n"
-" <property name=\"type\"/>\n"
-" <property name=\"serialNumber\"
column=\"serialNum\"/>\n"
-" </composite-element>\n"
-"</list>]]>"
+"A bag containing integers with an iteration order determined by the "
+"<literal>order-by</literal> attribute:"
msgstr ""
+"整数値を含む bag (bagは <literal>order-by</literal> 属性によって反復順序が定"
+"義されています):"
+#. Tag: para
+#, no-c-format
+msgid "An array of entities, in this case, a many-to-many association:"
+msgstr "エンティティの配列 - この場合、多対多の関連です。"
+
+#. Tag: para
+#, no-c-format
+msgid "A map from string indices to dates:"
+msgstr "文字列と日付の map"
+
+#. Tag: para
+#, no-c-format
+msgid "A list of components (this is discussed in the next chapter):"
+msgstr "コンポーネントの list (次の章で詳しく説明します)"
+
#. Tag: title
-#: collection_mapping.xml:543
#, no-c-format
msgid "One-to-many associations"
msgstr "一対多関連"
#. Tag: para
-#: collection_mapping.xml:545
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <emphasis>one-to-many association</emphasis> links the tables of two
"
"classes via a foreign key with no intervening collection table. This mapping
"
"loses certain semantics of normal Java collections:"
msgstr ""
-"<emphasis>一対多関連</emphasis> は、コレクション・テーブルを介さず、 外部キー"
-"により2つのクラスのテーブルを関連付けます。 このマッピングは標準的なJavaのコ"
-"レクションのセマンティクスをいくつか失います。"
+"<emphasis>一対多関連</emphasis> は、コレクションテーブルを介さず、外部キーに"
+"より2つのクラスのテーブルを関連付けます。このマッピングは標準的な Java のコレ"
+"クションのセマンティクスをいくつか失います:"
#. Tag: para
-#: collection_mapping.xml:553
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An instance of the contained entity class cannot belong to more than one "
"instance of the collection."
msgstr ""
-"エンティティクラスのインスタンスは、 2つ以上のコレクションのインスタンスに属"
-"してはいけません。"
+"エンティティクラスのインスタンスは、2つ以上のコレクションのインスタンスに属し"
+"てはいけません。"
#. Tag: para
-#: collection_mapping.xml:559
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An instance of the contained entity class cannot appear at more than one "
"value of the collection index."
msgstr ""
-"コレクションに含まれるエンティティクラスのインスタンスは、 コレクションイン"
+"コレクションに含まれるエンティティクラスのインスタンスは、コレクションイン"
"デックスの値として2度以上現れてはいけません。"
#. Tag: para
-#: collection_mapping.xml:566
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An association from <literal>Product</literal> to
<literal>Part</literal> "
"requires the existence of a foreign key column and possibly an index column "
@@ -865,29 +702,9 @@
"クスカラムが必要です。 <literal><one-to-many></literal>
タグは、これが"
"一対多関連であることを表しています。"
-#. Tag: programlisting
-#: collection_mapping.xml:579
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<one-to-many \n"
-" class=\"ClassName\"\n"
-" not-found=\"ignore|exception\"\n"
-" entity-name=\"EntityName\"\n"
-" node=\"element-name\"\n"
-" embed-xml=\"true|false\"\n"
-" />]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:582
-#, fuzzy, no-c-format
-msgid "<literal>class</literal> (required): the name of the associated
class."
-msgstr "<literal>class</literal> (必須): 関連クラスの名前。"
-
-#. Tag: para
-#: collection_mapping.xml:587
-#, fuzzy, no-c-format
-msgid ""
"<literal>not-found</literal> (optional - defaults to
<literal>exception</"
"literal>): specifies how cached identifiers that reference missing rows will
"
"be handled. <literal>ignore</literal> will treat a missing row as a
null "
@@ -895,34 +712,21 @@
msgstr ""
"<literal>not-found</literal> (オプション - デフォルトは
<literal>exception</"
"literal>): 参照先の行がないキャッシュされた識別子をどのように扱うかを指定し"
-"ます。 <literal>ignore</literal> を指定すると、行がないことを関連がないものと"
+"ます: <literal>ignore</literal> を指定すると、行がないことを関連がないものと"
"して扱います。"
#. Tag: para
-#: collection_mapping.xml:594
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
-"<literal>entity-name</literal> (optional): the entity name of the
associated "
-"class, as an alternative to <literal>class</literal>."
-msgstr ""
-"<literal>entity-name</literal> (オプション):
<literal>class</literal> の代"
-"替である関連クラスのエンティティ名。 <literal>class</literal> の代わりに指定"
-"する、関連クラスのエンティティ名。"
-
-#. Tag: para
-#: collection_mapping.xml:602
-#, fuzzy, no-c-format
-msgid ""
"The <literal><one-to-many></literal> element does not
need to declare "
"any columns. Nor is it necessary to specify the
<literal>table</literal> "
"name anywhere."
msgstr ""
"<literal><one-to-many></literal>
要素はカラムを宣言する必要がないことに"
-"注意してください。 同様に <literal>テーブル</literal> 名を指定する必要もあり"
-"ません。"
+"注意してください。同様に <literal>テーブル</literal> 名を指定する必要もありま"
+"せん。"
#. Tag: para
-#: collection_mapping.xml:609
#, fuzzy, no-c-format
msgid ""
"If the foreign key column of a
<literal><one-to-many></literal> "
@@ -935,79 +739,44 @@
"<emphasis>とても重要な注意:</emphasis> もし
<literal><one-to-many></"
"literal> 関連の外部キーカラムが <literal>NOT NULL</literal>と宣言された場"
"合、 <literal><key></literal> マッピングに
<literal>not-null=\"true\"</"
-"literal> を宣言するか、 コレクションマッピングに
<literal>inverse=\"true\"</"
+"literal> を宣言するか、コレクションマッピングに
<literal>inverse=\"true\"</"
"literal> を付けた上で、 <emphasis>双方向関連を使う</emphasis> 必要がありま"
-"す。 双方向関連についてはこの章の後のほうで説明します。"
+"す。双方向関連についてはこの章の後のほうで説明します。"
#. Tag: para
-#: collection_mapping.xml:619
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following example shows a map of <literal>Part</literal> entities
by "
"name, where <literal>partName</literal> is a persistent property of
"
"<literal>Part</literal>. Notice the use of a formula-based
index:"
msgstr ""
"次の例は、名称(<literal>Part</literal> の永続的なプロパティである "
-"<literal>partName</literal>) による <literal>Part</literal>
エンティティの"
-"mapを表しています。 formulaによるインデックスを使っていることに注意してくださ"
-"い。"
+"<literal>partName</literal>) による <literal>Part</literal>
エンティティの "
+"map を表しています。 formula によるインデックスを使っていることに注意してくだ"
+"さい。"
-#. Tag: programlisting
-#: collection_mapping.xml:625
-#, no-c-format
-msgid ""
-"<![CDATA[<map name=\"parts\"\n"
-" cascade=\"all\">\n"
-" <key column=\"productId\"
not-null=\"true\"/>\n"
-" <map-key formula=\"partName\"/>\n"
-" <one-to-many class=\"Part\"/>\n"
-"</map>]]>"
-msgstr ""
-
#. Tag: title
-#: collection_mapping.xml:631
#, no-c-format
msgid "Advanced collection mappings"
-msgstr "高度なコレクション・マッピング"
+msgstr "高度なコレクションマッピング"
#. Tag: title
-#: collection_mapping.xml:634
#, no-c-format
msgid "Sorted collections"
msgstr "ソートされたコレクション"
#. Tag: para
-#: collection_mapping.xml:636
#, no-c-format
msgid ""
"Hibernate supports collections implementing
<literal>java.util.SortedMap</"
"literal> and <literal>java.util.SortedSet</literal>. You must
specify a "
"comparator in the mapping file:"
msgstr ""
-"Hibernateは <literal>java.util.SortedMap</literal> と
<literal>java.util."
-"SortedSet</literal> を実装したコレクションをサポートしています。 開発者はマッ"
-"ピング定義ファイルにコンパレータを指定しなければなりません。"
+"Hibernate は <literal>java.util.SortedMap</literal> と
<literal>java.util."
+"SortedSet</literal> を実装したコレクションをサポートしています。開発者はマッ"
+"ピング定義ファイルにコンパレータを指定しなければなりません: "
-#. Tag: programlisting
-#: collection_mapping.xml:641
-#, no-c-format
-msgid ""
-"<![CDATA[<set name=\"aliases\" \n"
-" table=\"person_aliases\" \n"
-" sort=\"natural\">\n"
-" <key column=\"person\"/>\n"
-" <element column=\"name\" type=\"string\"/>\n"
-"</set>\n"
-"\n"
-"<map name=\"holidays\"
sort=\"my.custom.HolidayComparator\">\n"
-" <key column=\"year_id\"/>\n"
-" <map-key column=\"hol_name\"
type=\"string\"/>\n"
-" <element column=\"hol_date\" type=\"date\"/>\n"
-"</map>]]>"
-msgstr ""
-
#. Tag: para
-#: collection_mapping.xml:643
#, no-c-format
msgid ""
"Allowed values of the <literal>sort</literal> attribute are "
@@ -1015,11 +784,10 @@
"class implementing <literal>java.util.Comparator</literal>."
msgstr ""
"<literal>sort</literal> 属性に設定できる値は
<literal>unsorted</literal> と "
-"<literal>natural</literal>
および、<literal>java.util.Comparator</literal> を"
-"実装したクラスの名前です。"
+"<literal>natural</literal> および、
<literal>java.util.Comparator</literal> "
+"を実装したクラスの名前です。"
#. Tag: para
-#: collection_mapping.xml:649
#, no-c-format
msgid ""
"Sorted collections actually behave like
<literal>java.util.TreeSet</literal> "
@@ -1029,8 +797,7 @@
"<literal>java.util.TreeMap</literal> のように振舞います。"
#. Tag: para
-#: collection_mapping.xml:654
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you want the database itself to order the collection elements, use the "
"<literal>order-by</literal> attribute of
<literal>set</literal>, "
@@ -1041,247 +808,142 @@
msgstr ""
"もしデータベース自身にコレクションの要素を並べさせたいなら、 <literal>set</"
"literal> や <literal>bag</literal>、<literal>map</literal>
の <literal>order-"
-"by</literal> 属性を使います。 この解決法はJDK1.4、もしくはそれ以上のバージョ"
+"by</literal> 属性を使います。この解決法は JDK1.4 、もしくはそれ以上のバージョ"
"ンで利用可能です (<literal>LinkedHashSet</literal> または "
-"<literal>LinkedHashMap</literal>を使って実装されています)。 整列はメモリ上で"
-"はなく、SQLクエリ内で実行されます。"
+"<literal>LinkedHashMap</literal>を使って実装されています)。整列はメモリ上で"
+"はなく、 SQL クエリ内で実行されます。"
-#. Tag: programlisting
-#: collection_mapping.xml:663
-#, no-c-format
-msgid ""
-"<![CDATA[<set name=\"aliases\" table=\"person_aliases\"
order-by=\"lower"
-"(name) asc\">\n"
-" <key column=\"person\"/>\n"
-" <element column=\"name\" type=\"string\"/>\n"
-"</set>\n"
-"\n"
-"<map name=\"holidays\" order-by=\"hol_date,
hol_name\">\n"
-" <key column=\"year_id\"/>\n"
-" <map-key column=\"hol_name\"
type=\"string\"/>\n"
-" <element column=\"hol_date type=\"date\"/>\n"
-"</map>]]>"
-msgstr ""
-
#. Tag: title
-#: collection_mapping.xml:666
#, no-c-format
msgid "Note"
-msgstr ""
+msgstr "注記"
#. Tag: para
-#: collection_mapping.xml:667
#, fuzzy, no-c-format
msgid ""
"The value of the <literal>order-by</literal> attribute is an SQL
ordering, "
"not an HQL ordering."
msgstr ""
-"<literal>order-by</literal> 属性の値がSQL命令であって、HQL命令ではないことに"
-"注意してください!"
+"<literal>order-by</literal> 属性の値が SQL 命令であって、 HQL 命令ではないこ"
+"とに注意してください。"
#. Tag: para
-#: collection_mapping.xml:673
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Associations can even be sorted by arbitrary criteria at runtime using a "
"collection <literal>filter()</literal>:"
msgstr ""
-"関連は、コレクションの <literal>filter()</literal> を使うことで、 実行時に任"
-"意のcriteriaによってソートすることも可能です。"
+"関連は、コレクションの <literal>filter()</literal> を使うことで、実行時に任意"
+"の criteria によってソートすることも可能です。"
-#. Tag: programlisting
-#: collection_mapping.xml:678
-#, no-c-format
-msgid ""
-"<![CDATA[sortedUsers = s.createFilter( group.getUsers(), \"order by
this.name"
-"\" ).list();]]>"
-msgstr ""
-
#. Tag: title
-#: collection_mapping.xml:683
#, no-c-format
msgid "Bidirectional associations"
msgstr "双方向関連"
#. Tag: para
-#: collection_mapping.xml:685
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <emphasis>bidirectional association</emphasis> allows navigation from
both "
"\"ends\" of the association. Two kinds of bidirectional association are
"
"supported:"
msgstr ""
"<emphasis>双方向関連</emphasis> は関連のどちら「側」からでもナビゲーションで"
-"きます。 2種類の双方向関連がサポートされています。 <placeholder-1/>"
+"きます。2種類の双方向関連がサポートされています:"
#. Tag: term
-#: collection_mapping.xml:692
#, no-c-format
msgid "one-to-many"
msgstr "one-to-many"
#. Tag: para
-#: collection_mapping.xml:694
-#, fuzzy, no-c-format
+#, no-c-format
msgid "set or bag valued at one end and single-valued at the other"
-msgstr "片側がsetかbag、もう片方が単一値です。"
+msgstr "片側が set か bag 、もう片方が単一値です。"
#. Tag: term
-#: collection_mapping.xml:700
#, no-c-format
msgid "many-to-many"
msgstr "many-to-many"
#. Tag: para
-#: collection_mapping.xml:702
#, no-c-format
msgid "set or bag valued at both ends"
-msgstr "両側がsetかbagです。"
+msgstr "両側が set か bag です。"
#. Tag: para
-#: collection_mapping.xml:711
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can specify a bidirectional many-to-many association by mapping two
many-"
"to-many associations to the same database table and declaring one end as "
"<emphasis>inverse</emphasis>. You cannot select an indexed
collection."
msgstr ""
-"2つの多対多関連で同じデータベーステーブルをマッピングし、 片方を "
-"<emphasis>inverse</emphasis> として宣言することで、 双方向の多対多関連を指定"
-"することが出来ます (どちらをinverseに選んだとしても、そちら側にはインデック"
+"2つの多対多関連で同じデータベーステーブルをマッピングし、片方を "
+"<emphasis>inverse</emphasis> として宣言することで、双方向の多対多関連を指定す"
+"ることが出来ます (どちらを inverse に選んだとしても、そちら側にはインデック"
"ス付きのコレクションは使えません)。"
#. Tag: para
-#: collection_mapping.xml:718
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Here is an example of a bidirectional many-to-many association that "
"illustrates how each category can have many items and each item can be in "
"many categories:"
msgstr ""
-"次に双方向の多対多関連の例を示します。 各カテゴリは多数のアイテムを持つことが"
+"次に双方向の多対多関連の例を示します。各カテゴリは多数のアイテムを持つことが"
"でき、各アイテムは多くのカテゴリに属することが出来ます。"
-#. Tag: programlisting
-#: collection_mapping.xml:723
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Category\">\n"
-" <id name=\"id\" column=\"CATEGORY_ID\"/>\n"
-" ...\n"
-" <bag name=\"items\" table=\"CATEGORY_ITEM\">\n"
-" <key column=\"CATEGORY_ID\"/>\n"
-" <many-to-many class=\"Item\"
column=\"ITEM_ID\"/>\n"
-" </bag>\n"
-"</class>\n"
-"\n"
-"<class name=\"Item\">\n"
-" <id name=\"id\" column=\"ITEM_ID\"/>\n"
-" ...\n"
-"\n"
-" <!-- inverse end -->\n"
-" <bag name=\"categories\" table=\"CATEGORY_ITEM\"
inverse=\"true\">\n"
-" <key column=\"ITEM_ID\"/>\n"
-" <many-to-many class=\"Category\"
column=\"CATEGORY_ID\"/>\n"
-" </bag>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:725
-#, fuzzy, no-c-format
-msgid ""
"Changes made only to the inverse end of the association are
<emphasis>not</"
"emphasis> persisted. This means that Hibernate has two representations in
"
"memory for every bidirectional association: one link from A to B and another
"
"link from B to A. This is easier to understand if you think about the Java "
"object model and how a many-to-many relationship in Javais created:"
msgstr ""
-"関連のinverse側にのみ行われた変更は永続化 <emphasis>されません</emphasis>。 "
-"これは、Hibernateは全ての双方向関連について、メモリ上に2つの表現を持っている"
-"という意味です。 つまり一つはAからBへのリンクで、もう一つはBからAへのリンクと"
-"いうことです。 Javaのオブジェクトモデルについて考え、Javaで双方向関係をどう"
-"やって作るかを考えれば、 これは理解しやすいです。下記に、Javaでの双方向関連を"
-"示します。"
+"関連の inverse 側にのみ行われた変更は永続化 <emphasis>されません</emphasis>。"
+"これは、 Hibernate は全ての双方向関連について、メモリ上に2つの表現を持ってい"
+"るという意味です。つまり一つは A から B へのリンクで、もう一つは B から A へ"
+"のリンクということです。 Java のオブジェクトモデルについて考え、 Java で双方"
+"向関係をどうやって作るかを考えれば、これは理解しやすいです。下記に、 Java で"
+"の双方向関連を示します。"
-#. Tag: programlisting
-#: collection_mapping.xml:733
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"category.getItems().add(item); // The category now \"knows\"
about "
-"the relationship\n"
-"item.getCategories().add(category); // The item now \"knows\" about
the "
-"relationship\n"
-"\n"
-"session.persist(item); // The relationship won't be "
-"saved!\n"
-"session.persist(category); // The relationship will be
saved]]>"
-msgstr ""
-
#. Tag: para
-#: collection_mapping.xml:735
#, no-c-format
msgid ""
"The non-inverse side is used to save the in-memory representation to the "
"database."
msgstr ""
-"関連のinverseではない側は、メモリ上の表現をデータベースに保存するのに使われま"
-"す。"
+"関連の inverse ではない側は、メモリ上の表現をデータベースに保存するのに使われ"
+"ます。"
#. Tag: para
-#: collection_mapping.xml:739
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can define a bidirectional one-to-many association by mapping a one-to-"
"many association to the same table column(s) as a many-to-one association "
"and declaring the many-valued end
<literal>inverse=\"true\"</literal>."
msgstr ""
-"双方向の一対多関連を定義するには、 一対多関連を多対一関連と同じテーブルのカラ"
-"ムにマッピングし、 多側に <literal>inverse=\"true\"</literal>
と宣言します。"
+"双方向の一対多関連を定義するには、一対多関連を多対一関連と同じテーブルのカラ"
+"ムにマッピングし、多側に <literal>inverse=\"true\"</literal>
と宣言します。"
-#. Tag: programlisting
-#: collection_mapping.xml:745
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Parent\">\n"
-" <id name=\"id\" column=\"parent_id\"/>\n"
-" ....\n"
-" <set name=\"children\" inverse=\"true\">\n"
-" <key column=\"parent_id\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-" </set>\n"
-"</class>\n"
-"\n"
-"<class name=\"Child\">\n"
-" <id name=\"id\" column=\"child_id\"/>\n"
-" ....\n"
-" <many-to-one name=\"parent\" \n"
-" class=\"Parent\" \n"
-" column=\"parent_id\"\n"
-" not-null=\"true\"/>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:747
-#, fuzzy, no-c-format
-msgid ""
"Mapping one end of an association with
<literal>inverse=\"true\"</literal> "
"does not affect the operation of cascades as these are orthogonal concepts."
msgstr ""
-"関連の片側に <literal>inverse=\"true\"</literal> を設定しても、
カスケード操"
-"作に影響を与えません。これらは直交した概念です!"
+"関連の片側に <literal>inverse=\"true\"</literal>
を設定しても、カスケード操作"
+"に影響を与えません。これらは直交した概念です。"
#. Tag: title
-#: collection_mapping.xml:755
#, no-c-format
msgid "Bidirectional associations with indexed collections"
msgstr "インデックス付きコレクションと双方向関連"
#. Tag: para
-#: collection_mapping.xml:756
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A bidirectional association where one end is represented as a
<literal><"
"list></literal> or <literal><map></literal>,
requires special "
@@ -1290,155 +952,72 @@
"collection mapping:"
msgstr ""
"片側が <literal><list></literal> や
<literal><map></literal> であ"
-"る 双方向関連は、特によく考える必要があります。 インデックスカラムにマップさ"
-"れる子クラスのプロパティがある場合は、問題ないです。 コレクションのマッピング"
-"で <literal>inverse=\"true\"</literal> を使い続けられます。"
+"る双方向関連は、特によく考える必要があります。インデックスカラムにマップされ"
+"る子クラスのプロパティがある場合は、問題ないです。コレクションのマッピングで "
+"<literal>inverse=\"true\"</literal> を使い続けられます。"
-#. Tag: programlisting
-#: collection_mapping.xml:763
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Parent\">\n"
-" <id name=\"id\" column=\"parent_id\"/>\n"
-" ....\n"
-" <map name=\"children\" inverse=\"true\">\n"
-" <key column=\"parent_id\"/>\n"
-" <map-key column=\"name\" \n"
-" type=\"string\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-" </map>\n"
-"</class>\n"
-"\n"
-"<class name=\"Child\">\n"
-" <id name=\"id\" column=\"child_id\"/>\n"
-" ....\n"
-" <property name=\"name\" \n"
-" not-null=\"true\"/>\n"
-" <many-to-one name=\"parent\" \n"
-" class=\"Parent\" \n"
-" column=\"parent_id\"\n"
-" not-null=\"true\"/>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:765
-#, fuzzy, no-c-format
-msgid ""
"If there is no such property on the child class, the association cannot be "
"considered truly bidirectional. That is, there is information available at "
"one end of the association that is not available at the other end. In this "
"case, you cannot map the collection
<literal>inverse=\"true\"</literal>. "
"Instead, you could use the following mapping:"
msgstr ""
-"しかし、子クラスにそのようなプロパティがない場合は、 関連を真に双方向であると"
+"しかし、子クラスにそのようなプロパティがない場合は、関連を真に双方向であると"
"考えることができません (関連の片側に利用できる情報がありますが、もう一方には"
-"ありません)。 この場合は、コレクションに <literal>inverse=\"true\"</"
-"literal> をマッピングできません。 代わりに、次のようなマッピングが使えます。"
+"ありません)。この場合は、コレクションに <literal>inverse=\"true\"</literal>
"
+"をマッピングできません。代わりに、次のようなマッピングが使えます:"
-#. Tag: programlisting
-#: collection_mapping.xml:772
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Parent\">\n"
-" <id name=\"id\" column=\"parent_id\"/>\n"
-" ....\n"
-" <map name=\"children\">\n"
-" <key column=\"parent_id\"\n"
-" not-null=\"true\"/>\n"
-" <map-key column=\"name\" \n"
-" type=\"string\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-" </map>\n"
-"</class>\n"
-"\n"
-"<class name=\"Child\">\n"
-" <id name=\"id\" column=\"child_id\"/>\n"
-" ....\n"
-" <many-to-one name=\"parent\" \n"
-" class=\"Parent\" \n"
-" column=\"parent_id\"\n"
-" insert=\"false\"\n"
-" update=\"false\"\n"
-" not-null=\"true\"/>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:774
-#, fuzzy, no-c-format
-msgid ""
"Note that in this mapping, the collection-valued end of the association is "
-"responsible for updates to the foreign key."
+"responsible for updates to the foreign key. <!-- TODO: Does this really "
+"result in some unnecessary update statements? -->"
msgstr ""
-"注意: このマッピングでは、関連のコレクション値の側は、 外部キーをアップデー"
-"トする責任があります。"
+"注意: このマッピングでは、関連のコレクション値の側は、外部キーをアップデート"
+"する責任があります。 <!-- TODO: これは本当にいくつかの不必要なアップデートス"
+"テートメントをもたらすのでしょうか? -->"
#. Tag: title
-#: collection_mapping.xml:782
#, no-c-format
msgid "Ternary associations"
msgstr "3項関連"
#. Tag: para
-#: collection_mapping.xml:784
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There are three possible approaches to mapping a ternary association. One "
"approach is to use a <literal>Map</literal> with an association as its
index:"
msgstr ""
-"3項関連のマッピングには3つのアプローチがあります。 1つ目は関連をインデックス"
-"として <literal>Map</literal> を使用するアプローチです。"
+"3項関連のマッピングには3つのアプローチがあります。1つ目は関連をインデックスと"
+"して <literal>Map</literal> を使用するアプローチです:"
-#. Tag: programlisting
-#: collection_mapping.xml:789
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<map name=\"contracts\">\n"
-" <key column=\"employer_id\"
not-null=\"true\"/>\n"
-" <map-key-many-to-many column=\"employee_id\"
class=\"Employee\"/>\n"
-" <one-to-many class=\"Contract\"/>\n"
-"</map>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: collection_mapping.xml:791
-#, no-c-format
-msgid ""
-"<![CDATA[<map name=\"connections\">\n"
-" <key column=\"incoming_node_id\"/>\n"
-" <map-key-many-to-many column=\"outgoing_node_id\"
class=\"Node\"/>\n"
-" <many-to-many column=\"connection_id\"
class=\"Connection\"/>\n"
-"</map>]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:793
-#, fuzzy, no-c-format
-msgid ""
"A second approach is to remodel the association as an entity class. This is "
"the most common approach."
msgstr ""
-"2つ目は単純に関連をエンティティ・クラスとしてモデルを作り直すアプローチで、 頻"
-"繁に使われます。"
+"2つ目は単純に関連をエンティティクラスとしてモデルを作り直すアプローチで、頻繁"
+"に使われます。"
#. Tag: para
-#: collection_mapping.xml:798
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A final alternative is to use composite elements, which will be discussed "
"later."
msgstr ""
-"最後はcomposite要素を使うアプローチです。これに関する議論は後ほど行います。"
+"最後は composite 要素を使うアプローチです。これに関する議論は後ほど行います。"
-#. Tag: literal
-#: collection_mapping.xml:805
+#. Tag: title
#, no-c-format
-msgid "Using an <idbag>"
-msgstr "<literal><idbag></literal>の使用"
+msgid "<literal>Using an <idbag></literal>"
+msgstr "<idbag>の使用"
#. Tag: para
-#: collection_mapping.xml:807
#, fuzzy, no-c-format
msgid ""
"The majority of the many-to-many associations and collections of values "
@@ -1451,476 +1030,961 @@
"values to a table with a surrogate key."
msgstr ""
"複合キーは悪いもので、エンティティは人工の識別子(代理キー)を持つべきであると"
-"いう考え方からは、 多対多関連と値のコレクションを複合キーを用いたテーブルへ"
-"マッピングするのは少し奇妙に感じるかもしれません! 確かにこの考え方には議論の"
-"余地があります。 純粋な関連テーブルは代理キーを使っても利益を得られないように"
+"いう考え方からは、多対多関連と値のコレクションを複合キーを用いたテーブルへ"
+"マッピングするのは少し奇妙に感じるかもしれません。確かにこの考え方には議論の"
+"余地があります。純粋な関連テーブルは代理キーを使っても利益を得られないように"
"思えるからです (合成値のコレクションは利益がある <emphasis>かも</emphasis> "
-"しれませんが)。 とはいえ、Hibernateは代理キーを持つテーブルへ多対多関連と値"
-"のコレクションを マッピングする機能も備えています。"
+"しれませんが)。とはいえ、 Hibernate は代理キーを持つテーブルへ多対多関連と値"
+"のコレクションをマッピングする機能も備えています。"
#. Tag: para
-#: collection_mapping.xml:817
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal><idbag></literal> element lets you map a
<literal>List</"
"literal> (or <literal>Collection</literal>) with bag semantics. For
example:"
msgstr ""
-"bagのセマンティックスを持った <literal>List</literal>(または "
+"bag のセマンティックスを持った <literal>List</literal>(または "
"<literal>Collection</literal>)を
<literal><idbag></literal> 要素にマッ"
"ピングできます。"
-#. Tag: programlisting
-#: collection_mapping.xml:822
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<idbag name=\"lovers\"
table=\"LOVERS\">\n"
-" <collection-id column=\"ID\" type=\"long\">\n"
-" <generator class=\"sequence\"/>\n"
-" </collection-id>\n"
-" <key column=\"PERSON1\"/>\n"
-" <many-to-many column=\"PERSON2\" class=\"Person\"
fetch=\"join\"/>\n"
-"</idbag>]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:824
-#, fuzzy, no-c-format
-msgid ""
"An <literal><idbag></literal> has a synthetic id
generator, just like "
"an entity class. A different surrogate key is assigned to each collection "
"row. Hibernate does not, however, provide any mechanism for discovering the "
"surrogate key value of a particular row."
msgstr ""
-"ご存知のように <literal><idbag></literal> はエンティティ・クラスのよう"
-"に 人工的なidジェネレータを持っています! 異なる代理キーをそれぞれのコレク"
-"ションの列に割り当てます。 しかしながら、Hibernateはある行の代理キーの値を見"
-"つけ出す機構を持っていません。"
+"ご存知のように <literal><idbag></literal> はエンティティクラスのように"
+"人工的な id ジェネレータを持っています。異なる代理キーをそれぞれのコレクショ"
+"ンの列に割り当てます。しかし、 Hibernate はある行の代理キーの値を見つけ出す機"
+"構を持っていません。"
#. Tag: para
-#: collection_mapping.xml:831
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The update performance of an <literal><idbag></literal>
supersedes a "
"regular <literal><bag></literal>. Hibernate can locate
individual rows "
"efficiently and update or delete them individually, similar to a list, map "
"or set."
msgstr ""
-"<literal><idbag></literal> を更新するパフォーマンスは 通常の "
-"<literal><bag></literal> よりも良いことに注目してください!
Hibernateは"
-"個々の行を効果的に見つけることができ、 listやmap、setのように個別にその行を更"
-"新、削除できます。"
+"<literal><idbag></literal> を更新するパフォーマンスは通常の "
+"<literal><bag></literal> よりも良いことに注目してください。 Hibernate
"
+"は個々の行を効果的に見つけることができ、 list や map 、 set のように個別にそ"
+"の行を更新、削除できます。"
#. Tag: para
-#: collection_mapping.xml:837
#, no-c-format
msgid ""
"In the current implementation, the <literal>native</literal> identifier
"
"generation strategy is not supported for
<literal><idbag></literal> "
"collection identifiers."
msgstr ""
-"現在の実装では、<literal>native</literal> というid生成戦略を
<literal><"
+"現在の実装では、 <literal>native</literal> という id 生成戦略を
<literal><"
"idbag></literal> コレクションの識別子に対して使えません。"
#. Tag: title
-#: collection_mapping.xml:861
#, no-c-format
msgid "Collection examples"
msgstr "コレクションの例"
#. Tag: para
-#: collection_mapping.xml:863
#, fuzzy, no-c-format
msgid "This section covers collection examples."
msgstr "コレクションの例"
#. Tag: para
-#: collection_mapping.xml:867
-#, no-c-format
+#, fuzzy, no-c-format
msgid ""
"The following class has a collection of <literal>Child</literal>
instances:"
msgstr ""
+"以下のコードを使えば、新しい <literal>Child</literal> を追加することができま"
+"す。"
-#. Tag: programlisting
-#: collection_mapping.xml:871
-#, no-c-format
-msgid ""
-"<![CDATA[package eg;\n"
-"import java.util.Set;\n"
-"\n"
-"public class Parent {\n"
-" private long id;\n"
-" private Set children;\n"
-"\n"
-" public long getId() { return id; }\n"
-" private void setId(long id) { this.id=id; }\n"
-"\n"
-" private Set getChildren() { return children; }\n"
-" private void setChildren(Set children) { this.children=children; }\n"
-"\n"
-" ....\n"
-" ....\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: collection_mapping.xml:873
#, fuzzy, no-c-format
msgid ""
"If each child has, at most, one parent, the most natural mapping is a
one-to-"
"many association:"
msgstr ""
"このクラスは <literal>Child</literal> インスタンスのコレクションを持っていま"
-"す。 もし各々のchildが最大でも一つのparentを持っているならば、最も自然なマッ"
-"ピングは一対多関連です。"
+"す。もし各々の child が最大でも一つの parent を持っているならば、最も自然な"
+"マッピングは一対多関連です。"
-#. Tag: programlisting
-#: collection_mapping.xml:879
-#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-"\n"
-" <class name=\"Parent\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-" <set name=\"children\">\n"
-" <key column=\"parent_id\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-" </set>\n"
-" </class>\n"
-"\n"
-" <class name=\"Child\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-" <property name=\"name\"/>\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
#. Tag: para
-#: collection_mapping.xml:881
#, no-c-format
msgid "This maps to the following table definitions:"
msgstr "これは以下のテーブル定義にマッピングします。"
-#. Tag: programlisting
-#: collection_mapping.xml:885
-#, no-c-format
-msgid ""
-"<![CDATA[create table parent ( id bigint not null primary key )\n"
-"create table child ( id bigint not null primary key, name varchar(255), "
-"parent_id bigint )\n"
-"alter table child add constraint childfk0 (parent_id) references
parent]]>"
-msgstr ""
-
#. Tag: para
-#: collection_mapping.xml:887
#, no-c-format
msgid ""
"If the parent is <emphasis>required</emphasis>, use a bidirectional
one-to-"
"many association:"
msgstr ""
-"もしparentが <emphasis>要求</emphasis> されるなら、双方向の一対多関連を使用し"
-"てください。"
+"もし parent が <emphasis>要求</emphasis> されるなら、双方向の一対多関連を使用"
+"してください:"
-#. Tag: programlisting
-#: collection_mapping.xml:892
-#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-"\n"
-" <class name=\"Parent\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-" <set name=\"children\" inverse=\"true\">\n"
-" <key column=\"parent_id\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-" </set>\n"
-" </class>\n"
-"\n"
-" <class name=\"Child\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-" <property name=\"name\"/>\n"
-" <many-to-one name=\"parent\" class=\"Parent\"
column=\"parent_id\" "
-"not-null=\"true\"/>\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
#. Tag: para
-#: collection_mapping.xml:894
#, no-c-format
msgid "Notice the <literal>NOT NULL</literal> constraint:"
msgstr "<literal>NOT NULL</literal> 制約に注意してください。"
-#. Tag: programlisting
-#: collection_mapping.xml:898
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[create table parent ( id bigint not null primary key )\n"
-"create table child ( id bigint not null\n"
-" primary key,\n"
-" name varchar(255),\n"
-" parent_id bigint not null )\n"
-"alter table child add constraint childfk0 (parent_id) references
parent]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:900
-#, fuzzy, no-c-format
-msgid ""
"Alternatively, if this association must be unidirectional you can declare "
"the <literal>NOT NULL</literal> constraint on the
<literal><key></"
"literal> mapping:"
msgstr ""
"あるいは、もしこの関連は単方向であるべきと強く主張するのであれば、 "
-"<literal><key></literal> に <literal>NOT
NULL</literal> 制約を宣言でき"
-"ます。"
+"<literal><key></literal> マッピングに <literal>NOT
NULL</literal> 制約"
+"を宣言できます:"
-#. Tag: programlisting
-#: collection_mapping.xml:906
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-"\n"
-" <class name=\"Parent\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-" <set name=\"children\">\n"
-" <key column=\"parent_id\"
not-null=\"true\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-" </set>\n"
-" </class>\n"
-"\n"
-" <class name=\"Child\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-" <property name=\"name\"/>\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:908
-#, fuzzy, no-c-format
-msgid ""
"On the other hand, if a child has multiple parents, a many-to-many "
"association is appropriate:"
-msgstr "一方で、もしchildが複数のparentを持てるならば、多対多関連が妥当です。"
-
-#. Tag: programlisting
-#: collection_mapping.xml:913
-#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-"\n"
-" <class name=\"Parent\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-" <set name=\"children\"
table=\"childset\">\n"
-" <key column=\"parent_id\"/>\n"
-" <many-to-many class=\"Child\"
column=\"child_id\"/>\n"
-" </set>\n"
-" </class>\n"
-"\n"
-" <class name=\"Child\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-" <property name=\"name\"/>\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
msgstr ""
+"一方で、もし child が複数の parent を持てるならば、多対多関連が妥当です:"
#. Tag: para
-#: collection_mapping.xml:915
#, no-c-format
msgid "Table definitions:"
-msgstr "テーブル定義は以下のようになります。"
+msgstr "テーブル定義は以下のようになります:"
-#. Tag: programlisting
-#: collection_mapping.xml:919
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[create table parent ( id bigint not null primary key )\n"
-"create table child ( id bigint not null primary key, name varchar(255) )\n"
-"create table childset ( parent_id bigint not null,\n"
-" child_id bigint not null,\n"
-" primary key ( parent_id, child_id ) )\n"
-"alter table childset add constraint childsetfk0 (parent_id) references "
-"parent\n"
-"alter table childset add constraint childsetfk1 (child_id) references
child]]"
-">"
-msgstr ""
-
-#. Tag: para
-#: collection_mapping.xml:921
-#, fuzzy, no-c-format
-msgid ""
"For more examples and a complete explanation of a parent/child relationship "
-"mapping, see <xref linkend=\"example-parentchild\"/> for more
information."
+"mapping, see <xref linkend=\"example-parentchild\" /> for more
information."
msgstr ""
-"parent/child関係のマッピングについてのより多くの例や完全な手順が必要であれ"
+"parent/child 関係のマッピングについてのより多くの例や完全な手順が必要であれ"
"ば、 <xref linkend=\"example-parentchild\"/> をご覧ください。"
#. Tag: para
-#: collection_mapping.xml:926
#, fuzzy, no-c-format
msgid "Even more complex association mappings are covered in the next
chapter."
msgstr "また、さらに特殊な関連マッピングも可能です。次の章で詳しく述べます。"
-#~ msgid "Collection Mapping"
-#~ msgstr "コレクションのマッピング"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[public class Product {\n"
+#~ " private String serialNumber;\n"
+#~ " private Set parts = new HashSet();\n"
+#~ " \n"
+#~ " public Set getParts() { return parts; }\n"
+#~ " void setParts(Set parts) { this.parts = parts; }\n"
+#~ " public String getSerialNumber() { return serialNumber; }\n"
+#~ " void setSerialNumber(String sn) { serialNumber = sn; }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "public class Product {\n"
+#~ " private String serialNumber;\n"
+#~ " private Set parts = new HashSet();\n"
+#~ " \n"
+#~ " public Set getParts() { return parts; }\n"
+#~ " void setParts(Set parts) { this.parts = parts; }\n"
+#~ " public String getSerialNumber() { return serialNumber; }\n"
+#~ " void setSerialNumber(String sn) { serialNumber = sn; }\n"
+#~ "}"
-#~ msgid "Some examples, first, a set of strings:"
-#~ msgstr "以下にいくつか例を示します。 まずはStringのsetに関しての例です。"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Cat cat = new DomesticCat();\n"
+#~ "Cat kitten = new DomesticCat();\n"
+#~ "....\n"
+#~ "Set kittens = new HashSet();\n"
+#~ "kittens.add(kitten);\n"
+#~ "cat.setKittens(kittens);\n"
+#~ "session.persist(cat);\n"
+#~ "kittens = cat.getKittens(); // Okay, kittens collection is a Set\n"
+#~ "(HashSet) cat.getKittens(); // Error!]]>"
+#~ msgstr ""
+#~ "Cat cat = new DomesticCat();\n"
+#~ "Cat kitten = new DomesticCat();\n"
+#~ "....\n"
+#~ "Set kittens = new HashSet();\n"
+#~ "kittens.add(kitten);\n"
+#~ "cat.setKittens(kittens);\n"
+#~ "session.persist(cat);\n"
+#~ "kittens = cat.getKittens(); // Okay, kittens collection is a Set\n"
+#~ "(HashSet) cat.getKittens(); // Error!"
+#, fuzzy
#~ msgid ""
-#~ "The previous sections are pretty confusing. So lets look at an example. "
-#~ "This class:"
-#~ msgstr "これまでの節の説明では理解しにくいので、以下の例を見てください。"
+#~ "<![CDATA[<class name=\"Product\">\n"
+#~ " <id name=\"serialNumber\"
column=\"productSerialNumber\"/>\n"
+#~ " <set name=\"parts\">\n"
+#~ " <key column=\"productSerialNumber\"
not-null=\"true\"/>\n"
+#~ " <one-to-many class=\"Part\"/>\n"
+#~ " </set>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Product\">\n"
+#~ " <id name=\"serialNumber\"
column=\"productSerialNumber\"/>\n"
+#~ " <set name=\"parts\">\n"
+#~ " <key column=\"productSerialNumber\"
not-null=\"true\"/>\n"
+#~ " <one-to-many class=\"Part\"/>\n"
+#~ " </set>\n"
+#~ "</class>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>column_name</literal> (required): The name of the column
holding "
-#~ "the collection index values."
+#~ "<![CDATA[<map\n"
+#~ " name=\"propertyName\"\n"
+#~ " table=\"table_name\"\n"
+#~ " schema=\"schema_name\"\n"
+#~ " lazy=\"true|extra|false\"\n"
+#~ " inverse=\"true|false\"\n"
+#~ "
cascade=\"all|none|save-update|delete|all-delete-orphan|delete-orphan"
+#~ "\"\n"
+#~ " sort=\"unsorted|natural|comparatorClass\"\n"
+#~ " order-by=\"column_name asc|desc\"\n"
+#~ " where=\"arbitrary sql where condition\"\n"
+#~ " fetch=\"join|select|subselect\"\n"
+#~ " batch-size=\"N\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ " mutable=\"true|false\"\n"
+#~ " node=\"element-name|.\"\n"
+#~ " embed-xml=\"true|false\"\n"
+#~ ">\n"
+#~ "\n"
+#~ " <key .... />\n"
+#~ " <map-key .... />\n"
+#~ " <element .... />\n"
+#~ "</map>]]>"
#~ msgstr ""
-#~ "<literal>column_name</literal>(必須):コレクションインデックスの値を保持"
-#~ "するカラムの名前。"
+#~ "<map\n"
+#~ " name=\"propertyName\"\n"
+#~ " table=\"table_name\"\n"
+#~ " schema=\"schema_name\"\n"
+#~ " lazy=\"true|extra|false\"\n"
+#~ " inverse=\"true|false\"\n"
+#~ "
cascade=\"all|none|save-update|delete|all-delete-orphan|delete-orphan"
+#~ "\"\n"
+#~ " sort=\"unsorted|natural|comparatorClass\"\n"
+#~ " order-by=\"column_name asc|desc\"\n"
+#~ " where=\"arbitrary sql where condition\"\n"
+#~ " fetch=\"join|select|subselect\"\n"
+#~ " batch-size=\"N\"\n"
+#~ " access=\"field|property|ClassName\"\n"
+#~ " optimistic-lock=\"true|false\"\n"
+#~ " mutable=\"true|false\"\n"
+#~ " node=\"element-name|.\"\n"
+#~ " embed-xml=\"true|false\"\n"
+#~ ">\n"
+#~ "\n"
+#~ " <key .... />\n"
+#~ " <map-key .... />\n"
+#~ " <element .... />\n"
+#~ "</map>"
+#, fuzzy
+#~ msgid "<![CDATA[<key column=\"productSerialNumber\"
not-null=\"true\"/>]]>"
+#~ msgstr "<key column=\"productSerialNumber\"
not-null=\"true\"/>"
+
+#, fuzzy
#~ msgid ""
-#~ "<literal>base</literal> (optional, defaults to
<literal>0</literal>): The "
-#~ "value of the index column that corresponds to the first element of the "
-#~ "list or array."
+#~ "<![CDATA[<key column=\"productSerialNumber\"
on-delete=\"cascade\"/>]]>"
+#~ msgstr "<key column=\"productSerialNumber\"
on-delete=\"cascade\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set name=\"names\"
table=\"person_names\">\n"
+#~ " <key column=\"person_id\"/>\n"
+#~ " <element column=\"person_name\"
type=\"string\"/>\n"
+#~ "</set>]]>"
#~ msgstr ""
-#~ "<literal>base</literal>(オプション、デフォルトは
<literal>0</literal>): "
-#~ "リストもしくは配列の最初の要素に該当するインデックスカラムの値。"
+#~ "<set name=\"names\"
table=\"person_names\">\n"
+#~ " <key column=\"person_id\"/>\n"
+#~ " <element column=\"person_name\"
type=\"string\"/>\n"
+#~ "</set>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>column</literal> (optional): The name of the column holding
the "
-#~ "collection index values."
+#~ "<![CDATA[<bag name=\"sizes\" \n"
+#~ " table=\"item_sizes\" \n"
+#~ " order-by=\"size asc\">\n"
+#~ " <key column=\"item_id\"/>\n"
+#~ " <element column=\"size\"
type=\"integer\"/>\n"
+#~ "</bag>]]>"
#~ msgstr ""
-#~ "<literal>column</literal>(オプション): コレクションインデックスの値を保"
-#~ "持するカラムの名前。"
+#~ "<bag name=\"sizes\" \n"
+#~ " table=\"item_sizes\" \n"
+#~ " order-by=\"size asc\">\n"
+#~ " <key column=\"item_id\"/>\n"
+#~ " <element column=\"size\"
type=\"integer\"/>\n"
+#~ "</bag>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>formula</literal> (optional): A SQL formula used to
evaluate the "
-#~ "key of the map."
+#~ "<![CDATA[<array name=\"addresses\" \n"
+#~ " table=\"PersonAddress\" \n"
+#~ " cascade=\"persist\">\n"
+#~ " <key column=\"personId\"/>\n"
+#~ " <list-index column=\"sortOrder\"/>\n"
+#~ " <many-to-many column=\"addressId\"
class=\"Address\"/>\n"
+#~ "</array>]]>"
#~ msgstr ""
-#~ "<literal>formula</literal>(オプション): Mapのキーを評価するのに使われる"
-#~ "SQL式。"
+#~ "<array name=\"addresses\" \n"
+#~ " table=\"PersonAddress\" \n"
+#~ " cascade=\"persist\">\n"
+#~ " <key column=\"personId\"/>\n"
+#~ " <list-index column=\"sortOrder\"/>\n"
+#~ " <many-to-many column=\"addressId\"
class=\"Address\"/>\n"
+#~ "</array>"
-#~ msgid "<literal>type</literal> (reguired): The type of the map
keys."
-#~ msgstr "<literal>type</literal>(必須): Mapのキーの型。"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<map name=\"holidays\" \n"
+#~ " table=\"holidays\" \n"
+#~ " schema=\"dbo\" \n"
+#~ " order-by=\"hol_name asc\">\n"
+#~ " <key column=\"id\"/>\n"
+#~ " <map-key column=\"hol_name\"
type=\"string\"/>\n"
+#~ " <element column=\"hol_date\"
type=\"date\"/>\n"
+#~ "</map>]]>"
+#~ msgstr ""
+#~ "<map name=\"holidays\" \n"
+#~ " table=\"holidays\" \n"
+#~ " schema=\"dbo\" \n"
+#~ " order-by=\"hol_name asc\">\n"
+#~ " <key column=\"id\"/>\n"
+#~ " <map-key column=\"hol_name\"
type=\"string\"/>\n"
+#~ " <element column=\"hol_date\"
type=\"date\"/>\n"
+#~ "</map>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>column</literal> (optional): The name of the foreign key
column "
-#~ "for the collection index values."
+#~ "<![CDATA[<list name=\"carComponents\" \n"
+#~ " table=\"CarComponents\">\n"
+#~ " <key column=\"carId\"/>\n"
+#~ " <list-index column=\"sortOrder\"/>\n"
+#~ " <composite-element class=\"CarComponent\">\n"
+#~ " <property name=\"price\"/>\n"
+#~ " <property name=\"type\"/>\n"
+#~ " <property name=\"serialNumber\"
column=\"serialNum\"/>\n"
+#~ " </composite-element>\n"
+#~ "</list>]]>"
#~ msgstr ""
-#~ "<literal>column</literal> (オプション): コレクションインデックスの値のた"
-#~ "めの外部キーカラムの名前。"
+#~ "<list name=\"carComponents\" \n"
+#~ " table=\"CarComponents\">\n"
+#~ " <key column=\"carId\"/>\n"
+#~ " <list-index column=\"sortOrder\"/>\n"
+#~ " <composite-element class=\"CarComponent\">\n"
+#~ " <property name=\"price\"/>\n"
+#~ " <property name=\"type\"/>\n"
+#~ " <property name=\"serialNumber\"
column=\"serialNum\"/>\n"
+#~ " </composite-element>\n"
+#~ "</list>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>formula</literal> (optional): A SQL formula used to
evaluate the "
-#~ "foreign key of the map key."
+#~ "<![CDATA[<one-to-many \n"
+#~ " class=\"ClassName\"\n"
+#~ " not-found=\"ignore|exception\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " node=\"element-name\"\n"
+#~ " embed-xml=\"true|false\"\n"
+#~ " />]]>"
#~ msgstr ""
-#~ "<literal>formula</literal> (オプション): Mapのキーのための外部キーを評価"
-#~ "するために使うSQL式。"
+#~ "<one-to-many \n"
+#~ " class=\"ClassName\"\n"
+#~ " not-found=\"ignore|exception\"\n"
+#~ " entity-name=\"EntityName\"\n"
+#~ " node=\"element-name\"\n"
+#~ " embed-xml=\"true|false\"\n"
+#~ " />"
+#, fuzzy
#~ msgid ""
-#~ "<literal>class</literal> (required): The entity class used as the
map key."
+#~ "<![CDATA[<map name=\"parts\"\n"
+#~ " cascade=\"all\">\n"
+#~ " <key column=\"productId\"
not-null=\"true\"/>\n"
+#~ " <map-key formula=\"partName\"/>\n"
+#~ " <one-to-many class=\"Part\"/>\n"
+#~ "</map>]]>"
#~ msgstr ""
-#~ "<literal>class</literal> (必須): Mapのキーとして使われるエンティティクラ"
-#~ "ス。"
+#~ "<map name=\"parts\"\n"
+#~ " cascade=\"all\">\n"
+#~ " <key column=\"productId\"
not-null=\"true\"/>\n"
+#~ " <map-key formula=\"partName\"/>\n"
+#~ " <one-to-many class=\"Part\"/>\n"
+#~ "</map>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>column</literal> (optional): The name of the column holding
the "
-#~ "collection element values."
+#~ "<![CDATA[<set name=\"aliases\" \n"
+#~ " table=\"person_aliases\" \n"
+#~ " sort=\"natural\">\n"
+#~ " <key column=\"person\"/>\n"
+#~ " <element column=\"name\"
type=\"string\"/>\n"
+#~ "</set>\n"
+#~ "\n"
+#~ "<map name=\"holidays\"
sort=\"my.custom.HolidayComparator\">\n"
+#~ " <key column=\"year_id\"/>\n"
+#~ " <map-key column=\"hol_name\"
type=\"string\"/>\n"
+#~ " <element column=\"hol_date\"
type=\"date\"/>\n"
+#~ "</map>]]>"
#~ msgstr ""
-#~ "<literal>column</literal> (オプション): コレクションの要素の値を保持する"
-#~ "カラムの名前。"
+#~ "<set name=\"aliases\" \n"
+#~ " table=\"person_aliases\" \n"
+#~ " sort=\"natural\">\n"
+#~ " <key column=\"person\"/>\n"
+#~ " <element column=\"name\"
type=\"string\"/>\n"
+#~ "</set>\n"
+#~ "\n"
+#~ "<map name=\"holidays\"
sort=\"my.custom.HolidayComparator\">\n"
+#~ " <key column=\"year_id\"/>\n"
+#~ " <map-key column=\"hol_name\"
type=\"string\"/>\n"
+#~ " <element column=\"hol_date\"
type=\"date\"/>\n"
+#~ "</map>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>formula</literal> (optional): An SQL formula used to
evaluate "
-#~ "the element."
+#~ "<![CDATA[<set name=\"aliases\"
table=\"person_aliases\" order-by=\"lower"
+#~ "(name) asc\">\n"
+#~ " <key column=\"person\"/>\n"
+#~ " <element column=\"name\"
type=\"string\"/>\n"
+#~ "</set>\n"
+#~ "\n"
+#~ "<map name=\"holidays\" order-by=\"hol_date,
hol_name\">\n"
+#~ " <key column=\"year_id\"/>\n"
+#~ " <map-key column=\"hol_name\"
type=\"string\"/>\n"
+#~ " <element column=\"hol_date type=\"date\"/>\n"
+#~ "</map>]]>"
#~ msgstr ""
-#~ "<literal>formula</literal> (オプション): 要素を評価するために使うSQL式。"
+#~ "<set name=\"aliases\" table=\"person_aliases\"
order-by=\"lower(name) "
+#~ "asc\">\n"
+#~ " <key column=\"person\"/>\n"
+#~ " <element column=\"name\"
type=\"string\"/>\n"
+#~ "</set>\n"
+#~ "\n"
+#~ "<map name=\"holidays\" order-by=\"hol_date,
hol_name\">\n"
+#~ " <key column=\"year_id\"/>\n"
+#~ " <map-key column=\"hol_name\"
type=\"string\"/>\n"
+#~ " <element column=\"hol_date
type=\"date\"/>\n"
+#~ "</map>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>type</literal> (required): The type of the collection
element."
-#~ msgstr "<literal>type</literal> (必須)コレクションの要素の型。"
+#~ "<![CDATA[sortedUsers = s.createFilter( group.getUsers(), \"order by
this."
+#~ "name\" ).list();]]>"
+#~ msgstr ""
+#~ "sortedUsers = s.createFilter( group.getUsers(), \"order by this.name\"
)."
+#~ "list();"
+#, fuzzy
#~ msgid ""
-#~ "A <emphasis>many-to-many association</emphasis> is specified using
the "
-#~ "<literal><many-to-many></literal> element."
+#~ "<![CDATA[<class name=\"Category\">\n"
+#~ " <id name=\"id\" column=\"CATEGORY_ID\"/>\n"
+#~ " ...\n"
+#~ " <bag name=\"items\"
table=\"CATEGORY_ITEM\">\n"
+#~ " <key column=\"CATEGORY_ID\"/>\n"
+#~ " <many-to-many class=\"Item\"
column=\"ITEM_ID\"/>\n"
+#~ " </bag>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Item\">\n"
+#~ " <id name=\"id\" column=\"ITEM_ID\"/>\n"
+#~ " ...\n"
+#~ "\n"
+#~ " <!-- inverse end -->\n"
+#~ " <bag name=\"categories\" table=\"CATEGORY_ITEM\"
inverse=\"true\">\n"
+#~ " <key column=\"ITEM_ID\"/>\n"
+#~ " <many-to-many class=\"Category\"
column=\"CATEGORY_ID\"/>\n"
+#~ " </bag>\n"
+#~ "</class>]]>"
#~ msgstr ""
-#~ "<emphasis>多対多関連</emphasis> は
<literal><many-to-many></"
-#~ "literal> 要素で指定します。"
+#~ "<class name=\"Category\">\n"
+#~ " <id name=\"id\"
column=\"CATEGORY_ID\"/>\n"
+#~ " ...\n"
+#~ " <bag name=\"items\"
table=\"CATEGORY_ITEM\">\n"
+#~ " <key column=\"CATEGORY_ID\"/>\n"
+#~ " <many-to-many class=\"Item\"
column=\"ITEM_ID\"/>\n"
+#~ " </bag>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Item\">\n"
+#~ " <id name=\"id\"
column=\"CATEGORY_ID\"/>\n"
+#~ " ...\n"
+#~ "\n"
+#~ " <!-- inverse end -->\n"
+#~ " <bag name=\"categories\" table=\"CATEGORY_ITEM\"
inverse=\"true"
+#~ "\">\n"
+#~ " <key column=\"ITEM_ID\"/>\n"
+#~ " <many-to-many class=\"Category\"
column=\"CATEGORY_ID\"/>\n"
+#~ " </bag>\n"
+#~ "</class>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>column</literal> (optional): The name of the element
foreign key "
-#~ "column."
+#~ "<![CDATA[\n"
+#~ "category.getItems().add(item); // The category now \"knows\"
"
+#~ "about the relationship\n"
+#~ "item.getCategories().add(category); // The item now \"knows\"
about "
+#~ "the relationship\n"
+#~ "\n"
+#~ "session.persist(item); // The relationship won't be
"
+#~ "saved!\n"
+#~ "session.persist(category); // The relationship will be "
+#~ "saved]]>"
#~ msgstr ""
-#~ "<literal>column</literal> (オプション): 外部キーカラムの要素の名前。"
+#~ "category.getItems().add(item); // The category now \"knows\"
"
+#~ "about the relationship\n"
+#~ "item.getCategories().add(category); // The item now \"knows\"
about "
+#~ "the relationship\n"
+#~ "\n"
+#~ "session.persist(item); // The relationship won't be
"
+#~ "saved!\n"
+#~ "session.persist(category); // The relationship will be
saved"
+#, fuzzy
#~ msgid ""
-#~ "<literal>formula</literal> (optional): An SQL formula used to
evaluate "
-#~ "the element foreign key value."
+#~ "<![CDATA[<class name=\"Parent\">\n"
+#~ " <id name=\"id\" column=\"parent_id\"/>\n"
+#~ " ....\n"
+#~ " <set name=\"children\" inverse=\"true\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Child\">\n"
+#~ " <id name=\"id\" column=\"child_id\"/>\n"
+#~ " ....\n"
+#~ " <many-to-one name=\"parent\" \n"
+#~ " class=\"Parent\" \n"
+#~ " column=\"parent_id\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>]]>"
#~ msgstr ""
-#~ "<literal>formula</literal> (オプション): 外部キー値の要素を評価するため"
-#~ "に使うSQL式。"
+#~ "<class name=\"Parent\">\n"
+#~ " <id name=\"id\"
column=\"parent_id\"/>\n"
+#~ " ....\n"
+#~ " <set name=\"children\"
inverse=\"true\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Child\">\n"
+#~ " <id name=\"id\"
column=\"child_id\"/>\n"
+#~ " ....\n"
+#~ " <many-to-one name=\"parent\" \n"
+#~ " class=\"Parent\" \n"
+#~ " column=\"parent_id\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>fetch</literal> (optional - defaults to
<literal>join</"
-#~ "literal>): enables outer-join or sequential select fetching for this "
-#~ "association. This is a special case; for full eager fetching (in a single
"
-#~ "<literal>SELECT</literal>) of an entity and its many-to-many "
-#~ "relationships to other entities, you would enable
<literal>join</literal> "
-#~ "fetching not only of the collection itself, but also with this attribute "
-#~ "on the <literal><many-to-many></literal> nested
element."
+#~ "<![CDATA[<class name=\"Parent\">\n"
+#~ " <id name=\"id\" column=\"parent_id\"/>\n"
+#~ " ....\n"
+#~ " <map name=\"children\" inverse=\"true\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <map-key column=\"name\" \n"
+#~ " type=\"string\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </map>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Child\">\n"
+#~ " <id name=\"id\" column=\"child_id\"/>\n"
+#~ " ....\n"
+#~ " <property name=\"name\" \n"
+#~ " not-null=\"true\"/>\n"
+#~ " <many-to-one name=\"parent\" \n"
+#~ " class=\"Parent\" \n"
+#~ " column=\"parent_id\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>]]>"
#~ msgstr ""
-#~ "<literal>fetch</literal> (オプション - デフォルトは
<literal>join</"
-#~ "literal>): 関連のために、外部結合か順次選択フェッチを有効にします。 これは"
-#~ "特殊なケースですが、エンティティと他のエンティティとの多対多関係を (1つ"
-#~ "の <literal>SELECT</literal> により)完全に即時にフェッチするためには、 そ"
-#~ "のコレクション自体だけでなく、 ネストした要素である <literal><many-to-"
-#~ "many></literal> のこの属性についても <literal>join</literal>
フェッチを"
-#~ "有効する必要があります。"
+#~ "<class name=\"Parent\">\n"
+#~ " <id name=\"id\"
column=\"parent_id\"/>\n"
+#~ " ....\n"
+#~ " <map name=\"children\"
inverse=\"true\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <map-key column=\"name\" \n"
+#~ " type=\"string\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </map>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Child\">\n"
+#~ " <id name=\"id\"
column=\"child_id\"/>\n"
+#~ " ....\n"
+#~ " <property name=\"name\" \n"
+#~ " not-null=\"true\"/>\n"
+#~ " <many-to-one name=\"parent\" \n"
+#~ " class=\"Parent\" \n"
+#~ " column=\"parent_id\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>unique</literal> (optional): Enable the DDL generation of a
"
-#~ "unique constraint for the foreign-key column. This makes the association "
-#~ "multiplicity effectively one to many."
+#~ "<![CDATA[<class name=\"Parent\">\n"
+#~ " <id name=\"id\" column=\"parent_id\"/>\n"
+#~ " ....\n"
+#~ " <map name=\"children\">\n"
+#~ " <key column=\"parent_id\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ " <map-key column=\"name\" \n"
+#~ " type=\"string\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </map>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Child\">\n"
+#~ " <id name=\"id\" column=\"child_id\"/>\n"
+#~ " ....\n"
+#~ " <many-to-one name=\"parent\" \n"
+#~ " class=\"Parent\" \n"
+#~ " column=\"parent_id\"\n"
+#~ " insert=\"false\"\n"
+#~ " update=\"false\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>]]>"
#~ msgstr ""
-#~ "<literal>unique</literal> (オプション): 外部キーカラムのユニーク制約の"
-#~ "DDL生成を有効にします。 これは、関連の多重度を事実上一対多にします。"
+#~ "<class name=\"Parent\">\n"
+#~ " <id name=\"id\"
column=\"parent_id\"/>\n"
+#~ " ....\n"
+#~ " <map name=\"children\">\n"
+#~ " <key column=\"parent_id\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ " <map-key column=\"name\" \n"
+#~ " type=\"string\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </map>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Child\">\n"
+#~ " <id name=\"id\"
column=\"child_id\"/>\n"
+#~ " ....\n"
+#~ " <many-to-one name=\"parent\" \n"
+#~ " class=\"Parent\" \n"
+#~ " column=\"parent_id\"\n"
+#~ " insert=\"false\"\n"
+#~ " update=\"false\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "</class>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>not-found</literal> (optional - defaults to
<literal>exception</"
-#~ "literal>): Specifies how foreign keys that reference missing rows will be
"
-#~ "handled: <literal>ignore</literal> will treat a missing row as a
null "
-#~ "association."
+#~ "<![CDATA[<map name=\"contracts\">\n"
+#~ " <key column=\"employer_id\"
not-null=\"true\"/>\n"
+#~ " <map-key-many-to-many column=\"employee_id\"
class=\"Employee\"/>\n"
+#~ " <one-to-many class=\"Contract\"/>\n"
+#~ "</map>]]>"
#~ msgstr ""
-#~ "<literal>not-found</literal> (オプション - デフォルトは "
-#~ "<literal>exception</literal>) 参照先の行がない外部キーをどのように扱うか"
-#~ "を指定します。 <literal>ignore</literal> にすると、行がないことを関連が無"
-#~ "いものとして扱います。"
+#~ "<map name=\"contracts\">\n"
+#~ " <key column=\"employer_id\"
not-null=\"true\"/>\n"
+#~ " <map-key-many-to-many column=\"employee_id\"
class=\"Employee\"/"
+#~ ">\n"
+#~ " <one-to-many class=\"Contract\"/>\n"
+#~ "</map>"
+#, fuzzy
#~ msgid ""
-#~ "<literal>property-ref</literal>: (optional) The name of a property
of the "
-#~ "associated class that is joined to this foreign key. If not specified, "
-#~ "the primary key of the associated class is used."
+#~ "<![CDATA[<map name=\"connections\">\n"
+#~ " <key column=\"incoming_node_id\"/>\n"
+#~ " <map-key-many-to-many column=\"outgoing_node_id\"
class=\"Node\"/>\n"
+#~ " <many-to-many column=\"connection_id\"
class=\"Connection\"/>\n"
+#~ "</map>]]>"
#~ msgstr ""
-#~ "<literal>property-ref</literal>: (オプション) この外部キーに結合する関連"
-#~ "クラスのプロパティ名。 指定しなかった場合は、関連クラスの主キーを使いま"
-#~ "す。"
+#~ "<map name=\"connections\">\n"
+#~ " <key column=\"incoming_node_id\"/>\n"
+#~ " <map-key-many-to-many column=\"outgoing_node_id\"
class=\"Node\"/"
+#~ ">\n"
+#~ " <many-to-many column=\"connection_id\"
class=\"Connection\"/>\n"
+#~ "</map>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<idbag name=\"lovers\"
table=\"LOVERS\">\n"
+#~ " <collection-id column=\"ID\"
type=\"long\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </collection-id>\n"
+#~ " <key column=\"PERSON1\"/>\n"
+#~ " <many-to-many column=\"PERSON2\" class=\"Person\"
fetch=\"join\"/>\n"
+#~ "</idbag>]]>"
+#~ msgstr ""
+#~ "<idbag name=\"lovers\"
table=\"LOVERS\">\n"
+#~ " <collection-id column=\"ID\"
type=\"long\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </collection-id>\n"
+#~ " <key column=\"PERSON1\"/>\n"
+#~ " <many-to-many column=\"PERSON2\" class=\"Person\"
fetch=\"join\"/"
+#~ ">\n"
+#~ "</idbag>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[package eg;\n"
+#~ "import java.util.Set;\n"
+#~ "\n"
+#~ "public class Parent {\n"
+#~ " private long id;\n"
+#~ " private Set children;\n"
+#~ "\n"
+#~ " public long getId() { return id; }\n"
+#~ " private void setId(long id) { this.id=id; }\n"
+#~ "\n"
+#~ " private Set getChildren() { return children; }\n"
+#~ " private void setChildren(Set children) { this.children=children; }\n"
+#~ "\n"
+#~ " ....\n"
+#~ " ....\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "package eg;\n"
+#~ "import java.util.Set;\n"
+#~ "\n"
+#~ "public class Parent {\n"
+#~ " private long id;\n"
+#~ " private Set children;\n"
+#~ "\n"
+#~ " public long getId() { return id; }\n"
+#~ " private void setId(long id) { this.id=id; }\n"
+#~ "\n"
+#~ " private Set getChildren() { return children; }\n"
+#~ " private void setChildren(Set children) { this.children=children; }\n"
+#~ "\n"
+#~ " ....\n"
+#~ " ....\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Parent\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"children\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </set>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Child\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Parent\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"children\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </set>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Child\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[create table parent ( id bigint not null primary key )\n"
+#~ "create table child ( id bigint not null primary key, name varchar(255), "
+#~ "parent_id bigint )\n"
+#~ "alter table child add constraint childfk0 (parent_id) references
parent]]>"
+#~ msgstr ""
+#~ "create table parent ( id bigint not null primary key )\n"
+#~ "create table child ( id bigint not null primary key, name varchar(255), "
+#~ "parent_id bigint )\n"
+#~ "alter table child add constraint childfk0 (parent_id) references parent"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Parent\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"children\"
inverse=\"true\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </set>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Child\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " <many-to-one name=\"parent\" class=\"Parent\"
column=\"parent_id"
+#~ "\" not-null=\"true\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Parent\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"children\"
inverse=\"true\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </set>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Child\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " <many-to-one name=\"parent\" class=\"Parent\"
column="
+#~ "\"parent_id\" not-null=\"true\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[create table parent ( id bigint not null primary key )\n"
+#~ "create table child ( id bigint not null\n"
+#~ " primary key,\n"
+#~ " name varchar(255),\n"
+#~ " parent_id bigint not null )\n"
+#~ "alter table child add constraint childfk0 (parent_id) references
parent]]>"
+#~ msgstr ""
+#~ "create table parent ( id bigint not null primary key )\n"
+#~ "create table child ( id bigint not null\n"
+#~ " primary key,\n"
+#~ " name varchar(255),\n"
+#~ " parent_id bigint not null )\n"
+#~ "alter table child add constraint childfk0 (parent_id) references parent"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Parent\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"children\">\n"
+#~ " <key column=\"parent_id\"
not-null=\"true\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </set>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Child\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Parent\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"children\">\n"
+#~ " <key column=\"parent_id\"
not-null=\"true\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ " </set>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Child\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Parent\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"children\"
table=\"childset\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <many-to-many class=\"Child\"
column=\"child_id\"/>\n"
+#~ " </set>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Child\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Parent\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <set name=\"children\"
table=\"childset\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <many-to-many class=\"Child\"
column=\"child_id\"/>\n"
+#~ " </set>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Child\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[create table parent ( id bigint not null primary key )\n"
+#~ "create table child ( id bigint not null primary key, name varchar(255)
)\n"
+#~ "create table childset ( parent_id bigint not null,\n"
+#~ " child_id bigint not null,\n"
+#~ " primary key ( parent_id, child_id ) )\n"
+#~ "alter table childset add constraint childsetfk0 (parent_id) references "
+#~ "parent\n"
+#~ "alter table childset add constraint childsetfk1 (child_id) references "
+#~ "child]]>"
+#~ msgstr ""
+#~ "create table parent ( id bigint not null primary key )\n"
+#~ "create table child ( id bigint not null primary key, name varchar(255)
)\n"
+#~ "create table childset ( parent_id bigint not null,\n"
+#~ " child_id bigint not null,\n"
+#~ " primary key ( parent_id, child_id ) )\n"
+#~ "alter table childset add constraint childsetfk0 (parent_id) references "
+#~ "parent\n"
+#~ "alter table childset add constraint childsetfk1 (child_id) references "
+#~ "child"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/component_mapping.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/component_mapping.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/component_mapping.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,164 +1,81 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-23T01:43:44\n"
+"PO-Revision-Date: 2010-01-07 09:28+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: component_mapping.xml:29
#, no-c-format
msgid "Component Mapping"
msgstr "コンポーネントのマッピング"
#. Tag: para
-#: component_mapping.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The notion of a <emphasis>component</emphasis> is re-used in several
"
"different contexts and purposes throughout Hibernate."
msgstr ""
-"<emphasis>コンポーネント</emphasis> の概念は、Hibernateを通して様々な状況の中"
-"で 異なる目的のために再利用されます。"
+"<emphasis>コンポーネント</emphasis> の概念は、 Hibernate を通して様々な状況の"
+"中で異なる目的のために再利用されます。"
#. Tag: title
-#: component_mapping.xml:37
#, no-c-format
msgid "Dependent objects"
msgstr "依存オブジェクト"
#. Tag: para
-#: component_mapping.xml:39
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A component is a contained object that is persisted as a value type and not "
"an entity reference. The term \"component\" refers to the object-oriented
"
"notion of composition and not to architecture-level components. For example,
"
"you can model a person like this:"
msgstr ""
-"コンポーネントは、エンティティの参照ではなく値型として永続化された、 包含され"
-"たオブジェクトです。コンポーネントという言葉については、コンポジションという "
-"オブジェクト指向の概念を参照してください(アーキテクチャレベルのコンポーネン"
-"トではありません)。 例えば、以下のPersonモデルのようなものです。"
+"コンポーネントは、エンティティの参照ではなく値型として永続化された、包含され"
+"たオブジェクトです。「コンポーネント」という言葉については、コンポジションと"
+"いうオブジェクト指向の概念を参照してください(アーキテクチャレベルのコンポー"
+"ネントではありません)。例えば、以下の Person モデルのようなものです。"
-#. Tag: programlisting
-#: component_mapping.xml:45
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[public class Person {\n"
-" private java.util.Date birthday;\n"
-" private Name name;\n"
-" private String key;\n"
-" public String getKey() {\n"
-" return key;\n"
-" }\n"
-" private void setKey(String key) {\n"
-" this.key=key;\n"
-" }\n"
-" public java.util.Date getBirthday() {\n"
-" return birthday;\n"
-" }\n"
-" public void setBirthday(java.util.Date birthday) {\n"
-" this.birthday = birthday;\n"
-" }\n"
-" public Name getName() {\n"
-" return name;\n"
-" }\n"
-" public void setName(Name name) {\n"
-" this.name = name;\n"
-" }\n"
-" ......\n"
-" ......\n"
-"}]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: component_mapping.xml:47
-#, no-c-format
-msgid ""
-"<![CDATA[public class Name {\n"
-" char initial;\n"
-" String first;\n"
-" String last;\n"
-" public String getFirst() {\n"
-" return first;\n"
-" }\n"
-" void setFirst(String first) {\n"
-" this.first = first;\n"
-" }\n"
-" public String getLast() {\n"
-" return last;\n"
-" }\n"
-" void setLast(String last) {\n"
-" this.last = last;\n"
-" }\n"
-" public char getInitial() {\n"
-" return initial;\n"
-" }\n"
-" void setInitial(char initial) {\n"
-" this.initial = initial;\n"
-" }\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: component_mapping.xml:49
-#, fuzzy, no-c-format
-msgid ""
"Now <literal>Name</literal> can be persisted as a component of "
"<literal>Person</literal>. <literal>Name</literal> defines
getter and setter "
"methods for its persistent properties, but it does not need to declare any "
"interfaces or identifier properties."
msgstr ""
-"いま、<literal>Name</literal> は <literal>Person</literal>
のコンポーネントと"
-"して 永続化することが出来ます。ここで <literal>Name</literal> は永続化属性に"
-"対してgetter、 setterメソッドを定義しますが、インターフェイスや識別子プロパ"
-"ティを定義する必要が ないことに注意して下さい。"
+"いま、 <literal>Name</literal> は <literal>Person</literal>
のコンポーネント"
+"として永続化することが出来ます。ここで <literal>Name</literal> は永続化属性に"
+"対して getter 、 setter メソッドを定義しますが、インターフェースや識別子プロ"
+"パティを定義する必要がないことに注意して下さい。"
#. Tag: para
-#: component_mapping.xml:56
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Our Hibernate mapping would look like this:"
msgstr "マッピング定義は以下のようになります。"
-#. Tag: programlisting
-#: component_mapping.xml:60
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"eg.Person\"
table=\"person\">\n"
-" <id name=\"Key\" column=\"pid\"
type=\"string\">\n"
-" <generator class=\"uuid\"/>\n"
-" </id>\n"
-" <property name=\"birthday\" type=\"date\"/>\n"
-" <component name=\"Name\" class=\"eg.Name\"> <!--
class attribute "
-"optional -->\n"
-" <property name=\"initial\"/>\n"
-" <property name=\"first\"/>\n"
-" <property name=\"last\"/>\n"
-" </component>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: component_mapping.xml:62
#, no-c-format
msgid ""
"The person table would have the columns <literal>pid</literal>, "
"<literal>birthday</literal>, <literal>initial</literal>,
<literal>first</"
"literal> and <literal>last</literal>."
msgstr ""
-"Personテーブルは <literal>pid</literal>、
<literal>birthday</literal>、 "
+"Person テーブルは <literal>pid</literal>、
<literal>birthday</literal>、 "
"<literal>initial</literal>、 <literal>first</literal>、
<literal>last</"
"literal> カラムを持ちます。"
#. Tag: para
-#: component_mapping.xml:70
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Like value types, components do not support shared references. In other "
"words, two persons could have the same name, but the two person objects "
@@ -168,108 +85,69 @@
"if all component columns are null, then the entire component is null. This "
"is suitable for most purposes."
msgstr ""
-"全ての値型のように、コンポーネントは参照の共有をすることができません。 言い換"
-"えると、二人のPersonは同じ名前を持つことができますが、二つのPersonオブジェク"
-"トは \"値が同じだけ\"の別々のnameオブジェクトを含んでいるということです。 コ"
-"ンポーネントのnull値のセマンティクスは <emphasis>アドホック</emphasis> で"
-"す。 コンポーネントのオブジェクトを再読み込みする際、Hibernateはコンポーネン"
-"トのすべてのカラムが nullであるならコンポーネント自体がnullであると考えま"
-"す。 これは大抵の場合問題ありません。"
+"全ての値型のように、コンポーネントは参照の共有をすることができません。言い換"
+"えると、二人の Person は同じ名前を持つことができますが、二つの Person オブ"
+"ジェクトは「値が同じだけ」の別々の name オブジェクトを含んでいるということで"
+"す。コンポーネントの null 値のセマンティクスは <emphasis>アドホック</"
+"emphasis> です。コンポーネントのオブジェクトを再読み込みする際、 Hibernate は"
+"コンポーネントのすべてのカラムが null であるならコンポーネント自体が null で"
+"あると考えます。これは大抵の場合問題ありません。"
#. Tag: para
-#: component_mapping.xml:78
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The properties of a component can be of any Hibernate type (collections, "
"many-to-one associations, other components, etc). Nested components should "
"<emphasis>not</emphasis> be considered an exotic usage. Hibernate is
"
"intended to support a fine-grained object model."
msgstr ""
-"コンポーネントの属性はどんなHibernateの型でも構いません(コレクション、many-"
-"to-one関連、 他のコンポーネントなど)。ネストされたコンポーネントは滅多に使わ"
-"ないと考えるべきでは <emphasis>ありません</emphasis> 。Hibernateは非常にきめ"
-"の細かいオブジェクトモデルをサポートするように意図されています。"
+"コンポーネントの属性はどんな Hibernate の型でも構いません(コレクション、 "
+"many-to-one 関連、他のコンポーネントなど)。ネストされたコンポーネントは滅多"
+"に使わないと考えるべきでは <emphasis>ありません</emphasis> 。 Hibernate は非"
+"常にきめの細かいオブジェクトモデルをサポートするように意図されています。"
#. Tag: para
-#: component_mapping.xml:85
#, no-c-format
msgid ""
"The <literal><component></literal> element allows a
<literal><"
"parent></literal> subelement that maps a property of the component
class "
"as a reference back to the containing entity."
msgstr ""
-"<literal><component></literal>
要素は親エンティティへの逆参照として、コ"
-"ンポーネントクラスの 属性をマッピングする <literal><parent></literal> "
-"サブ要素を使用できます。"
+"<literal><component></literal>
要素は、親エンティティへ戻る参照として、"
+"コンポーネントのクラスのプロパティをマッピングする <literal><parent></"
+"literal> サブ要素を許可します。"
-#. Tag: programlisting
-#: component_mapping.xml:91
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"eg.Person\"
table=\"person\">\n"
-" <id name=\"Key\" column=\"pid\"
type=\"string\">\n"
-" <generator class=\"uuid\"/>\n"
-" </id>\n"
-" <property name=\"birthday\" type=\"date\"/>\n"
-" <component name=\"Name\" class=\"eg.Name\"
unique=\"true\">\n"
-" <parent name=\"namedPerson\"/> <!-- reference back to
the Person --"
-">\n"
-" <property name=\"initial\"/>\n"
-" <property name=\"first\"/>\n"
-" <property name=\"last\"/>\n"
-" </component>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: component_mapping.xml:96
#, no-c-format
msgid "Collections of dependent objects"
msgstr "従属するオブジェクトのコレクション"
#. Tag: para
-#: component_mapping.xml:98
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Collections of components are supported (e.g. an array of type "
"<literal>Name</literal>). Declare your component collection by
replacing the "
"<literal><element></literal> tag with a
<literal><composite-"
"element></literal> tag:"
msgstr ""
-"Hibernateはコンポーネントのコレクションをサポートしています(例えば "
+"Hibernate はコンポーネントのコレクションをサポートしています(例えば "
"<literal>Name</literal> 型の配列)。
<literal><element></literal> タグ"
-"を <literal><composite-element></literal> タグに取り替えることにより
コ"
+"を <literal><composite-element></literal>
タグに取り替えることによりコ"
"ンポーネントコレクションを宣言してください。"
-#. Tag: programlisting
-#: component_mapping.xml:105
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<set name=\"someNames\" table=\"some_names\"
lazy=\"true\">\n"
-" <key column=\"id\"/>\n"
-" <composite-element class=\"eg.Name\"> <!-- class attribute
required -->\n"
-" <property name=\"initial\"/>\n"
-" <property name=\"first\"/>\n"
-" <property name=\"last\"/>\n"
-" </composite-element>\n"
-"</set>]]>"
-msgstr ""
-
-#. Tag: para
-#: component_mapping.xml:108
-#, fuzzy, no-c-format
-msgid ""
"If you define a <literal>Set</literal> of composite elements, it is
"
"important to implement <literal>equals()</literal> and
<literal>hashCode()</"
"literal> correctly."
msgstr ""
-"注意: コンポジットエレメントの <literal>Set</literal> を定義したなら、 "
+"注記: コンポジットエレメントの <literal>Set</literal> を定義したなら、 "
"<literal>equals()</literal> と <literal>hashCode()</literal>
を正しく実装する"
"ことが重要です。"
#. Tag: para
-#: component_mapping.xml:115
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Composite elements can contain components but not collections. If your "
"composite element contains components, use the
<literal><nested-composite-"
@@ -280,17 +158,16 @@
"model and persistence semantics are still slightly different."
msgstr ""
"コンポジットエレメントはコレクションを含まず、コンポーネントを含むこともあり"
-"ます。 コンポジットエレメント自身がコンポーネントを含んでいる場合は "
-"<literal><nested-composite-element></literal> を
使用してください。コン"
+"ます。コンポジットエレメント自身がコンポーネントを含んでいる場合は "
+"<literal><nested-composite-element></literal>
を使用してください。コン"
"ポーネントのコレクション自身がコンポーネントを持つというケースはめったにあり"
-"ません。 この段階までに、one-to-many関連の方がより適切でないかと熟考してくだ"
-"さい。 コンポジットエレメントをエンティティとして再度モデリングしてみてくださ"
-"い。 しかしこれはJavaのモデルとしては同じですが、リレーショナルモデルと永続動"
-"作はまだ若干異なることに注意してください。"
+"ません。この段階までに、 one-to-many 関連の方がより適切でないかと熟考してくだ"
+"さい。コンポジットエレメントをエンティティとして再度モデリングしてみてくださ"
+"い。しかしこれは Java のモデルとしては同じですが、リレーショナルモデルと永続"
+"動作はまだ若干異なることに注意してください。"
#. Tag: para
-#: component_mapping.xml:127
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A composite element mapping does not support null-able properties if you are
"
"using a <literal><set></literal>. There is no separate
primary key "
@@ -301,17 +178,16 @@
"literal>, <literal><bag></literal> or
<literal><idbag></literal>."
msgstr ""
"もし <literal><set></literal> を使用するのであれば、コンポジットエレメ"
-"ントのマッピングがnull値が可能な 属性をサポートしていないことに注意してくださ"
-"い。Hibernateはオブジェクトを削除するとき、 レコードを識別するためにそれぞれ"
-"のカラムの値を使用する必要があるため、null値を持つことが出来ません (コンポ"
-"ジットエレメントテーブルには別の主キーカラムはありません)。 コンポジットエレ"
-"メントにnot-nullの属性のみを使用するか、または <literal><list></"
+"ントのマッピングが null 値が可能な属性をサポートしていないことに注意してくだ"
+"さい。 Hibernate はオブジェクトを削除するとき、レコードを識別するためにそれぞ"
+"れのカラムの値を使用する必要があるため、 null 値を持つことが出来ません (コン"
+"ポジットエレメントテーブルには別の主キーカラムはありません)。 コンポジットエ"
+"レメントに not-null の属性のみを使用するか、または <literal><list></"
"literal>、<literal><map></literal>、
<literal><bag></literal>、"
"<literal><idbag></literal> を選択する必要があります。"
#. Tag: para
-#: component_mapping.xml:138
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A special case of a composite element is a composite element with a nested "
"<literal><many-to-one></literal> element. This mapping
allows you to "
@@ -322,89 +198,48 @@
"<literal>quantity</literal> are properties of the association:"
msgstr ""
"コンポジットエレメントの特別なケースとして、ネストされた <literal><many-"
-"to-one></literal> 属性を持つ コンポジットエレメントがあります。 このマッピ"
-"ングは、コンポジットエレメントクラスを多対多関連テーブルの 余分なカラムへマッ"
-"ピングします。 次の例は <literal>Order</literal>
から、<literal>Item</"
-"literal> への多対多関連です。 <literal>purchaseDate</literal>、"
-"<literal>price</literal>、<literal>quantity</literal>
は関連の属性となりま"
-"す。"
+"to-one></literal> 属性を持つコンポジットエレメントがあります。このマッピン"
+"グは、コンポジットエレメントクラスを多対多関連テーブルの余分なカラムへマッピ"
+"ングします。次の例は <literal>Order</literal>
から、<literal>Item</literal> "
+"への多対多関連です。 <literal>purchaseDate</literal>、
<literal>price</"
+"literal>、 <literal>quantity</literal> は関連の属性となります。"
-#. Tag: programlisting
-#: component_mapping.xml:148
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"eg.Order\" .... >\n"
-" ....\n"
-" <set name=\"purchasedItems\" table=\"purchase_items\"
lazy=\"true\">\n"
-" <key column=\"order_id\">\n"
-" <composite-element class=\"eg.Purchase\">\n"
-" <property name=\"purchaseDate\"/>\n"
-" <property name=\"price\"/>\n"
-" <property name=\"quantity\"/>\n"
-" <many-to-one name=\"item\"
class=\"eg.Item\"/> <!-- class "
-"attribute is optional -->\n"
-" </composite-element>\n"
-" </set>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: component_mapping.xml:150
-#, fuzzy, no-c-format
-msgid ""
"There cannot be a reference to the purchase on the other side for "
"bidirectional association navigation. Components are value types and do not "
"allow shared references. A single <literal>Purchase</literal> can be in
the "
"set of an <literal>Order</literal>, but it cannot be referenced by the
"
"<literal>Item</literal> at the same time."
msgstr ""
-"もちろん、双方向関連のナビゲーションのために反対側からpurchaseへの参照を作る"
-"ことは出来ません。 コンポーネントは値型であり、参照を共有できないことを覚えて"
-"おいてください。 一つの <literal>Purchase</literal> は一つの
<literal>Order</"
-"literal> のsetに存在できますが、 同時に <literal>Item</literal> から参照する"
-"ことは出来ません。"
+"もちろん、双方向関連のナビゲーションのために反対側から purchase への参照を作"
+"ることは出来ません。コンポーネントは値型であり、参照を共有できないことを覚え"
+"ておいてください。一つの <literal>Purchase</literal> は一つの "
+"<literal>Order</literal> の set に存在できますが、同時に
<literal>Item</"
+"literal> から参照することは出来ません。"
#. Tag: para
-#: component_mapping.xml:158
#, no-c-format
msgid "Even ternary (or quaternary, etc) associations are possible:"
msgstr "3項関連(あるいは4項など)も可能です。"
-#. Tag: programlisting
-#: component_mapping.xml:160
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"eg.Order\" .... >\n"
-" ....\n"
-" <set name=\"purchasedItems\" table=\"purchase_items\"
lazy=\"true\">\n"
-" <key column=\"order_id\">\n"
-" <composite-element class=\"eg.OrderLine\">\n"
-" <many-to-one name=\"purchaseDetails
class=\"eg.Purchase\"/>\n"
-" <many-to-one name=\"item\"
class=\"eg.Item\"/>\n"
-" </composite-element>\n"
-" </set>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: component_mapping.xml:162
-#, fuzzy, no-c-format
-msgid ""
"Composite elements can appear in queries using the same syntax as "
"associations to other entities."
msgstr ""
-"コンポジットエレメントは他のエンティティへの関連として、 同じシンタックスを"
+"コンポジットエレメントは他のエンティティへの関連として、同じシンタックスを"
"使っているクエリ内で使用できます。"
#. Tag: title
-#: component_mapping.xml:170
#, no-c-format
msgid "Components as Map indices"
-msgstr "Mapのインデックスとしてのコンポーネント"
+msgstr "Map のインデックスとしてのコンポーネント"
#. Tag: para
-#: component_mapping.xml:172
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal><composite-map-key></literal> element allows
you to map a "
"component class as the key of a <literal>Map</literal>. Ensure that you
"
@@ -412,72 +247,64 @@
"correctly on the component class."
msgstr ""
"<literal><composite-map-key></literal> 要素は
<literal>Map</literal> の"
-"キーとしてコンポーネントクラスを マッピングします。コンポーネントクラス上で "
+"キーとしてコンポーネントクラスをマッピングします。コンポーネントクラス上で "
"<literal>hashCode()</literal> と <literal>equals()</literal>
を正確にオーバー"
"ライドしてください。"
#. Tag: title
-#: component_mapping.xml:181
#, no-c-format
msgid "Components as composite identifiers"
msgstr "複合識別子としてのコンポーネント"
#. Tag: para
-#: component_mapping.xml:183
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can use a component as an identifier of an entity class. Your component "
"class must satisfy certain requirements:"
msgstr ""
-"コンポーネントをエンティティクラスの識別子として使うことができます。 コンポー"
+"コンポーネントをエンティティクラスの識別子として使うことができます。コンポー"
"ネントクラスは以下の条件を満たす必要があります。"
#. Tag: para
-#: component_mapping.xml:190
#, no-c-format
msgid "It must implement <literal>java.io.Serializable</literal>."
msgstr "<literal>java.io.Serializable</literal> を実装しなければなりません。"
#. Tag: para
-#: component_mapping.xml:195
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It must re-implement <literal>equals()</literal> and
<literal>hashCode()</"
"literal> consistently with the database's notion of composite key
equality."
msgstr ""
-"データベース上の複合キーの等価性と矛盾のないように、<literal>equals()</"
+"データベース上の複合キーの等価性と矛盾のないように、 <literal>equals()</"
"literal> と <literal>hashCode()</literal> を再実装しなければなりません。"
#. Tag: title
-#: component_mapping.xml:204
#, no-c-format
msgid "Note"
-msgstr ""
+msgstr "注記"
#. Tag: para
-#: component_mapping.xml:205
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In Hibernate3, although the second requirement is not an absolutely hard "
"requirement of Hibernate, it is recommended."
msgstr ""
-"注意: Hibernate3において、2番目の条件は絶対的な条件ではありません。 しかしと"
-"にかく条件を満たしてください。"
+"Hibernate3 において、2番目の条件は絶対的な条件ではありません。それでもやはり"
+"条件を満たしてください。"
#. Tag: para
-#: component_mapping.xml:211
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You cannot use an <literal>IdentifierGenerator</literal> to generate
"
"composite keys. Instead the application must assign its own identifiers."
msgstr ""
"複合キーを生成するために <literal>IdentifierGenerator</literal> を使用するこ"
-"とはできません。 代わりにアプリケーションが識別子を割り当てなくてはなりませ"
+"とはできません。代わりにアプリケーションが識別子を割り当てなくてはなりませ"
"ん。"
#. Tag: para
-#: component_mapping.xml:216
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Use the <literal><composite-id></literal> tag, with
nested "
"<literal><key-property></literal> elements, in place of
the usual "
@@ -487,181 +314,79 @@
msgstr ""
"通常の <literal><id></literal> 宣言の代わりに
<literal><composite-"
"id></literal> タグを (ネストされた
<literal><key-property></"
-"literal> 属性と共に)使います。 以下の例では、<literal>OrderLine</literal> ク"
-"ラスは <literal>Order</literal> の(複合)主キーに 依存した主キーを持っていま"
-"す。"
+"literal> 属性と共に) 使います。以下の例では、 <literal>OrderLine</literal> "
+"クラスは <literal>Order</literal> の(複合)主キーに依存した主キーを持ってい"
+"ます。"
-#. Tag: programlisting
-#: component_mapping.xml:224
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"OrderLine\">\n"
-" \n"
-" <composite-id name=\"id\"
class=\"OrderLineId\">\n"
-" <key-property name=\"lineId\"/>\n"
-" <key-property name=\"orderId\"/>\n"
-" <key-property name=\"customerId\"/>\n"
-" </composite-id>\n"
-" \n"
-" <property name=\"name\"/>\n"
-" \n"
-" <many-to-one name=\"order\" class=\"Order\"\n"
-" insert=\"false\" update=\"false\">\n"
-" <column name=\"orderId\"/>\n"
-" <column name=\"customerId\"/>\n"
-" </many-to-one>\n"
-" ....\n"
-" \n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: component_mapping.xml:226
-#, fuzzy, no-c-format
-msgid ""
"Any foreign keys referencing the <literal>OrderLine</literal> table are
now "
"composite. Declare this in your mappings for other classes. An association "
"to <literal>OrderLine</literal> is mapped like this:"
msgstr ""
-"このとき、<literal>OrderLine</literal> テーブルへ関連する外部キーもまた複合で"
-"す。 他のクラスのマッピングでこれを宣言しなければなりません。 "
+"このとき、 <literal>OrderLine</literal> テーブルへ関連する外部キーもまた複合"
+"です。他のクラスのマッピングでこれを宣言しなければなりません。 "
"<literal>OrderLine</literal> への関連は次のようにマッピングされます。"
-#. Tag: programlisting
-#: component_mapping.xml:232
-#, no-c-format
-msgid ""
-"<![CDATA[<many-to-one name=\"orderLine\"
class=\"OrderLine\">\n"
-"<!-- the \"class\" attribute is optional, as usual -->\n"
-" <column name=\"lineId\"/>\n"
-" <column name=\"orderId\"/>\n"
-" <column name=\"customerId\"/>\n"
-"</many-to-one>]]>"
-msgstr ""
-
#. Tag: para
-#: component_mapping.xml:235
-#, no-c-format
+#, fuzzy, no-c-format
msgid ""
-"The <literal>column</literal> element is an alternative to the "
-"<literal>column</literal> attribute everywhere. Using the
<literal>column</"
-"literal> element just gives more declaration options, which are mostly "
-"useful when utilizing <literal>hbm2ddl</literal>"
+"The <literal><column></literal> tag is an alternative to
the "
+"<literal>column</literal> attribute everywhere. Using the
<literal><"
+"column></literal> tag just gives more declaration options, which are
"
+"mostly useful when utilizing <literal>hbm2ddl</literal>."
msgstr ""
+"(<literal><column></literal> タグはどこであっても
<literal>column</"
+"literal> 属性の代わりになります。)"
#. Tag: para
-#: component_mapping.xml:244
#, no-c-format
msgid ""
"A <literal>many-to-many</literal> association to
<literal>OrderLine</"
"literal> also uses the composite foreign key:"
msgstr ""
-"<literal>OrderLine</literal> への
<literal>many-to-many</literal> 関連も 複合"
+"<literal>OrderLine</literal> への
<literal>many-to-many</literal> 関連も複合"
"外部キーを使います。"
-#. Tag: programlisting
-#: component_mapping.xml:249
-#, no-c-format
-msgid ""
-"<![CDATA[<set name=\"undeliveredOrderLines\">\n"
-" <key column name=\"warehouseId\"/>\n"
-" <many-to-many class=\"OrderLine\">\n"
-" <column name=\"lineId\"/>\n"
-" <column name=\"orderId\"/>\n"
-" <column name=\"customerId\"/>\n"
-" </many-to-many>\n"
-"</set>]]>"
-msgstr ""
-
#. Tag: para
-#: component_mapping.xml:251
#, no-c-format
msgid ""
"The collection of <literal>OrderLine</literal>s in
<literal>Order</literal> "
"would use:"
msgstr ""
-"<literal>Order</literal> にある <literal>OrderLine</literal>
のコレクション"
-"は 次のものを使用します。"
+"<literal>Order</literal> にある <literal>OrderLine</literal>
のコレクションは"
+"次のものを使用します。"
-#. Tag: programlisting
-#: component_mapping.xml:256
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[<set name=\"orderLines\"
inverse=\"true\">\n"
-" <key>\n"
-" <column name=\"orderId\"/>\n"
-" <column name=\"customerId\"/>\n"
-" </key>\n"
-" <one-to-many class=\"OrderLine\"/>\n"
-"</set>]]>"
-msgstr ""
-
-#. Tag: para
-#: component_mapping.xml:258
-#, fuzzy, no-c-format
msgid "The <literal><one-to-many></literal> element
declares no columns."
msgstr ""
"(<literal><one-to-many></literal>
属性は、例によってカラムを宣言しませ"
"ん)"
#. Tag: para
-#: component_mapping.xml:262
#, no-c-format
msgid ""
"If <literal>OrderLine</literal> itself owns a collection, it also has a
"
"composite foreign key."
msgstr ""
-"<literal>OrderLine</literal> 自身がコレクションを持っている場合、 同時に複合"
-"外部キーも持っています。"
+"<literal>OrderLine</literal> 自身がコレクションを持っている場合、同時に複合外"
+"部キーも持っています。"
-#. Tag: programlisting
-#: component_mapping.xml:267
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"OrderLine\">\n"
-" ....\n"
-" ....\n"
-" <list name=\"deliveryAttempts\">\n"
-" <key> <!-- a collection inherits the composite key type
-->\n"
-" <column name=\"lineId\"/>\n"
-" <column name=\"orderId\"/>\n"
-" <column name=\"customerId\"/>\n"
-" </key>\n"
-" <list-index column=\"attemptId\"
base=\"1\"/>\n"
-" <composite-element class=\"DeliveryAttempt\">\n"
-" ...\n"
-" </composite-element>\n"
-" </set>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: component_mapping.xml:272
#, no-c-format
msgid "Dynamic components"
msgstr "動的コンポーネント"
#. Tag: para
-#: component_mapping.xml:274
-#, fuzzy, no-c-format
+#, no-c-format
msgid "You can also map a property of type
<literal>Map</literal>:"
msgstr "<literal>Map</literal> 型のプロパティのマッピングも可能です。"
-#. Tag: programlisting
-#: component_mapping.xml:278
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<dynamic-component name=\"userAttributes\">\n"
-" <property name=\"foo\" column=\"FOO\"
type=\"string\"/>\n"
-" <property name=\"bar\" column=\"BAR\"
type=\"integer\"/>\n"
-" <many-to-one name=\"baz\" class=\"Baz\"
column=\"BAZ_ID\"/>\n"
-"</dynamic-component>]]>"
-msgstr ""
-
-#. Tag: para
-#: component_mapping.xml:280
-#, fuzzy, no-c-format
-msgid ""
"The semantics of a <literal><dynamic-component></literal>
mapping are "
"identical to <literal><component></literal>. The
advantage of this "
"kind of mapping is the ability to determine the actual properties of the "
@@ -672,14 +397,392 @@
msgstr ""
"<literal><dynamic-component></literal> マッピングのセマンティクスは
"
"<literal><component></literal>
と同一のものです。この種のマッピングの利"
-"点は、マッピングドキュメントの編集により、配置時にbeanの属性を 決定できる点で"
-"す。また、DOMパーサを利用して、マッピングドキュメントのランタイム操作が可能で"
-"す。 さらに、<literal>Configuration</literal> オブジェクト経由でHibernateのコ"
-"ンフィグレーション時のメタモデルに アクセス(または変更)が可能です。"
+"点は、マッピングドキュメントの編集により、配置時に Bean の属性を決定できる点"
+"です。また、 DOM パーサを利用して、マッピングドキュメントのランタイム操作が可"
+"能です。さらに、 <literal>Configuration</literal> オブジェクト経由で "
+"Hibernate のコンフィグレーション時のメタモデルにアクセス(または変更)が可能"
+"です。"
+#, fuzzy
#~ msgid ""
-#~ "(Note that the <literal><column></literal> tag is an
alternative to "
-#~ "the <literal>column</literal> attribute everywhere.)"
+#~ "<![CDATA[public class Person {\n"
+#~ " private java.util.Date birthday;\n"
+#~ " private Name name;\n"
+#~ " private String key;\n"
+#~ " public String getKey() {\n"
+#~ " return key;\n"
+#~ " }\n"
+#~ " private void setKey(String key) {\n"
+#~ " this.key=key;\n"
+#~ " }\n"
+#~ " public java.util.Date getBirthday() {\n"
+#~ " return birthday;\n"
+#~ " }\n"
+#~ " public void setBirthday(java.util.Date birthday) {\n"
+#~ " this.birthday = birthday;\n"
+#~ " }\n"
+#~ " public Name getName() {\n"
+#~ " return name;\n"
+#~ " }\n"
+#~ " public void setName(Name name) {\n"
+#~ " this.name = name;\n"
+#~ " }\n"
+#~ " ......\n"
+#~ " ......\n"
+#~ "}]]>"
#~ msgstr ""
-#~ "(<literal><column></literal> タグはどこであっても
<literal>column</"
-#~ "literal> 属性の 代わりになります。)"
+#~ "public class Person {\n"
+#~ " private java.util.Date birthday;\n"
+#~ " private Name name;\n"
+#~ " private String key;\n"
+#~ " public String getKey() {\n"
+#~ " return key;\n"
+#~ " }\n"
+#~ " private void setKey(String key) {\n"
+#~ " this.key=key;\n"
+#~ " }\n"
+#~ " public java.util.Date getBirthday() {\n"
+#~ " return birthday;\n"
+#~ " }\n"
+#~ " public void setBirthday(java.util.Date birthday) {\n"
+#~ " this.birthday = birthday;\n"
+#~ " }\n"
+#~ " public Name getName() {\n"
+#~ " return name;\n"
+#~ " }\n"
+#~ " public void setName(Name name) {\n"
+#~ " this.name = name;\n"
+#~ " }\n"
+#~ " ......\n"
+#~ " ......\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[public class Name {\n"
+#~ " char initial;\n"
+#~ " String first;\n"
+#~ " String last;\n"
+#~ " public String getFirst() {\n"
+#~ " return first;\n"
+#~ " }\n"
+#~ " void setFirst(String first) {\n"
+#~ " this.first = first;\n"
+#~ " }\n"
+#~ " public String getLast() {\n"
+#~ " return last;\n"
+#~ " }\n"
+#~ " void setLast(String last) {\n"
+#~ " this.last = last;\n"
+#~ " }\n"
+#~ " public char getInitial() {\n"
+#~ " return initial;\n"
+#~ " }\n"
+#~ " void setInitial(char initial) {\n"
+#~ " this.initial = initial;\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "public class Name {\n"
+#~ " char initial;\n"
+#~ " String first;\n"
+#~ " String last;\n"
+#~ " public String getFirst() {\n"
+#~ " return first;\n"
+#~ " }\n"
+#~ " void setFirst(String first) {\n"
+#~ " this.first = first;\n"
+#~ " }\n"
+#~ " public String getLast() {\n"
+#~ " return last;\n"
+#~ " }\n"
+#~ " void setLast(String last) {\n"
+#~ " this.last = last;\n"
+#~ " }\n"
+#~ " public char getInitial() {\n"
+#~ " return initial;\n"
+#~ " }\n"
+#~ " void setInitial(char initial) {\n"
+#~ " this.initial = initial;\n"
+#~ " }\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"eg.Person\"
table=\"person\">\n"
+#~ " <id name=\"Key\" column=\"pid\"
type=\"string\">\n"
+#~ " <generator class=\"uuid\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"birthday\"
type=\"date\"/>\n"
+#~ " <component name=\"Name\" class=\"eg.Name\">
<!-- class attribute "
+#~ "optional -->\n"
+#~ " <property name=\"initial\"/>\n"
+#~ " <property name=\"first\"/>\n"
+#~ " <property name=\"last\"/>\n"
+#~ " </component>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"eg.Person\"
table=\"person\">\n"
+#~ " <id name=\"Key\" column=\"pid\"
type=\"string\">\n"
+#~ " <generator class=\"uuid\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"birthday\"
type=\"date\"/>\n"
+#~ " <component name=\"Name\"
class=\"eg.Name\"> <!-- class "
+#~ "attribute optional -->\n"
+#~ " <property name=\"initial\"/>\n"
+#~ " <property name=\"first\"/>\n"
+#~ " <property name=\"last\"/>\n"
+#~ " </component>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"eg.Person\"
table=\"person\">\n"
+#~ " <id name=\"Key\" column=\"pid\"
type=\"string\">\n"
+#~ " <generator class=\"uuid\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"birthday\"
type=\"date\"/>\n"
+#~ " <component name=\"Name\" class=\"eg.Name\"
unique=\"true\">\n"
+#~ " <parent name=\"namedPerson\"/> <!-- reference back to
the Person "
+#~ "-->\n"
+#~ " <property name=\"initial\"/>\n"
+#~ " <property name=\"first\"/>\n"
+#~ " <property name=\"last\"/>\n"
+#~ " </component>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"eg.Person\"
table=\"person\">\n"
+#~ " <id name=\"Key\" column=\"pid\"
type=\"string\">\n"
+#~ " <generator class=\"uuid\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"birthday\"
type=\"date\"/>\n"
+#~ " <component name=\"Name\" class=\"eg.Name\"
unique=\"true\">\n"
+#~ " <parent name=\"namedPerson\"/> <!--
reference back to "
+#~ "the Person -->\n"
+#~ " <property name=\"initial\"/>\n"
+#~ " <property name=\"first\"/>\n"
+#~ " <property name=\"last\"/>\n"
+#~ " </component>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set name=\"someNames\" table=\"some_names\"
lazy=\"true\">\n"
+#~ " <key column=\"id\"/>\n"
+#~ " <composite-element class=\"eg.Name\"> <!-- class
attribute required --"
+#~ ">\n"
+#~ " <property name=\"initial\"/>\n"
+#~ " <property name=\"first\"/>\n"
+#~ " <property name=\"last\"/>\n"
+#~ " </composite-element>\n"
+#~ "</set>]]>"
+#~ msgstr ""
+#~ "<set name=\"someNames\" table=\"some_names\"
lazy=\"true\">\n"
+#~ " <key column=\"id\"/>\n"
+#~ " <composite-element class=\"eg.Name\"> <!--
class attribute "
+#~ "required -->\n"
+#~ " <property name=\"initial\"/>\n"
+#~ " <property name=\"first\"/>\n"
+#~ " <property name=\"last\"/>\n"
+#~ " </composite-element>\n"
+#~ "</set>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"eg.Order\" .... >\n"
+#~ " ....\n"
+#~ " <set name=\"purchasedItems\" table=\"purchase_items\"
lazy=\"true\">\n"
+#~ " <key column=\"order_id\">\n"
+#~ " <composite-element class=\"eg.Purchase\">\n"
+#~ " <property name=\"purchaseDate\"/>\n"
+#~ " <property name=\"price\"/>\n"
+#~ " <property name=\"quantity\"/>\n"
+#~ " <many-to-one name=\"item\"
class=\"eg.Item\"/> <!-- class "
+#~ "attribute is optional -->\n"
+#~ " </composite-element>\n"
+#~ " </set>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"eg.Order\" .... >\n"
+#~ " ....\n"
+#~ " <set name=\"purchasedItems\"
table=\"purchase_items\" lazy=\"true"
+#~ "\">\n"
+#~ " <key column=\"order_id\">\n"
+#~ " <composite-element
class=\"eg.Purchase\">\n"
+#~ " <property name=\"purchaseDate\"/>\n"
+#~ " <property name=\"price\"/>\n"
+#~ " <property name=\"quantity\"/>\n"
+#~ " <many-to-one name=\"item\"
class=\"eg.Item\"/> <!-- "
+#~ "class attribute is optional -->\n"
+#~ " </composite-element>\n"
+#~ " </set>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"eg.Order\" .... >\n"
+#~ " ....\n"
+#~ " <set name=\"purchasedItems\" table=\"purchase_items\"
lazy=\"true\">\n"
+#~ " <key column=\"order_id\">\n"
+#~ " <composite-element class=\"eg.OrderLine\">\n"
+#~ " <many-to-one name=\"purchaseDetails
class=\"eg.Purchase\"/>\n"
+#~ " <many-to-one name=\"item\"
class=\"eg.Item\"/>\n"
+#~ " </composite-element>\n"
+#~ " </set>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"eg.Order\" .... >\n"
+#~ " ....\n"
+#~ " <set name=\"purchasedItems\"
table=\"purchase_items\" lazy=\"true"
+#~ "\">\n"
+#~ " <key column=\"order_id\">\n"
+#~ " <composite-element
class=\"eg.OrderLine\">\n"
+#~ " <many-to-one name=\"purchaseDetails
class=\"eg.Purchase\"/"
+#~ ">\n"
+#~ " <many-to-one name=\"item\"
class=\"eg.Item\"/>\n"
+#~ " </composite-element>\n"
+#~ " </set>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"OrderLine\">\n"
+#~ " \n"
+#~ " <composite-id name=\"id\"
class=\"OrderLineId\">\n"
+#~ " <key-property name=\"lineId\"/>\n"
+#~ " <key-property name=\"orderId\"/>\n"
+#~ " <key-property name=\"customerId\"/>\n"
+#~ " </composite-id>\n"
+#~ " \n"
+#~ " <property name=\"name\"/>\n"
+#~ " \n"
+#~ " <many-to-one name=\"order\" class=\"Order\"\n"
+#~ " insert=\"false\" update=\"false\">\n"
+#~ " <column name=\"orderId\"/>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " </many-to-one>\n"
+#~ " ....\n"
+#~ " \n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"OrderLine\">\n"
+#~ " \n"
+#~ " <composite-id name=\"id\"
class=\"OrderLineId\">\n"
+#~ " <key-property name=\"lineId\"/>\n"
+#~ " <key-property name=\"orderId\"/>\n"
+#~ " <key-property name=\"customerId\"/>\n"
+#~ " </composite-id>\n"
+#~ " \n"
+#~ " <property name=\"name\"/>\n"
+#~ " \n"
+#~ " <many-to-one name=\"order\"
class=\"Order\"\n"
+#~ " insert=\"false\"
update=\"false\">\n"
+#~ " <column name=\"orderId\"/>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " </many-to-one>\n"
+#~ " ....\n"
+#~ " \n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"orderLine\"
class=\"OrderLine\">\n"
+#~ "<!-- the \"class\" attribute is optional, as usual -->\n"
+#~ " <column name=\"lineId\"/>\n"
+#~ " <column name=\"orderId\"/>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ "</many-to-one>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"orderLine\"
class=\"OrderLine\">\n"
+#~ "<!-- the \"class\" attribute is optional, as usual
-->\n"
+#~ " <column name=\"lineId\"/>\n"
+#~ " <column name=\"orderId\"/>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ "</many-to-one>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set name=\"undeliveredOrderLines\">\n"
+#~ " <key column name=\"warehouseId\"/>\n"
+#~ " <many-to-many class=\"OrderLine\">\n"
+#~ " <column name=\"lineId\"/>\n"
+#~ " <column name=\"orderId\"/>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " </many-to-many>\n"
+#~ "</set>]]>"
+#~ msgstr ""
+#~ "<set name=\"undeliveredOrderLines\">\n"
+#~ " <key column name=\"warehouseId\"/>\n"
+#~ " <many-to-many class=\"OrderLine\">\n"
+#~ " <column name=\"lineId\"/>\n"
+#~ " <column name=\"orderId\"/>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " </many-to-many>\n"
+#~ "</set>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set name=\"orderLines\"
inverse=\"true\">\n"
+#~ " <key>\n"
+#~ " <column name=\"orderId\"/>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " </key>\n"
+#~ " <one-to-many class=\"OrderLine\"/>\n"
+#~ "</set>]]>"
+#~ msgstr ""
+#~ "<set name=\"orderLines\"
inverse=\"true\">\n"
+#~ " <key>\n"
+#~ " <column name=\"orderId\"/>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " </key>\n"
+#~ " <one-to-many class=\"OrderLine\"/>\n"
+#~ "</set>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"OrderLine\">\n"
+#~ " ....\n"
+#~ " ....\n"
+#~ " <list name=\"deliveryAttempts\">\n"
+#~ " <key> <!-- a collection inherits the composite key type
-->\n"
+#~ " <column name=\"lineId\"/>\n"
+#~ " <column name=\"orderId\"/>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " </key>\n"
+#~ " <list-index column=\"attemptId\"
base=\"1\"/>\n"
+#~ " <composite-element class=\"DeliveryAttempt\">\n"
+#~ " ...\n"
+#~ " </composite-element>\n"
+#~ " </set>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"OrderLine\">\n"
+#~ " ....\n"
+#~ " ....\n"
+#~ " <list name=\"deliveryAttempts\">\n"
+#~ " <key> <!-- a collection inherits the composite
key "
+#~ "type -->\n"
+#~ " <column name=\"lineId\"/>\n"
+#~ " <column name=\"orderId\"/>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " </key>\n"
+#~ " <list-index column=\"attemptId\"
base=\"1\"/>\n"
+#~ " <composite-element
class=\"DeliveryAttempt\">\n"
+#~ " ...\n"
+#~ " </composite-element>\n"
+#~ " </set>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<dynamic-component name=\"userAttributes\">\n"
+#~ " <property name=\"foo\" column=\"FOO\"
type=\"string\"/>\n"
+#~ " <property name=\"bar\" column=\"BAR\"
type=\"integer\"/>\n"
+#~ " <many-to-one name=\"baz\" class=\"Baz\"
column=\"BAZ_ID\"/>\n"
+#~ "</dynamic-component>]]>"
+#~ msgstr ""
+#~ "<dynamic-component name=\"userAttributes\">\n"
+#~ " <property name=\"foo\" column=\"FOO\"
type=\"string\"/>\n"
+#~ " <property name=\"bar\" column=\"BAR\"
type=\"integer\"/>\n"
+#~ " <many-to-one name=\"baz\" class=\"Baz\"
column=\"BAZ_ID\"/>\n"
+#~ "</dynamic-component>"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/configuration.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/configuration.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/configuration.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,24 +1,25 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2009.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-16 18:47+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-23T01:43:44\n"
+"PO-Revision-Date: 2009-12-21 17:12+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: configuration.xml:29
#, no-c-format
msgid "Configuration"
msgstr "設定"
#. Tag: para
-#: configuration.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate is designed to operate in many different environments and, as "
"such, there is a broad range of configuration parameters. Fortunately, most "
@@ -27,22 +28,20 @@
"displays the various options. Simply put the example file in your classpath "
"and customize it to suit your needs."
msgstr ""
-"Hibernateはさまざまな環境で動作するようにデザインされているため、非常に多くの"
-"設定要素があります。 幸いなことに、Hibernateは、公開されているパッケージの "
+"Hibernate は様々な環境で動作するようにデザインされているため、非常に多くの設"
+"定要素があります。幸いなことに、 Hibernate は、公開されているパッケージの "
"<literal>etc/</literal> フォルダの
<literal>hibernate.properties</literal> "
-"に、ほとんどの設定要素の適切なデフォルト値が記述されています。 この "
+"に、ほとんどの設定要素の適切なデフォルト値が記述されています。この "
"<literal>hibernate.properties</literal> をクラスパスに設定し、設定要素をカス"
"タマイズするだけです。"
#. Tag: title
-#: configuration.xml:40
#, no-c-format
msgid "Programmatic configuration"
msgstr "プログラム上の設定"
#. Tag: para
-#: configuration.xml:42
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An instance of <classname>org.hibernate.cfg.Configuration</classname>
"
"represents an entire set of mappings of an application's Java types to an
"
@@ -50,104 +49,67 @@
"used to build an immutable
<interfacename>org.hibernate.SessionFactory</"
"interfacename>. The mappings are compiled from various XML mapping files."
msgstr ""
-"<literal>org.hibernate.cfg.Configuration</literal> のインスタンスは、
Javaの"
-"型とSQLデータベースのマッピング情報をすべて持っています。 The "
-"<literal>Configuration</literal> は、(不変の)
<literal>SessionFactory</"
-"literal> を生成するときに使用します。 複数のXMLマッピングファイルを変換し、"
-"マッピング情報にします。"
+"<classname>org.hibernate.cfg.Configuration</classname> のインスタンスは、
"
+"Java の型と SQL データベースのマッピング情報をすべて持っています。 "
+"<literal>Configuration</literal> は、(不変の) "
+"<interfacename>SessionFactory</interfacename> を生成するときに使用します。複"
+"数の XML マッピングファイルを変換し、マッピング情報にします。"
#. Tag: para
-#: configuration.xml:49
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can obtain a <classname>org.hibernate.cfg.Configuration</classname>
"
"instance by instantiating it directly and specifying XML mapping documents. "
"If the mapping files are in the classpath, use
<literal>addResource()</"
"literal>. For example:"
msgstr ""
-"通常、<literal>Configuration</literal> インスタンスは、特定のXMLマッピング"
-"ファイル によって直接初期化されます。もし、マッピングファイルがクラスパスに設"
-"定されている場合、 次のメソッドを使ってください。 <literal>addResource()</"
-"literal> :"
+"通常、 <classname>org.hibernate.cfg.Configuration</classname>
インスタンス"
+"は、特定の XML マッピングファイルによって直接初期化されます。もし、マッピング"
+"ファイルがクラスパスに設定されている場合、次のメソッドを使ってください。 "
+"<literal>addResource()</literal> :"
-#. Tag: programlisting
-#: configuration.xml:55
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Configuration cfg = new Configuration()\n"
-" .addResource(\"Item.hbm.xml\")\n"
-" .addResource(\"Bid.hbm.xml\");]]>"
-msgstr ""
-
-#. Tag: para
-#: configuration.xml:57
-#, fuzzy, no-c-format
-msgid ""
"An alternative way is to specify the mapped class and allow Hibernate to "
"find the mapping document for you:"
msgstr ""
-"代替案(こちらのほうが良いときもあります)としてマッピングクラスを指定する方法"
-"もあります。Hibernateに、マッピングファイルを 見つけさせてください:"
+"代替案 (こちらのほうが良いときもあります) としてマッピングクラスを指定する方"
+"法もあります。 Hibernate に、マッピングファイルを 見つけさせてください:"
-#. Tag: programlisting
-#: configuration.xml:62
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Configuration cfg = new Configuration()\n"
-" .addClass(org.hibernate.auction.Item.class)\n"
-" .addClass(org.hibernate.auction.Bid.class);]]>"
-msgstr ""
-
-#. Tag: para
-#: configuration.xml:64
-#, fuzzy, no-c-format
-msgid ""
"Hibernate will then search for mapping files named
<filename>/org/hibernate/"
"auction/Item.hbm.xml</filename> and
<filename>/org/hibernate/auction/Bid.hbm."
"xml</filename> in the classpath. This approach eliminates any hardcoded
"
"filenames."
msgstr ""
-"Hibernateは、クラスパスにある以下のような名前のマッピングファイルを見つけま"
-"す。 <literal>/org/hibernate/auction/Item.hbm.xml</literal> 、
<literal>/org/"
-"hibernate/auction/Bid.hbm.xml</literal> 。 この方法だと、ハードコーディングさ"
-"れたファイル名を排除できます。"
+"Hibernate は、クラスパスにある以下のような名前のマッピングファイルを見つけま"
+"す。 <filename>/org/hibernate/auction/Item.hbm.xml</filename> 、
<filename>/"
+"org/hibernate/auction/Bid.hbm.xml</filename> 。この方法だと、ハードコーディン"
+"グされたファイル名を排除できます。"
#. Tag: para
-#: configuration.xml:70
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <classname>org.hibernate.cfg.Configuration</classname> also allows
you to "
"specify configuration properties. For example:"
msgstr ""
-"<literal>Configuration</literal> は、設定プロパティを指定することもできます:"
+"<classname>org.hibernate.cfg.Configuration</classname>
は、設定プロパティを指"
+"定することもできます:"
-#. Tag: programlisting
-#: configuration.xml:75
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Configuration cfg = new Configuration()\n"
-" .addClass(org.hibernate.auction.Item.class)\n"
-" .addClass(org.hibernate.auction.Bid.class)\n"
-" .setProperty(\"hibernate.dialect\",
\"org.hibernate.dialect."
-"MySQLInnoDBDialect\")\n"
-" .setProperty(\"hibernate.connection.datasource\",
\"java:comp/env/jdbc/"
-"test\")\n"
-" .setProperty(\"hibernate.order_updates\",
\"true\");]]>"
-msgstr ""
-
-#. Tag: para
-#: configuration.xml:77
-#, fuzzy, no-c-format
-msgid ""
"This is not the only way to pass configuration properties to Hibernate. Some
"
"alternative options include:"
msgstr ""
-"Hibernateに設定プロパティを通す方法は1つではありません。 さまざまなオプション"
+"Hibernate に設定プロパティを渡す方法は1つではありません。さまざまなオプション"
"を用意しています:"
#. Tag: para
-#: configuration.xml:84
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Pass an instance of <classname>java.util.Properties</classname> to
"
"<literal>Configuration.setProperties()</literal>."
@@ -156,17 +118,15 @@
"<literal>Configuration.setProperties()</literal> に渡します。"
#. Tag: para
-#: configuration.xml:90
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Place a file named <filename>hibernate.properties</filename> in a root
"
"directory of the classpath."
msgstr ""
-"<literal>hibernate.properties</literal> を クラスパスのルートディレクトリに置"
+"<literal>hibernate.properties</literal> をクラスパスのルートディレクトリに置"
"きます。"
#. Tag: para
-#: configuration.xml:95
#, no-c-format
msgid ""
"Set <literal>System</literal> properties using <literal>java
-"
@@ -176,17 +136,15 @@
"literal> を使うように設定します。"
#. Tag: para
-#: configuration.xml:100
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Include <literal><property></literal> elements in
<literal>hibernate."
"cfg.xml</literal> (this is discussed later)."
msgstr ""
-"<literal><property></literal> 要素を
<literal>hibernate.cfg.xml</"
-"literal> (後述)に設定します。"
+"<literal><property></literal> 要素を
<filename>hibernate.cfg.xml</"
+"filename> (後述)に設定します。"
#. Tag: para
-#: configuration.xml:107
#, no-c-format
msgid ""
"If you want to get started
quickly<filename>hibernate.properties</filename> "
@@ -194,93 +152,74 @@
msgstr ""
#. Tag: para
-#: configuration.xml:111
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <classname>org.hibernate.cfg.Configuration</classname> is intended
as a "
"startup-time object that will be discarded once a
<literal>SessionFactory</"
"literal> is created."
msgstr ""
-"<literal>Configuration</literal> は、起動時にだけあるオブジェクトであり、 一"
-"度 <literal>SessionFactory</literal> を生成した後は、破棄されることを意図して"
-"います。"
+"<classname>org.hibernate.cfg.Configuration</classname>
は、起動時にだけあるオ"
+"ブジェクトであり、一度 <literal>SessionFactory</literal> を生成した後は、破棄"
+"されることを意図しています。"
#. Tag: title
-#: configuration.xml:119
#, no-c-format
msgid "Obtaining a SessionFactory"
-msgstr "SessionFactoryを取得する"
+msgstr "SessionFactory を取得する"
#. Tag: para
-#: configuration.xml:121
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"When all mappings have been parsed by the
<classname>org.hibernate.cfg."
"Configuration</classname>, the application must obtain a factory for "
-"<interfacename>org.hibernate.Session</interfacename> instances. This
factory "
-"is intended to be shared by all application threads:"
+"<classname>org.hibernate.Session</classname> instances. This factory is
"
+"intended to be shared by all application threads:"
msgstr ""
-"<literal>Configuration</literal> がすべてのマッピング情報を解析したら、 アプ"
-"リケーションは、 <literal>Session</literal> ファクトリインスタンスを取得しま"
-"す。 このSessionFactoryは、Hibernateを使用するすべてのスレッドで共有されるべ"
-"きです。"
+"<classname>org.hibernate.cfg.Configuration</classname>
がすべてのマッピング情"
+"報を解析したら、アプリケーションは、 <classname>org.hibernate.Session</"
+"classname> インスタンスのためにファクトリを取得しなければなりません。この "
+"SessionFactory は、 Hibernate を使用するすべてのスレッドで共有されるべきです:"
-#. Tag: programlisting
-#: configuration.xml:127
-#, no-c-format
-msgid "<![CDATA[SessionFactory sessions = cfg.buildSessionFactory();]]>"
-msgstr ""
-
#. Tag: para
-#: configuration.xml:129
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate does allow your application to instantiate more than one "
-"<interfacename>org.hibernate.SessionFactory</interfacename>. This is
useful "
-"if you are using more than one database."
+"<classname>org.hibernate.SessionFactory</classname>. This is useful if
you "
+"are using more than one database."
msgstr ""
-"Hibernateは、 <literal>SessionFactory</literal> を複数生成することができま"
-"す。 これは、複数のデータベースを使用する場合に便利です。"
+"Hibernate は、アプリケーションが <classname>org.hibernate.SessionFactory</"
+"classname> を複数生成することを可能にします。これは、複数のデータベースを使用"
+"する場合に便利です。"
#. Tag: title
-#: configuration.xml:138
#, no-c-format
msgid "JDBC connections"
-msgstr "JDBCコネクション"
+msgstr "JDBC コネクション"
#. Tag: para
-#: configuration.xml:140
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is advisable to have the
<interfacename>org.hibernate.SessionFactory</"
"interfacename> create and pool JDBC connections for you. If you take this
"
"approach, opening a
<interfacename>org.hibernate.Session</interfacename> is "
"as simple as:"
msgstr ""
-"通常、開発者は <literal>SessionFactory</literal> を生成し、SessionFactoryで"
-"JDBCコネクションをプーリングしたいと考えます。 そのアプローチを採用する場合、"
-"単純に <literal>Session</literal> をオープンしてください:"
+"通常、開発者は <interfacename>org.hibernate.SessionFactory</interfacename>
を"
+"生成し、 SessionFactory で JDBC コネクションをプーリングしたいと考えます。そ"
+"のアプローチを採用する場合、単純に <interfacename>org.hibernate.Session</"
+"interfacename> をオープンしてください:"
-#. Tag: programlisting
-#: configuration.xml:146
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Session session = sessions.openSession(); // open a new
Session]]>"
-msgstr ""
-
-#. Tag: para
-#: configuration.xml:148
-#, fuzzy, no-c-format
-msgid ""
"Once you start a task that requires access to the database, a JDBC "
"connection will be obtained from the pool."
msgstr ""
-"これだけで、プーリングしたJDBCコネクションを使って目的のデータベース にアクセ"
-"スすることができます。"
+"これだけで、プーリングした JDBC コネクションを使って目的のデータベースにアク"
+"セスすることができます。"
#. Tag: para
-#: configuration.xml:153
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Before you can do this, you first need to pass some JDBC connection "
"properties to Hibernate. All Hibernate property names and semantics are "
@@ -288,106 +227,87 @@
"The most important settings for JDBC connection configuration are outlined "
"below."
msgstr ""
-"そのためには、JDBCコネクションのプロパティをHibernateに設定する必要がありま"
-"す。 すべてのHibernateプロパティ名とセマンティクスは <literal>org.hibernate."
-"cfg.Environment</literal> クラスに定義されています。 この設定はJDBCコネクショ"
-"ン設定の中で一番重要なものです。"
+"そのためには、 JDBC コネクションのプロパティを Hibernate に設定する必要があり"
+"ます。すべての Hibernate プロパティ名とセマンティクスは <classname>org."
+"hibernate.cfg.Environment</classname> クラスに定義されています。この設定は "
+"JDBC コネクション設定の中で一番重要なものです。"
#. Tag: para
-#: configuration.xml:159
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate will obtain and pool connections using <classname>java.sql."
"DriverManager</classname> if you set the following properties:"
msgstr ""
-"もし、以下のプロパティを設定すると、Hibernateはコネクションを取得する(プール"
-"も)ために <literal>java.sql.DriverManager</literal> を使います。"
+"もし、以下のプロパティを設定すると、 Hibernate はコネクションを取得するために"
+"(プールも) <classname>java.sql.DriverManager</classname> を使います:"
#. Tag: title
-#: configuration.xml:165
#, no-c-format
msgid "Hibernate JDBC Properties"
-msgstr "Hibernate JDBCプロパティ"
+msgstr "Hibernate JDBC プロパティ"
-#. Tag: entry
-#: configuration.xml:171 configuration.xml:257 configuration.xml:353
-#: configuration.xml:546 configuration.xml:741 configuration.xml:848
-#: configuration.xml:936
+#. Tag: para
#, no-c-format
msgid "Property name"
msgstr "プロパティ名"
-#. Tag: entry
-#: configuration.xml:172 configuration.xml:258 configuration.xml:354
-#: configuration.xml:547 configuration.xml:742 configuration.xml:849
-#: configuration.xml:937
+#. Tag: para
#, no-c-format
msgid "Purpose"
msgstr "意味"
-#. Tag: property
-#: configuration.xml:178
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.driver_class"
-msgstr "hibernate.connection.driver_class"
+msgid "<property>hibernate.connection.driver_class</property>"
+msgstr "<property>hibernate.connection.driver_class</property>"
-#. Tag: emphasis
-#: configuration.xml:181
+#. Tag: para
#, no-c-format
-msgid "JDBC driver class"
-msgstr "JDBCドライバクラス"
+msgid "<emphasis>JDBC driver class</emphasis>"
+msgstr "JDBC のドライバークラス"
-#. Tag: property
-#: configuration.xml:186
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.url"
-msgstr "hibernate.connection.url"
+msgid "<property>hibernate.connection.url</property>"
+msgstr "<property>hibernate.connection.url</property>"
-#. Tag: emphasis
-#: configuration.xml:189
+#. Tag: para
#, no-c-format
-msgid "JDBC URL"
-msgstr "jdbc URL"
+msgid "<emphasis>JDBC URL</emphasis>"
+msgstr ""
-#. Tag: property
-#: configuration.xml:194 configuration.xml:288
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.username"
-msgstr "hibernate.connection.username"
+msgid "<property>hibernate.connection.username</property>"
+msgstr "<property>hibernate.connection.username</property>"
-#. Tag: emphasis
-#: configuration.xml:197
-#, no-c-format
-msgid "database user"
-msgstr "database user"
+#. Tag: para
+#, fuzzy, no-c-format
+msgid "<emphasis>database user</emphasis>"
+msgstr "<emphasis>データベースユーザ</emphasis> (オプション)"
-#. Tag: property
-#: configuration.xml:202 configuration.xml:296
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.password"
-msgstr "hibernate.connection.password"
+msgid "<property>hibernate.connection.password</property>"
+msgstr "<property>hibernate.connection.password</property>"
-#. Tag: emphasis
-#: configuration.xml:205
-#, no-c-format
-msgid "database user password"
-msgstr "database user password"
+#. Tag: para
+#, fuzzy, no-c-format
+msgid "<emphasis>database user password</emphasis>"
+msgstr "<emphasis>データベースユーザのパスワード</emphasis> (オプション)"
-#. Tag: property
-#: configuration.xml:210
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.pool_size"
-msgstr "hibernate.connection.pool_size"
+msgid "<property>hibernate.connection.pool_size</property>"
+msgstr "<property>hibernate.connection.pool_size</property>"
-#. Tag: emphasis
-#: configuration.xml:213
+#. Tag: para
#, no-c-format
-msgid "maximum number of pooled connections"
-msgstr "プールするコネクションの最大数"
+msgid "<emphasis>maximum number of pooled connections</emphasis>"
+msgstr "<emphasis>プールするコネクションの最大数</emphasis>"
#. Tag: para
-#: configuration.xml:220
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate's own connection pooling algorithm is, however, quite rudimentary.
"
"It is intended to help you get started and is <emphasis>not intended for use
"
@@ -397,18 +317,17 @@
"with connection pool specific settings. This will turn off Hibernate's "
"internal pool. For example, you might like to use c3p0."
msgstr ""
-"Hibernateのコネクションプールアルゴリズムは非常に初歩的なものです。 これはす"
-"ぐに始められるようにと用意されたもので、<emphasis>製品として使用することを意"
-"図していません</emphasis> 。 また、パフォーマンスのテストのためのものでもあり"
-"ません。 最高のパフォーマンスと安定性を持ったプールを実現したければ、サード"
+"Hibernate のコネクションプールアルゴリズムは非常に初歩的なものです。これはす"
+"ぐに始められるようにと用意されたもので、 <emphasis>製品として使用することを意"
+"図していません</emphasis> 。また、パフォーマンスのテストのためのものでもあり"
+"ません。最高のパフォーマンスと安定性を持ったプールを実現したければ、サード"
"パーティのツールをお勧めします。 <literal>hibernate.connection.pool_size</"
-"literal> プロパティに 適切なコネクションプールサイズを記述してください。 この"
-"ままだとHibernateのコネクションプールを使います。 例えば次のようにC3P0を使い"
-"ます。"
+"literal> プロパティと適切なコネクションプールの設定を置き換えてください。これ"
+"により Hibernate のインターナルプールを無効にします。例えば次のように C3P0 を"
+"使います。"
#. Tag: para
-#: configuration.xml:230
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"C3P0 is an open source JDBC connection pool distributed along with Hibernate
"
"in the <filename>lib</filename> directory. Hibernate will use its
"
@@ -418,156 +337,117 @@
"<filename>hibernate.properties</filename> and the Hibernate web site
for "
"more information."
msgstr ""
-"C3P0はオープンソースJDBCコネクションプールで、Hibernateの <literal>lib</"
-"literal> ディレクトリにあります。もし、<literal>hibernate.c3p0.*</literal> プ"
-"ロパティを セットすれば、Hibernateは、 <literal>C3P0ConnectionProvider</"
-"literal> を使います。 もしProxoolを使いたい場合は、 <literal>hibernate."
-"properties</literal> パッケージを 参照したり、HibernateのWebサイトでより多く"
-"の情報を取得してください。"
+"C3P0 はオープンソース JDBC コネクションプールで、 Hibernate の <literal>lib</"
+"literal> ディレクトリにあります。もし、 <literal>hibernate.c3p0.*</literal> "
+"プロパティをセットすれば、 Hibernate は、 <literal>C3P0ConnectionProvider</"
+"literal> を使います。もし Proxool を使いたい場合は、 <literal>hibernate."
+"properties</literal> パッケージを参照したり、 Hibernate の Web サイトでより多"
+"くの情報を取得してください。"
#. Tag: para
-#: configuration.xml:238
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following is an example <filename>hibernate.properties</filename>
file "
"for c3p0:"
msgstr ""
-"C3P0用の <literal>hibernate.properties</literal> ファイルを例として示します:"
+"C3P0 用の <literal>hibernate.properties</literal> ファイルを例として示しま"
+"す:"
-#. Tag: programlisting
-#: configuration.xml:242
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[hibernate.connection.driver_class = org.postgresql.Driver\n"
-"hibernate.connection.url = jdbc:postgresql://localhost/mydatabase\n"
-"hibernate.connection.username = myuser\n"
-"hibernate.connection.password = secret\n"
-"hibernate.c3p0.min_size=5\n"
-"hibernate.c3p0.max_size=20\n"
-"hibernate.c3p0.timeout=1800\n"
-"hibernate.c3p0.max_statements=50\n"
-"hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect]]>"
-msgstr ""
-
-#. Tag: para
-#: configuration.xml:244
-#, fuzzy, no-c-format
-msgid ""
"For use inside an application server, you should almost always configure "
"Hibernate to obtain connections from an application server "
"<interfacename>javax.sql.Datasource</interfacename> registered in JNDI.
You "
"will need to set at least one of the following properties:"
msgstr ""
-"アプリケーションサーバ上で使う場合は、Hibernateを設定し、 アプリケーション"
-"サーバからコネクションを取得するようにしてください。 <literal>Datasource</"
-"literal> をJNDIに登録します。そして プロパティを以下のように設定してくださ"
-"い。"
+"アプリケーションサーバー上で使う場合は、 Hibernate を設定し、アプリケーション"
+"サーバーからコネクションを取得するようにしてください。 <interfacename>javax."
+"sql.Datasource</interfacename> を JNDI に登録します。そしてプロパティを以下の"
+"ように設定してください:"
#. Tag: title
-#: configuration.xml:251
#, no-c-format
msgid "Hibernate Datasource Properties"
msgstr "Hibernate データソースプロパティ"
-#. Tag: property
-#: configuration.xml:264
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.datasource"
-msgstr "hibernate.connection.datasource"
+msgid "<property>hibernate.connection.datasource</property>"
+msgstr "<property>hibernate.connection.datasource</property>"
-#. Tag: emphasis
-#: configuration.xml:267
-#, no-c-format
-msgid "datasource JNDI name"
-msgstr "データソースのJNDI名"
+#. Tag: para
+#, fuzzy, no-c-format
+msgid "<emphasis>datasource JNDI name</emphasis>"
+msgstr "<emphasis>データベースユーザ</emphasis> (オプション)"
-#. Tag: property
-#: configuration.xml:272
+#. Tag: para
#, no-c-format
-msgid "hibernate.jndi.url"
-msgstr "hibernate.jndi.url"
+msgid "<property>hibernate.jndi.url</property>"
+msgstr "<property>hibernate.jndi.url</property>"
-#. Tag: entry
-#: configuration.xml:274
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "<emphasis>URL of the JNDI provider</emphasis> (optional)"
-msgstr "JNDIプロバイダのURL"
+msgstr "<emphasis>JNDI プロバイダの URL</emphasis> (オプション)"
-#. Tag: property
-#: configuration.xml:280
+#. Tag: para
#, no-c-format
-msgid "hibernate.jndi.class"
-msgstr "hibernate.jndi.class"
+msgid "<property>hibernate.jndi.class</property>"
+msgstr "<property>hibernate.jndi.class</property>"
-#. Tag: entry
-#: configuration.xml:282
+#. Tag: para
#, no-c-format
msgid ""
"<emphasis>class of the JNDI
<literal>InitialContextFactory</literal></"
"emphasis> (optional)"
msgstr ""
+"<emphasis>JNDI のクラス
<literal>InitialContextFactory</literal></emphasis> "
+"(オプション)"
-#. Tag: entry
-#: configuration.xml:290
+#. Tag: para
#, no-c-format
msgid "<emphasis>database user</emphasis> (optional)"
-msgstr ""
+msgstr "<emphasis>データベースユーザ</emphasis> (オプション)"
-#. Tag: entry
-#: configuration.xml:298
+#. Tag: para
#, no-c-format
msgid "<emphasis>database user password</emphasis> (optional)"
-msgstr ""
+msgstr "<emphasis>データベースユーザのパスワード</emphasis> (オプション)"
#. Tag: para
-#: configuration.xml:306
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Here is an example <filename>hibernate.properties</filename> file for
an "
"application server provided JNDI datasource:"
msgstr ""
-"アプリケーションサーバから提供されたJNDIデータソースを使う "
-"<literal>hibernate.properties</literal> ファイルの例を示します:"
+"アプリケーションサーバーから提供された JNDI データソースを使う "
+"<filename>hibernate.properties</filename> ファイルの例を示します:"
-#. Tag: programlisting
-#: configuration.xml:311
-#, no-c-format
-msgid ""
-"<![CDATA[hibernate.connection.datasource = java:/comp/env/jdbc/test\n"
-"hibernate.transaction.factory_class = \\\n"
-" org.hibernate.transaction.JTATransactionFactory\n"
-"hibernate.transaction.manager_lookup_class = \\\n"
-" org.hibernate.transaction.JBossTransactionManagerLookup\n"
-"hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect]]>"
-msgstr ""
-
#. Tag: para
-#: configuration.xml:313
#, no-c-format
msgid ""
"JDBC connections obtained from a JNDI datasource will automatically "
"participate in the container-managed transactions of the application server."
msgstr ""
-"JNDIデータソースから取得したJDBCコネクションは、アプリケーションサーバの コン"
-"テナ管理トランザクションに自動的に参加します。"
+"JNDI データソースから取得した JDBC コネクションは、アプリケーションサーバーの"
+"コンテナ管理トランザクションに自動的に参加します。"
#. Tag: para
-#: configuration.xml:318
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Arbitrary connection properties can be given by prepending "
"\"<literal>hibernate.connection</literal>\" to the connection
property name. "
"For example, you can specify a <property>charSet</property> connection
"
"property using
<property>hibernate.connection.charSet</property>."
msgstr ""
-"任意のコネクションプロパティは、与えられた” <literal>hibernate.connnection</"
-"literal> ” プロパティ名によって与えられます。例えば、 <literal>charSet</"
-"literal> を設定したい場合は、 <literal>hibernate.connection.charSet</"
-"literal> を使います。"
+"任意のコネクションプロパティは、追加された \"<literal>hibernate.connnection</"
+"literal>\" プロパティ名によって与えられます。例えば、 <property>charSet</"
+"property> を設定したい場合は、 <property>hibernate.connection.charSet</"
+"property> を使います。"
#. Tag: para
-#: configuration.xml:324
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can define your own plugin strategy for obtaining JDBC connections by "
"implementing the interface <interfacename>org.hibernate.connection."
@@ -575,76 +455,69 @@
"implementation via the
<property>hibernate.connection.provider_class</"
"property> property."
msgstr ""
-"JDBCコネクションを取得する戦略を持つ独自のプラグインを定義する場合は、 "
-"<literal>org.hibernate.connection.ConnectionProvider</literal>
インターフェイ"
-"スを 実装してください。そして、実装クラスを <literal>hibernate.connection."
-"provider_class</literal> に設定してください。"
+"JDBC コネクションを取得する戦略を持つ独自のプラグインを定義する場合は、 "
+"<interfacename>org.hibernate.connection.ConnectionProvider</interfacename>
イ"
+"ンターフェースを実装してください。そして、実装クラスを <property>hibernate."
+"connection.provider_class</property> に設定してください。"
#. Tag: title
-#: configuration.xml:333
#, no-c-format
msgid "Optional configuration properties"
msgstr "オプション設定プロパティ"
#. Tag: para
-#: configuration.xml:335
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There are a number of other properties that control the behavior of "
"Hibernate at runtime. All are optional and have reasonable default values."
msgstr ""
-"これらのプロパティはHibernateの挙動を制御するものです。 これらのプロパティは"
-"すべて妥当なデフォルト値があり、任意で設定します。"
+"これらのプロパティはランタイムに Hibernate の挙動を制御するものです。これらの"
+"プロパティはすべて妥当なデフォルト値があり、任意で設定します。"
-#. Tag: warning
-#: configuration.xml:341
+#. Tag: para
#, fuzzy, no-c-format
msgid ""
-"<emphasis>Some of these properties are \"system-level\"
only.</emphasis> "
-"System-level properties can be set only via <literal>java
-Dproperty=value</"
-"literal> or <filename>hibernate.properties</filename>. They "
-"<emphasis>cannot</emphasis> be set by the other techniques described
above."
+"Some of these properties are system-level only. System-level properties can "
+"be set only via <code>java -Dproperty=value</code> or
<filename>hibernate."
+"properties</filename>. They <emphasis>cannot</emphasis> be set by
the other "
+"techniques described above."
msgstr ""
-"<emphasis>注意:これらのプロパティは\"システムレベル\"のみです。</emphasis> "
+"<emphasis>注意:これらのプロパティは「システムレベル」のみです。</emphasis> "
"システムレベルプロパティは <literal>java -Dproperty=value</literal> 、もしく"
-"は <literal>hibernate.properties</literal> でのみ設定可能です。 それ以外の設"
-"定方法は <emphasis>ありません</emphasis> 。"
+"は <literal>hibernate.properties</literal> でのみ設定可能です。それ以外の設定"
+"方法は <emphasis>ありません</emphasis> 。"
#. Tag: title
-#: configuration.xml:347
#, no-c-format
msgid "Hibernate Configuration Properties"
-msgstr "Hibernate設定プロパティ"
+msgstr "Hibernate 設定プロパティ"
-#. Tag: property
-#: configuration.xml:360
+#. Tag: para
#, no-c-format
-msgid "hibernate.dialect"
-msgstr "hibernate.dialect"
+msgid "<property>hibernate.dialect</property>"
+msgstr "<property>hibernate.dialect</property>"
-#. Tag: entry
-#: configuration.xml:362
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"The classname of a Hibernate
<classname>org.hibernate.dialect.Dialect</"
"classname> which allows Hibernate to generate SQL optimized for a particular
"
"relational database."
msgstr ""
-"Hibernate <placeholder-1/> クラス名が入ります。 これはリレーショナルデータ"
-"ベースごとに最適化されたSQLを生成します。 <placeholder-2/>"
+"Hibernate のクラス名 <classname>org.hibernate.dialect.Dialect</classname>
が"
+"入ります。これはリレーショナルデータベースごとに最適化された SQL を生成しま"
+"す。"
#. Tag: para
-#: configuration.xml:365
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>full.classname.of."
"Dialect</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+"<emphasis
role=\"strong\">例</emphasis><literal>full.classname.of.Dialect</"
+"literal>"
#. Tag: para
-#: configuration.xml:369
#, no-c-format
msgid ""
"In most cases Hibernate will actually be able to choose the correct "
@@ -652,165 +525,135 @@
"the <literal>JDBC metadata</literal> returned by the JDBC
driver."
msgstr ""
-#. Tag: property
-#: configuration.xml:378
+#. Tag: para
#, no-c-format
-msgid "hibernate.show_sql"
-msgstr "hibernate.show_sql"
+msgid "<property>hibernate.show_sql</property>"
+msgstr "<property>hibernate.show_sql</property>"
-#. Tag: entry
-#: configuration.xml:380
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Write all SQL statements to console. This is an alternative to setting the "
"log category <literal>org.hibernate.SQL</literal> to
<literal>debug</"
"literal>."
msgstr ""
-"発行されたすべてのSQLをコンソールに出力します。 これはログカテゴリの "
-"<placeholder-1/> に <placeholder-2/> を設定する方法の代替手段です。 "
-"<placeholder-3/>"
+"発行されたすべての SQL をコンソールに出力します。これはログカテゴリの "
+"<literal>org.hibernate.SQL</literal> に
<literal>debug</literal> を設定する方"
+"法の代替手段です。"
#. Tag: para
-#: configuration.xml:384 configuration.xml:396 configuration.xml:490
-#: configuration.xml:503 configuration.xml:516 configuration.xml:529
-#: configuration.xml:581 configuration.xml:608 configuration.xml:621
-#: configuration.xml:676 configuration.xml:904 configuration.xml:919
-#: configuration.xml:1009
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>true</literal> | "
"<literal>false</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
+"<emphasis
role=\"strong\">例</emphasis><literal>true</literal> |
"
"<literal>false</literal>"
-#. Tag: property
-#: configuration.xml:392
+#. Tag: para
#, no-c-format
-msgid "hibernate.format_sql"
-msgstr "hibernate.format_sql"
+msgid "<property>hibernate.format_sql</property>"
+msgstr "<property>hibernate.format_sql</property>"
-#. Tag: entry
-#: configuration.xml:394
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "Pretty print the SQL in the log and console."
-msgstr "ログとコンソールのSQLを美しく表示します。 <placeholder-1/>"
+msgstr "ログとコンソールの SQL を整形して表示します。"
-#. Tag: property
-#: configuration.xml:404
+#. Tag: para
#, no-c-format
-msgid "hibernate.default_schema"
-msgstr "hibernate.default_schema"
+msgid "<property>hibernate.default_schema</property>"
+msgstr "<property>hibernate.default_schema</property>"
-#. Tag: entry
-#: configuration.xml:406
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Qualify unqualified table names with the given schema/tablespace in "
"generated SQL."
-msgstr ""
-"生成されるSQL文のテーブルに設定するスキーマ/テーブルスペースです。 "
-"<placeholder-1/>"
+msgstr "生成される SQL 文のテーブルに設定するスキーマ/テーブルスペースです。"
#. Tag: para
-#: configuration.xml:409
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>SCHEMA_NAME</literal>"
-msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+msgstr "<emphasis
role=\"strong\">例.</emphasis><literal>SCHEMA_NAME</literal>"
-#. Tag: property
-#: configuration.xml:417
+#. Tag: para
#, no-c-format
-msgid "hibernate.default_catalog"
-msgstr "hibernate.default_catalog"
+msgid "<property>hibernate.default_catalog</property>"
+msgstr "<property>hibernate.default_catalog</property>"
-#. Tag: entry
-#: configuration.xml:419
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Qualifies unqualified table names with the given catalog in generated SQL."
-msgstr "生成されるSQL文のテーブルに設定するカタログです。 <placeholder-1/>"
+msgstr "生成される SQL 文のテーブルに設定するカタログです。"
#. Tag: para
-#: configuration.xml:422
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>CATALOG_NAME</literal>"
-msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+msgstr "<emphasis
role=\"strong\">例</emphasis><literal>CATALOG_NAME</literal>"
-#. Tag: property
-#: configuration.xml:430
+#. Tag: para
#, no-c-format
-msgid "hibernate.session_factory_name"
-msgstr "hibernate.session_factory_name"
+msgid "<property>hibernate.session_factory_name</property>"
+msgstr "<property>hibernate.session_factory_name</property>"
-#. Tag: entry
-#: configuration.xml:432
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"The <interfacename>org.hibernate.SessionFactory</interfacename> will be
"
"automatically bound to this name in JNDI after it has been created."
msgstr ""
-"<placeholder-1/> は生成後、この名前でJNDIに登録されます。 <placeholder-2/>"
+"<interfacename>org.hibernate.SessionFactory</interfacename>
は生成後、この名"
+"前で JNDI に自動的に登録されます。"
#. Tag: para
-#: configuration.xml:435 configuration.xml:875
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>jndi/composite/name</"
"literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+"<emphasis
role=\"strong\">例</emphasis><literal>jndi/composite/name</literal>"
-#. Tag: property
-#: configuration.xml:443
+#. Tag: para
#, no-c-format
-msgid "hibernate.max_fetch_depth"
-msgstr "hibernate.max_fetch_depth"
+msgid "<property>hibernate.max_fetch_depth</property>"
+msgstr "<property>hibernate.max_fetch_depth</property>"
-#. Tag: entry
-#: configuration.xml:445
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Sets a maximum \"depth\" for the outer join fetch tree for single-ended
"
"associations (one-to-one, many-to-one). A <literal>0</literal> disables
"
"default outer join fetching."
msgstr ""
-"外部結合フェッチの最大深度を設定します。結合する関連は 対一関連のみ(一対一、"
-"多対一)です。 <placeholder-1/> を指定すると外部結合フェッチは無効になりま"
-"す。 <placeholder-2/>"
+"外部結合フェッチの最大深度を設定します。結合する関連は対一関連のみ(一対一、"
+"多対一)です。 <literal>0</literal> を指定すると外部結合フェッチは無効になり"
+"ます。"
#. Tag: para
-#: configuration.xml:449
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis> recommended values
between "
"<literal>0</literal> and <literal>3</literal>"
msgstr ""
"<emphasis role=\"strong\">例:</emphasis> 推奨する値は
<literal>0</literal> "
-"から <literal>3</literal> です。"
+"から <literal>3</literal> の間です。"
-#. Tag: property
-#: configuration.xml:458
+#. Tag: para
#, no-c-format
-msgid "hibernate.default_batch_fetch_size"
-msgstr "hibernate.default_batch_fetch_size"
+msgid "<property>hibernate.default_batch_fetch_size</property>"
+msgstr "<property>hibernate.default_batch_fetch_size</property>"
-#. Tag: entry
-#: configuration.xml:460
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "Sets a default size for Hibernate batch fetching of associations."
-msgstr "関連フェッチのデフォルトバッチサイズを指定します。 <placeholder-1/>"
+msgstr "関連フェッチのデフォルト Hibernate バッチサイズを指定します。"
#. Tag: para
-#: configuration.xml:462
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis> recommended values
<literal>4</"
"literal>, <literal>8</literal>,
<literal>16</literal>"
@@ -818,24 +661,21 @@
"<emphasis role=\"strong\">例:</emphasis> 推奨する値は
<literal>4</"
"literal> , <literal>8</literal> , <literal>16</literal>
です。"
-#. Tag: property
-#: configuration.xml:471
+#. Tag: para
#, no-c-format
-msgid "hibernate.default_entity_mode"
-msgstr "hibernate.default_entity_mode"
+msgid "<property>hibernate.default_entity_mode</property>"
+msgstr "<property>hibernate.default_entity_mode</property>"
-#. Tag: entry
-#: configuration.xml:473
+#. Tag: para
#, fuzzy, no-c-format
msgid ""
"Sets a default mode for entity representation for all sessions opened from "
-"this <literal>SessionFactory</literal>"
+"this <literal>SessionFactory</literal>."
msgstr ""
-"<placeholder-1/> からセッションをオープンしたときに 使用するエンティティのデ"
-"フォルトモードを設定します。 <placeholder-2/>"
+"<literal>SessionFactory</literal> からセッションをオープンしたときに使用する"
+"エンティティのデフォルトモードを設定します。"
#. Tag: para
-#: configuration.xml:476
#, no-c-format
msgid ""
"<literal>dynamic-map</literal>, <literal>dom4j</literal>,
<literal>pojo</"
@@ -844,206 +684,181 @@
"<literal>dynamic-map</literal>, <literal>dom4j</literal>,
<literal>pojo</"
"literal>"
-#. Tag: property
-#: configuration.xml:484
+#. Tag: para
#, no-c-format
-msgid "hibernate.order_updates"
-msgstr "hibernate.order_updates"
+msgid "<property>hibernate.order_updates</property>"
+msgstr "<property>hibernate.order_updates</property>"
-#. Tag: entry
-#: configuration.xml:486
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Forces Hibernate to order SQL updates by the primary key value of the items "
"being updated. This will result in fewer transaction deadlocks in highly "
"concurrent systems."
msgstr ""
-"項目が更新されたときに、別のSQLで主キーを更新することを強制します。 この場"
+"項目が更新されたときに、別の SQL で主キーを更新することを強制します。この場"
"合、同時実行可能なシステムでは、まれにデッドロックが発生する可能性がありま"
-"す。 <placeholder-1/>"
+"す。"
-#. Tag: property
-#: configuration.xml:498
+#. Tag: para
#, no-c-format
-msgid "hibernate.generate_statistics"
-msgstr "hibernate.generate_statistics"
+msgid "<property>hibernate.generate_statistics</property>"
+msgstr "<property>hibernate.generate_statistics</property>"
-#. Tag: entry
-#: configuration.xml:500
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"If enabled, Hibernate will collect statistics useful for performance tuning."
msgstr ""
-"有効の場合、Hibernateはパフォーマンスチューニングに 有効な統計情報を収集しま"
-"す。 <placeholder-1/>"
+"有効の場合、 Hibernate はパフォーマンスチューニングに有効な統計情報を収集しま"
+"す。"
-#. Tag: property
-#: configuration.xml:511
+#. Tag: para
#, no-c-format
-msgid "hibernate.use_identifier_rollback"
-msgstr "hibernate.use_identifer_rollback"
+msgid "<property>hibernate.use_identifier_rollback</property>"
+msgstr "<property>hibernate.use_identifier_rollback</property>"
-#. Tag: entry
-#: configuration.xml:513
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"If enabled, generated identifier properties will be reset to default values "
"when objects are deleted."
msgstr ""
-"有効の場合、オブジェクトが削除されたときに 識別子プロパティをリセットし、デ"
-"フォルト値にしたものを生成します。 <placeholder-1/>"
+"有効の場合、オブジェクトが削除されたときに識別子プロパティをリセットし、デ"
+"フォルト値にしたものを生成します。"
-#. Tag: property
-#: configuration.xml:524
+#. Tag: para
#, no-c-format
-msgid "hibernate.use_sql_comments"
-msgstr "hibernate.use_sql_comments"
+msgid "<property>hibernate.use_sql_comments</property>"
+msgstr "<property>hibernate.use_sql_comments</property>"
-#. Tag: entry
-#: configuration.xml:526
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"If turned on, Hibernate will generate comments inside the SQL, for easier "
"debugging, defaults to <literal>false</literal>."
msgstr ""
-"有効の場合、SQL内にコメントを生成します。これはデバックを容易にします。 デ"
-"フォルトの値は <placeholder-1/> です。 <placeholder-2/>"
+"有効の場合、 SQL 内にコメントを生成します。これはデバックを容易にします。デ"
+"フォルトの値は <literal>false</literal> です。"
#. Tag: title
-#: configuration.xml:540
#, no-c-format
msgid "Hibernate JDBC and Connection Properties"
msgstr "Hibernate JDBC とコネクションプロパティ"
-#. Tag: property
-#: configuration.xml:553
+#. Tag: para
#, no-c-format
-msgid "hibernate.jdbc.fetch_size"
-msgstr "hibernate.jdbc.fetch_size"
+msgid "<property>hibernate.jdbc.fetch_size</property>"
+msgstr "<property>hibernate.jdbc.fetch_size</property>"
-#. Tag: entry
-#: configuration.xml:555
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"A non-zero value determines the JDBC fetch size (calls
<literal>Statement."
"setFetchSize()</literal>)."
msgstr ""
-"値が0でない場合、JDBCフェッチサイズを決定します ( <placeholder-1/> を呼びま"
-"す)。"
+"値が0でない場合、 JDBC フェッチサイズを決定します ( <literal>Statement."
+"setFetchSize()</literal> を呼びます)。"
-#. Tag: property
-#: configuration.xml:562
+#. Tag: para
#, no-c-format
-msgid "hibernate.jdbc.batch_size"
-msgstr "hibernate.jdbc.batch_size"
+msgid "<property>hibernate.jdbc.batch_size</property>"
+msgstr "<property>hibernate.jdbc.batch_size</property>"
-#. Tag: entry
-#: configuration.xml:564
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "A non-zero value enables use of JDBC2 batch updates by Hibernate."
-msgstr ""
-"値が0でない場合、HibernateがJDBC2バッチ更新を使用します。 <placeholder-1/>"
+msgstr "値が0でない場合、 Hibernate が JDBC2 バッチ更新を使用します。"
#. Tag: para
-#: configuration.xml:566
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis> recommended values
between "
"<literal>5</literal> and <literal>30</literal>"
msgstr ""
"<emphasis role=\"strong\">例:</emphasis> 推奨する値は
<literal>5</literal> "
-"から <literal>30</literal> です。"
+"から <literal>30</literal> の間です。"
-#. Tag: property
-#: configuration.xml:574
+#. Tag: para
#, no-c-format
-msgid "hibernate.jdbc.batch_versioned_data"
-msgstr "hibernate.jdbc.batch_versioned_data"
+msgid "<property>hibernate.jdbc.batch_versioned_data</property>"
+msgstr "<property>hibernate.jdbc.batch_versioned_data</property>"
-#. Tag: entry
-#: configuration.xml:576
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Set this property to <literal>true</literal> if your JDBC driver
returns "
"correct row counts from <literal>executeBatch()</literal>. Iit is
usually "
"safe to turn this option on. Hibernate will then use batched DML for "
"automatically versioned data. Defaults to
<literal>false</literal>."
msgstr ""
-"もしJDBCドライバが <placeholder-1/> によって正確な行数を 返す場合、このプロパ"
-"ティを <placeholder-2/> にしてください (通常はこのオプションをONにしま"
-"す)。 Hibernateは、自動バージョンデータのためバッチDMLを使います。 デフォル"
-"トの値は <placeholder-3/> です。 <placeholder-4/>"
+"もし JDBC ドライバが <literal>executeBatch()</literal> によって正確な行数を返"
+"す場合、このプロパティを <literal>true</literal> にしてください (通常はこの"
+"オプションを ON するのが安全です)。 Hibernate は、自動バージョンデータのため"
+"バッチ DML を使います。デフォルトの値は <literal>false</literal> です。"
-#. Tag: property
-#: configuration.xml:589
+#. Tag: para
#, no-c-format
-msgid "hibernate.jdbc.factory_class"
-msgstr "hibernate.jdbc.factory_class"
+msgid "<property>hibernate.jdbc.factory_class</property>"
+msgstr "<property>hibernate.jdbc.factory_class</property>"
-#. Tag: entry
-#: configuration.xml:591
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Select a custom
<interfacename>org.hibernate.jdbc.Batcher</interfacename>. "
"Most applications will not need this configuration property."
msgstr ""
-"カスタム <placeholder-1/> を選びます。 ほとんどのアプリケーションに、この設定"
-"は必要ありません。 <placeholder-2/>"
+"カスタム <interfacename>org.hibernate.jdbc.Batcher</interfacename>
を選びま"
+"す。ほとんどのアプリケーションに、この設定プロパティは必要ありません。"
#. Tag: para
-#: configuration.xml:594
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>classname.of."
"BatcherFactory</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+"<emphasis
role=\"strong\">例</emphasis><literal>classname.of.BatcherFactory</"
+"literal>"
-#. Tag: property
-#: configuration.xml:602
+#. Tag: para
#, no-c-format
-msgid "hibernate.jdbc.use_scrollable_resultset"
-msgstr "hibernate.jdbc.use_scrollable_resultset"
+msgid
"<property>hibernate.jdbc.use_scrollable_resultset</property>"
+msgstr
"<property>hibernate.jdbc.use_scrollable_resultset</property>"
-#. Tag: entry
-#: configuration.xml:604
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Enables use of JDBC2 scrollable resultsets by Hibernate. This property is "
"only necessary when using user-supplied JDBC connections. Hibernate uses "
"connection metadata otherwise."
msgstr ""
-"スクロール可能なリザルトセットを、Hibernateが使用します。 このプロパティは、"
-"JDBCコネクションがコネクションメタデータを サポートしていることが必須条件にな"
-"ります。 <placeholder-1/>"
+"Hibernate による JDBC2 のスクロール可能なリザルトセットの使用を有効にします。"
+"このプロパティは、ユーザーによって提供された JDBC コネクションを使用している"
+"場合のみ必要で、そうでなければ Hibernate はコネクションメタデータを使用しま"
+"す。"
-#. Tag: property
-#: configuration.xml:616
+#. Tag: para
#, no-c-format
-msgid "hibernate.jdbc.use_streams_for_binary"
-msgstr "hibernate.jdbc.use_streams_for_binary"
+msgid "<property>hibernate.jdbc.use_streams_for_binary</property>"
+msgstr
"<property>hibernate.jdbc.use_streams_for_binary</property>"
-#. Tag: entry
-#: configuration.xml:618
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Use streams when writing/reading <literal>binary</literal> or "
"<literal>serializable</literal> types to/from JDBC.
<emphasis>*system-level "
"property*</emphasis>"
msgstr ""
-"JDBCへ/から <placeholder-1/> や <placeholder-2/> の書き込み/読み込みストリー"
-"ムを使います(システムレベルのプロパティ)。 <placeholder-3/>"
+"JDBC へ/から <literal>binary</literal> や
<literal>serializable</literal> の"
+"書き込み/読み込みストリームを使います (システムレベルのプロパティ)。"
-#. Tag: property
-#: configuration.xml:629
+#. Tag: para
#, no-c-format
-msgid "hibernate.jdbc.use_get_generated_keys"
-msgstr "hibernate.jdbc.use_get_generated_keys"
+msgid "<property>hibernate.jdbc.use_get_generated_keys</property>"
+msgstr
"<property>hibernate.jdbc.use_get_generated_keys</property>"
-#. Tag: entry
-#: configuration.xml:631
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Enables use of JDBC3
<literal>PreparedStatement.getGeneratedKeys()</literal> "
"to retrieve natively generated keys after insert. Requires JDBC3+ driver and
"
@@ -1051,97 +866,82 @@
"identifier generators. By default, it tries to determine the driver "
"capabilities using connection metadata."
msgstr ""
-"挿入の後に自動生成された主キーを取得するための JDBC3 <placeholder-1/> の使用"
-"を有効にします。 これはJDBC3+ドライバとJRE1.4+を必要とし、 もしHibernateの識"
-"別子ジェネレータに問題が発生するようならfalseに設定してください。 デフォルト"
-"ではコネクションメタデータを使いドライバの能力を決定します。 <placeholder-2/>"
+"挿入の後に自動生成された主キーを取得するための JDBC3 "
+"<literal>PreparedStatement.getGeneratedKeys()</literal>
の使用を有効にしま"
+"す。これは JDBC3+ ドライバと JRE1.4+ を必要とし、もし Hibernate の識別子ジェ"
+"ネレータに問題が発生するようなら false に設定してください。デフォルトではコネ"
+"クションメタデータを使いドライバの能力を決定します。"
#. Tag: para
-#: configuration.xml:637 configuration.xml:767 configuration.xml:779
-#: configuration.xml:793 configuration.xml:831
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<emphasis role=\"strong\">e.g.</emphasis>
<literal>true|false</literal>"
-msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+msgstr "<emphasis
role=\"strong\">例</emphasis><literal>true|false</literal>"
-#. Tag: property
-#: configuration.xml:645
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.provider_class"
-msgstr "hibernate.connection.provider_class"
+msgid "<property>hibernate.connection.provider_class</property>"
+msgstr "<property>hibernate.connection.provider_class</property>"
-#. Tag: entry
-#: configuration.xml:647
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"The classname of a custom <interfacename>org.hibernate.connection."
"ConnectionProvider</interfacename> which provides JDBC connections to "
"Hibernate."
msgstr ""
-"JDBCコネクションをHibernateに提供する独自の <placeholder-1/> の 名前を指定し"
-"ます。 <placeholder-2/>"
+"JDBC コネクションを Hibernate に提供する独自の <literal>ConnectionProvider</"
+"literal> のクラス名。"
#. Tag: para
-#: configuration.xml:650
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>classname.of."
"ConnectionProvider</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+"<emphasis
role=\"strong\">例</emphasis><literal>classname.of."
+"ConnectionProvider</literal>"
-#. Tag: property
-#: configuration.xml:658
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.isolation"
-msgstr "hibernate.connection.isolation"
+msgid "<property>hibernate.connection.isolation</property>"
+msgstr "<property>hibernate.connection.isolation</property>"
-#. Tag: entry
-#: configuration.xml:660
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Sets the JDBC transaction isolation level. Check
<interfacename>java.sql."
"Connection</interfacename> for meaningful values, but note that most "
"databases do not support all isolation levels and some define additional, "
"non-standard isolations."
msgstr ""
-"JDBCトランザクション分離レベルを設定します。 妥当な値を調べるためには "
-"<placeholder-1/> をチェックしてください。 しかし使用するデータベースが、すべ"
-"ての分離レベルをサポートしているとは限りません。 <placeholder-2/>"
+"JDBC トランザクション分離レベルを設定します。妥当な値を調べるためには "
+"<interfacename>java.sql.Connection</interfacename> をチェックしてください。し"
+"かし使用するデータベースが、すべての分離レベルをサポートしているとは限りませ"
+"ん。"
#. Tag: para
-#: configuration.xml:664
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<emphasis role=\"strong\">e.g.</emphasis>
<literal>1, 2, 4, 8</literal>"
-msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+msgstr "<emphasis
role=\"strong\">例</emphasis><literal>1, 2, 4,
8</literal>"
-#. Tag: property
-#: configuration.xml:672
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.autocommit"
-msgstr "hibernate.connection.autocommit"
+msgid "<property>hibernate.connection.autocommit</property>"
+msgstr "<property>hibernate.connection.autocommit</property>"
-#. Tag: entry
-#: configuration.xml:674
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "Enables autocommit for JDBC pooled connections (it is not
recommended)."
msgstr ""
-"プールされているJDBCコネクションの自動コミットを有効にする(非推奨)。 "
-"<placeholder-1/>"
+"プールされている JDBC コネクションの自動コミットを有効にする(非推奨)。"
-#. Tag: property
-#: configuration.xml:684
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.release_mode"
-msgstr "hibernate.connection.release_mode"
+msgid "<property>hibernate.connection.release_mode</property>"
+msgstr "<property>hibernate.connection.release_mode</property>"
-#. Tag: entry
-#: configuration.xml:686
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Specifies when Hibernate should release JDBC connections. By default, a JDBC
"
"connection is held until the session is explicitly closed or disconnected. "
@@ -1153,480 +953,433 @@
"the JTA and CMT transaction strategies and
<literal>after_transaction</"
"literal> for the JDBC transaction strategy."
msgstr ""
-"HibernateがJDBCコネクションをリリースするかを指定します。デフォルトでは セッ"
-"ションが明示的にクローズまたは切断されてもコネクションは保持します。 アプリ"
-"ケーションサーバのJTAデータソースの場合、 すべてのJDBCコールの後、強制的にコ"
-"ネクションをリリースするために <placeholder-1/> を 使ってください。 非JTAコネ"
-"クションの場合、各トランザクションが終了したときに <placeholder-2/> を使い、"
-"コネクションをリリースしてください。 <placeholder-3/> にすると、 JTAやCMTトラ"
-"ンザクションの場合、 <placeholder-4/> でクローズし、 JDBCトランザクションの場"
-"合、 <placeholder-5/> でクローズします。
<placeholder-6/><placeholder-7/>"
+"Hibernate がいつ JDBC コネクションをリリースするかを指定します。デフォルトで"
+"はセッションが明示的にクローズまたは切断されてもコネクションは保持します。ア"
+"プリケーションサーバーの JTA データソースの場合、すべての JDBC コールの後、強"
+"制的にコネクションをリリースするために <literal>after_statement</literal> を"
+"使ってください。非 JTA コネクションの場合、各トランザクションが終了したとき"
+"に <literal>after_transaction</literal> を使い、コネクションをリリースしてく"
+"ださい。 <literal>auto</literal> にすると、 JTA や CMT トランザクションの場"
+"合、 <literal>after_statement</literal> でクローズし、 JDBC トランザクション"
+"の場合、 <literal>after_transaction</literal> でクローズします。"
#. Tag: para
-#: configuration.xml:697
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>auto</literal> (default) "
"| <literal>on_close</literal> |
<literal>after_transaction</literal> | "
"<literal>after_statement</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>auto</literal>
(default) | "
-"<literal>on_close</literal> |
<literal>after_transaction</literal> | "
+"<emphasis
role=\"strong\">例</emphasis><literal>auto</literal> (デフォルト)
"
+"| <literal>on_close</literal> |
<literal>after_transaction</literal> | "
"<literal>after_statement</literal>"
#. Tag: para
-#: configuration.xml:702
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This setting only affects <literal>Session</literal>s returned from
"
"<literal>SessionFactory.openSession</literal>. For
<literal>Session</"
"literal>s obtained through
<literal>SessionFactory.getCurrentSession</"
"literal>, the <literal>CurrentSessionContext</literal>
implementation "
"configured for use controls the connection release mode for those "
-"<literal>Session</literal>s. See"
+"<literal>Session</literal>s. See <xref
linkend=\"architecture-current-session"
+"\" />"
msgstr ""
-"注意してください。この設定は <literal>SessionFactory.openSession</literal> か"
-"ら 取得した <literal>Session</literal> だけに効果があります。 "
-"<literal>SessionFactory.getCurrentSession</literal> を通じて取得した "
-"<literal>Session</literal>
では、<literal>CurrentSessionContext</literal> の"
-"実装によって、コネクションのリリースモードを設定します。 <xref linkend="
-"\"architecture-current-session\"/> を参照してください。"
+"この設定は <literal>SessionFactory.openSession</literal> から取得した "
+"<literal>Session</literal> だけに効果があります。
<literal>SessionFactory."
+"getCurrentSession</literal> を通じて取得した <literal>Session</literal>
で"
+"は、 <literal>CurrentSessionContext</literal> の実装によって、コネクションの"
+"リリースモードを設定します。 <xref linkend=\"architecture-current-session\"/"
+"> を参照してください。"
-#. Tag: entry
-#: configuration.xml:713
+#. Tag: para
#, no-c-format
msgid ""
"<property>hibernate.connection.</property><emphasis><propertyName></"
"emphasis>"
msgstr ""
+"<property>hibernate.connection.</property><emphasis><propertyName></"
+"emphasis>"
-#. Tag: entry
-#: configuration.xml:716
+#. Tag: para
#, no-c-format
msgid ""
"Pass the JDBC property
<emphasis><propertyName></emphasis> to "
"<literal>DriverManager.getConnection()</literal>."
msgstr ""
+"JDBC プロパティ <emphasis><propertyName></emphasis> を "
+"<literal>DriverManager.getConnection()</literal> に渡します。"
-#. Tag: entry
-#: configuration.xml:722
-#, no-c-format
+#. Tag: para
+#, fuzzy, no-c-format
msgid ""
"<property>hibernate.jndi.</property><emphasis><propertyName></emphasis>"
msgstr ""
+"<literal>hibernate.jndi.</literal><emphasis><property></emphasis>
を"
+"使って、システムプロパティとして"
-#. Tag: entry
-#: configuration.xml:725
+#. Tag: para
#, no-c-format
msgid ""
"Pass the property <emphasis><propertyName></emphasis> to
the JNDI "
"<literal>InitialContextFactory</literal>."
msgstr ""
+"プロパティ <emphasis><propertyName></emphasis> を JNDI "
+"<literal>InitialContextFactory</literal> に渡します。"
#. Tag: title
-#: configuration.xml:735
#, no-c-format
msgid "Hibernate Cache Properties"
msgstr "Hibernate キャッシュプロパティ"
-#. Tag: literal
-#: configuration.xml:748
+#. Tag: para
#, no-c-format
-msgid "hibernate.cache.provider_class"
-msgstr "hibernate.cache.provider_class"
+msgid "<literal>hibernate.cache.provider_class</literal>"
+msgstr "<literal>hibernate.cache.provider_class</literal>"
-#. Tag: entry
-#: configuration.xml:750
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "The classname of a custom
<literal>CacheProvider</literal>."
-msgstr "カスタム <placeholder-1/> のクラス名です。 <placeholder-2/>"
+msgstr "カスタム <literal>CacheProvider</literal> のクラス名です。"
#. Tag: para
-#: configuration.xml:752
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>classname.of."
"CacheProvider</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+"<emphasis
role=\"strong\">例</emphasis><literal>classname.of.CacheProvider</"
+"literal>"
-#. Tag: literal
-#: configuration.xml:760
+#. Tag: para
#, no-c-format
-msgid "hibernate.cache.use_minimal_puts"
-msgstr "hibernate.cache.use_minimal_puts"
+msgid "<literal>hibernate.cache.use_minimal_puts</literal>"
+msgstr "<literal>hibernate.cache.use_minimal_puts</literal>"
-#. Tag: entry
-#: configuration.xml:762
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Optimizes second-level cache operation to minimize writes, at the cost of "
"more frequent reads. This setting is most useful for clustered caches and, "
"in Hibernate3, is enabled by default for clustered cache implementations."
msgstr ""
-"書き込みを最小限にするために、二次キャッシュの操作を最適化します。 その代わり"
-"に、読み込みがより頻繁に発生するようになります。 このセッティングはクラスタ"
-"キャッシュで役に立ちます。 Hibernate3ではクラスタキャッシュ実装用にデフォルト"
-"では有効になっています。 <placeholder-1/>"
+"書き込みを最小限にするために、二次キャッシュの操作を最適化します。その代わり"
+"に、読み込みがより頻繁に発生するようになります。このセッティングはクラスタ"
+"キャッシュで役に立ちます。 Hibernate3 ではクラスタキャッシュ実装用にデフォル"
+"トでは有効になっています。 "
-#. Tag: literal
-#: configuration.xml:775
+#. Tag: para
#, no-c-format
-msgid "hibernate.cache.use_query_cache"
-msgstr "hibernate.cache.use_query_cache"
+msgid "<literal>hibernate.cache.use_query_cache</literal>"
+msgstr "<literal>hibernate.cache.use_query_cache</literal>"
-#. Tag: entry
-#: configuration.xml:777
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Enables the query cache. Individual queries still have to be set cachable."
msgstr ""
"特定のクエリがキャッシュ可能な場合に、クエリキャッシュを有効にします。 "
-"<placeholder-1/>"
-#. Tag: literal
-#: configuration.xml:787
+#. Tag: para
#, no-c-format
-msgid "hibernate.cache.use_second_level_cache"
-msgstr "hibernate.cache.use_second_level_cache"
+msgid "<literal>hibernate.cache.use_second_level_cache</literal>"
+msgstr "<literal>hibernate.cache.use_second_level_cache</literal>"
-#. Tag: entry
-#: configuration.xml:789
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Can be used to completely disable the second level cache, which is enabled "
"by default for classes which specify a
<literal><cache></literal> "
"mapping."
msgstr ""
-"二次キャッシュを完全に無効にする場合に使います。 デフォルトでは有効で、クラス"
-"の <placeholder-1/> マッピング で制御します。 <placeholder-2/>"
+"二次キャッシュを完全に無効にする場合に使います。デフォルトでは有効で、クラス"
+"の <literal><cache></literal> マッピングで制御します。"
-#. Tag: literal
-#: configuration.xml:801
+#. Tag: para
#, no-c-format
-msgid "hibernate.cache.query_cache_factory"
-msgstr "hibernate.cache.query_cache_factory"
+msgid "<literal>hibernate.cache.query_cache_factory</literal>"
+msgstr "<literal>hibernate.cache.query_cache_factory</literal>"
-#. Tag: entry
-#: configuration.xml:803
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"The classname of a custom <literal>QueryCache</literal> interface,
defaults "
"to the built-in <literal>StandardQueryCache</literal>."
msgstr ""
-"カスタム <placeholder-1/> インターフェイスのクラス名を 指定します。デフォルト"
-"では <placeholder-2/> になります。 <placeholder-3/>"
+"カスタム <literal>QueryCache</literal> インターフェースのクラス名を指定しま"
+"す。デフォルトでは <literal>StandardQueryCache</literal> になります。"
#. Tag: para
-#: configuration.xml:806
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>classname.of.QueryCache</"
"literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+"<emphasis role=\"strong\">e.g.</emphasis>
<literal>classname.of.QueryCache</"
+"literal>"
-#. Tag: literal
-#: configuration.xml:814
+#. Tag: para
#, no-c-format
-msgid "hibernate.cache.region_prefix"
-msgstr "hibernate.cache.region_prefix"
+msgid "<literal>hibernate.cache.region_prefix</literal>"
+msgstr "<literal>hibernate.cache.region_prefix</literal>"
-#. Tag: entry
-#: configuration.xml:816
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "A prefix to use for second-level cache region names."
-msgstr "二次キャッシュの領域名の接頭辞です。 <placeholder-1/>"
+msgstr "二次キャッシュの領域名の接頭辞です。"
#. Tag: para
-#: configuration.xml:818
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<emphasis role=\"strong\">e.g.</emphasis>
<literal>prefix</literal>"
-msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+msgstr "<emphasis
role=\"strong\">例</emphasis><literal>prefix</literal>"
-#. Tag: literal
-#: configuration.xml:826
+#. Tag: para
#, no-c-format
-msgid "hibernate.cache.use_structured_entries"
-msgstr "hibernate.cache.use_structured_entries"
+msgid "<literal>hibernate.cache.use_structured_entries</literal>"
+msgstr "<literal>hibernate.cache.use_structured_entries</literal>"
-#. Tag: entry
-#: configuration.xml:828
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Forces Hibernate to store data in the second-level cache in a more human-"
"friendly format."
msgstr ""
"二次キャッシュに格納するデータを、人が理解しやすいフォーマットにします。 "
-"<placeholder-1/>"
#. Tag: title
-#: configuration.xml:842
#, no-c-format
msgid "Hibernate Transaction Properties"
msgstr "Hibernate トランザクションプロパティ"
-#. Tag: literal
-#: configuration.xml:855
+#. Tag: para
#, no-c-format
-msgid "hibernate.transaction.factory_class"
-msgstr "hibernate.transaction.factory_class"
+msgid "<literal>hibernate.transaction.factory_class</literal>"
+msgstr "<literal>hibernate.transaction.factory_class</literal>"
-#. Tag: entry
-#: configuration.xml:857
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"The classname of a <literal>TransactionFactory</literal> to use with
"
"Hibernate <literal>Transaction</literal> API (defaults to "
"<literal>JDBCTransactionFactory</literal>)."
msgstr ""
-"Hibernate <placeholder-1/> APIと一緒に使われる <placeholder-2/> のクラス名で"
-"す。 (デフォルトでは <placeholder-3/> です)。 <placeholder-4/>"
+"Hibernate <literal>Transaction</literal> API と一緒に使われる "
+"<literal>TransactionFactory</literal> のクラス名です。 (デフォルトでは "
+"<literal>JDBCTransactionFactory</literal> です)。"
#. Tag: para
-#: configuration.xml:861
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>classname.of."
"TransactionFactory</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+"<emphasis
role=\"strong\">例</emphasis><literal>classname.of."
+"TransactionFactory</literal>>"
-#. Tag: literal
-#: configuration.xml:869
+#. Tag: para
#, no-c-format
-msgid "jta.UserTransaction"
-msgstr "jta.UserTransaction"
+msgid "<literal>jta.UserTransaction</literal>"
+msgstr "<literal>jta.UserTransaction</literal>"
-#. Tag: entry
-#: configuration.xml:871
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"A JNDI name used by <literal>JTATransactionFactory</literal> to obtain
the "
"JTA <literal>UserTransaction</literal> from the application
server."
msgstr ""
-"アプリケーションサーバからJTA <placeholder-1/> を取得するために <placeholder-"
-"2/> に使われるJNDI名です。 <placeholder-3/>"
+"アプリケーションサーバーから JTA <literal>UserTransaction</literal> を取得す"
+"るために <literal>JTATransactionFactory</literal> に使われる JNDI 名です。"
-#. Tag: literal
-#: configuration.xml:883
+#. Tag: para
#, no-c-format
-msgid "hibernate.transaction.manager_lookup_class"
-msgstr "hibernate.transaction.manager_lookup_class"
+msgid "<literal>hibernate.transaction.
manager_lookup_class</literal>"
+msgstr "<literal>hibernate.transaction.
manager_lookup_class</literal>"
-#. Tag: entry
-#: configuration.xml:885
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"The classname of a <literal>TransactionManagerLookup</literal>. It is
"
"required when JVM-level caching is enabled or when using hilo generator in a
"
"JTA environment."
msgstr ""
-"<placeholder-1/> のクラス名です。 JTA環境において、JVMレベルのキャッシュを有"
-"効にするために必要です。 <placeholder-2/>"
+"<literal>TransactionManagerLookup</literal> のクラス名です。 JTA 環境におい"
+"て、 JVM レベルのキャッシュを有効にするときか、 hilo ジェネレータが使用される"
+"ときに必要です。"
#. Tag: para
-#: configuration.xml:889
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>classname.of."
"TransactionManagerLookup</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+"<emphasis
role=\"strong\">例</emphasis><literal>classname.of."
+"TransactionManagerLookup</literal>"
-#. Tag: literal
-#: configuration.xml:897
+#. Tag: para
#, no-c-format
-msgid "hibernate.transaction.flush_before_completion"
-msgstr "hibernate.transaction.flush_before_completion"
+msgid "<literal>hibernate.transaction.
flush_before_completion</literal>"
+msgstr "<literal>hibernate.transaction.
flush_before_completion</literal>"
-#. Tag: entry
-#: configuration.xml:899
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"If enabled, the session will be automatically flushed during the before "
"completion phase of the transaction. Built-in and automatic session context "
-"management is preferred, see <xref
linkend=\"architecture-current-session\"/"
+"management is preferred, see <xref
linkend=\"architecture-current-session\" /"
">."
msgstr ""
-"有効の場合、トランザクションのcompletionフェーズの前に自動的に セッションをフ"
-"ラッシュします。内臓の自動セッションコンテキスト管理に適しています。 <xref "
-"linkend=\"architecture-current-session\"/>を参照してください。
<placeholder-"
-"1/>"
+"有効の場合、トランザクションの completion フェーズの前に自動的にセッションを"
+"フラッシュします。内蔵の自動セッションコンテキスト管理に適しています。 <xref "
+"linkend=\"architecture-current-session\"/> を参照してください。"
-#. Tag: literal
-#: configuration.xml:912
+#. Tag: para
#, no-c-format
-msgid "hibernate.transaction.auto_close_session"
-msgstr "hibernate.transaction.auto_close_session"
+msgid "<literal>hibernate.transaction.
auto_close_session</literal>"
+msgstr "<literal>hibernate.transaction.
auto_close_session</literal>"
-#. Tag: entry
-#: configuration.xml:914
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"If enabled, the session will be automatically closed during the after "
"completion phase of the transaction. Built-in and automatic session context "
-"management is preferred, see <xref
linkend=\"architecture-current-session\"/"
+"management is preferred, see <xref
linkend=\"architecture-current-session\" /"
">."
msgstr ""
-"有効の場合、トランザクションのcompletionフェーズの後に セッションを自動的にク"
-"ローズします。内臓の自動セッションコンテキスト管理に適しています。 <xref "
-"linkend=\"architecture-current-session\"/>を参照してください。
<placeholder-"
-"1/>"
+"有効の場合、トランザクションの completion フェーズの後にセッションを自動的に"
+"クローズします。内蔵の自動セッションコンテキスト管理に適しています。 <xref "
+"linkend=\"architecture-current-session\"/> を参照してください。"
#. Tag: title
-#: configuration.xml:930
#, no-c-format
msgid "Miscellaneous Properties"
msgstr "その他のプロパティ"
-#. Tag: literal
-#: configuration.xml:943
+#. Tag: para
#, no-c-format
-msgid "hibernate.current_session_context_class"
-msgstr "hibernate.current_session_context_class"
+msgid "<literal>hibernate.
current_session_context_class</literal>"
+msgstr "<literal>hibernate.
current_session_context_class</literal>"
-#. Tag: entry
-#: configuration.xml:945
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Supply a custom strategy for the scoping of the \"current\" "
"<literal>Session</literal>. See <xref
linkend=\"architecture-current-session"
-"\"/> for more information about the built-in strategies."
+"\" /> for more information about the built-in strategies."
msgstr ""
-"「現在の」<placeholder-1/> のための(カスタム)戦略を提供します。 ビルトイン"
-"ストラテジーに関するその他の情報については <xref linkend=\"architecture-"
-"current-session\"/>を参照してください。 <placeholder-2/>"
+"「現在の」 <literal>Session</literal> のための(カスタム)戦略を提供します。"
+"ビルトインストラテジーに関するその他の情報については <xref linkend="
+"\"architecture-current-session\"/> を参照してください。"
#. Tag: para
-#: configuration.xml:950
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>jta</literal> | "
"<literal>thread</literal> | <literal>managed</literal> |
<literal>custom."
"Class</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>jta</literal> |
"
+"<emphasis
role=\"strong\">例</emphasis><literal>jta</literal> |
"
"<literal>thread</literal> | <literal>managed</literal> |
<literal>custom."
"Class</literal>"
-#. Tag: literal
-#: configuration.xml:959
+#. Tag: para
#, no-c-format
-msgid "hibernate.query.factory_class"
-msgstr "hibernate.query.factory_class"
+msgid "<literal>hibernate.query.factory_class</literal>"
+msgstr "<literal>hibernate.query.factory_class</literal>"
-#. Tag: entry
-#: configuration.xml:961
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "Chooses the HQL parser implementation."
-msgstr "HQLパーサーの実装を選択します。 <placeholder-1/>"
+msgstr "HQL パーサーの実装を選択します。"
#. Tag: para
-#: configuration.xml:963
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>org.hibernate.hql.ast."
"ASTQueryTranslatorFactory</literal> or
<literal>org.hibernate.hql.classic."
"ClassicQueryTranslatorFactory</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>org.hibernate.hql.ast."
+"<emphasis
role=\"strong\">例</emphasis><literal>org.hibernate.hql.ast."
"ASTQueryTranslatorFactory</literal> or
<literal>org.hibernate.hql.classic."
"ClassicQueryTranslatorFactory</literal>"
-#. Tag: literal
-#: configuration.xml:972
+#. Tag: para
#, no-c-format
-msgid "hibernate.query.substitutions"
-msgstr "hibernate.query.substitutions"
+msgid "<literal>hibernate.query.substitutions</literal>"
+msgstr "<literal>hibernate.query.substitutions</literal>"
-#. Tag: entry
-#: configuration.xml:974
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Is used to map from tokens in Hibernate queries to SQL tokens (tokens might "
"be function or literal names, for example)."
msgstr ""
-"HQLとSQLのトークンをマッピングします。 (例えば、トークンは関数やリテラル名で"
-"す)。 <placeholder-1/>"
+"HQL と SQL のトークンをマッピングします。 (例えば、トークンは関数やリテラル"
+"名です)。"
#. Tag: para
-#: configuration.xml:977
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>hqlLiteral=SQL_LITERAL, "
"hqlFunction=SQLFUNC</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>true</literal> |
"
-"<literal>false</literal>"
+"<emphasis
role=\"strong\">例</emphasis><literal>hqlLiteral=SQL_LITERAL,
"
+"hqlFunction=SQLFUNC</literal>"
-#. Tag: literal
-#: configuration.xml:985
+#. Tag: para
#, no-c-format
-msgid "hibernate.hbm2ddl.auto"
-msgstr "hibernate.hbm2ddl.auto"
+msgid "<literal>hibernate.hbm2ddl.auto</literal>"
+msgstr "<literal>hibernate.hbm2ddl.auto</literal>"
-#. Tag: entry
-#: configuration.xml:987
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Automatically validates or exports schema DDL to the database when the "
"<literal>SessionFactory</literal> is created. With
<literal>create-drop</"
"literal>, the database schema will be dropped when the "
"<literal>SessionFactory</literal> is closed explicitly."
msgstr ""
-"<placeholder-1/> を生成したときに、 自動的にスキーマDDLをDBに出力します。 "
-"<placeholder-2/> の場合、 <placeholder-3/> を クローズしたときに、データベー"
-"ススキーマをドロップします。 <placeholder-4/>"
+"<literal>SessionFactory</literal> を生成したときに、自動的にスキーマ DDL を有"
+"効にしデータベースに出力します。 <literal>create-drop</literal> の場合、 "
+"<literal>SessionFactory</literal> をクローズしたときに、データベーススキーマ"
+"をドロップします。"
#. Tag: para
-#: configuration.xml:993
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis role=\"strong\">e.g.</emphasis>
<literal>validate</literal> | "
"<literal>update</literal> | <literal>create</literal> |
<literal>create-"
"drop</literal>"
msgstr ""
-"<emphasis
role=\"strong\">例:</emphasis><literal>validate</literal> |
"
+"<emphasis role=\"strong\">例</emphasis>
<literal>validate</literal> | "
"<literal>update</literal> | <literal>create</literal> |
<literal>create-"
"drop</literal>"
-#. Tag: literal
-#: configuration.xml:1002
+#. Tag: para
#, no-c-format
-msgid "hibernate.cglib.use_reflection_optimizer"
-msgstr "hibernate.cglib.use_reflection_optimizer"
+msgid "<literal>hibernate.cglib.
use_reflection_optimizer</literal>"
+msgstr "<literal>hibernate.cglib.
use_reflection_optimizer</literal>"
-#. Tag: entry
-#: configuration.xml:1004
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"Enables the use of CGLIB instead of runtime reflection (System-level "
"property). Reflection can sometimes be useful when troubleshooting. "
"Hibernate always requires CGLIB even if you turn off the optimizer. You "
"cannot set this property in
<literal>hibernate.cfg.xml</literal>."
msgstr ""
-"実行時リフレクションの代わりのCGLIBの使用を有効にします (システムレベルのプ"
-"ロパティ) リフレクションはトラブルシューティングのときに役立つことがありま"
-"す。 オプティマイザをオフにしているときでさえ、 Hibernateには必ずCGLIBが必要"
-"なことに注意してください。 このプロパティは <placeholder-1/> で設定できませ"
-"ん。 <placeholder-2/>"
+"実行時リフレクションの代わりの CGLIB の使用を有効にします (システムレベルの"
+"プロパティ) 。リフレクションはトラブルシューティングのときに役立つことがあり"
+"ます。オプティマイザをオフにしているときでさえ、 Hibernate には必ず CGLIB が"
+"必要なことに注意してください。このプロパティは <literal>hibernate.cfg.xml</"
+"literal> で設定できません。"
#. Tag: title
-#: configuration.xml:1020
#, no-c-format
msgid "SQL Dialects"
msgstr "SQL 方言(Dialect)"
#. Tag: para
-#: configuration.xml:1022
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Always set the <literal>hibernate.dialect</literal> property to the
correct "
"<literal>org.hibernate.dialect.Dialect</literal> subclass for your
database. "
@@ -1634,315 +1387,264 @@
"the other properties listed above. This means that you will not have to "
"specify them manually."
msgstr ""
-"<literal>hibernate.dialect</literal> プロパティには、 使用するデータベースの"
-"正しい <literal>org.hibernate.dialect.Dialect</literal> のサブクラスを、 必ず"
-"指定すべきです。 しかし方言を指定すれば、Hibernateは上述したプロパティのいく"
-"つかについて、 より適切なデフォルト値を使います。 そうすれば、それらを手作業"
-"で設定する手間が省けます。"
+"<literal>hibernate.dialect</literal> プロパティには、使用するデータベースの正"
+"しい <literal>org.hibernate.dialect.Dialect</literal> のサブクラスを、必ず指"
+"定すべきです。しかし方言を指定すれば、 Hibernate は上述したプロパティのいくつ"
+"かについて、より適切なデフォルト値を使います。そうすれば、それらを手作業で設"
+"定する手間が省けます。"
#. Tag: title
-#: configuration.xml:1030
#, no-c-format
msgid "Hibernate SQL Dialects
(<literal>hibernate.dialect</literal>)"
msgstr "Hibernate SQL Dialects
(<literal>hibernate.dialect</literal>)"
-#. Tag: entry
-#: configuration.xml:1036
+#. Tag: para
#, no-c-format
msgid "RDBMS"
msgstr "RDBMS"
-#. Tag: entry
-#: configuration.xml:1037
+#. Tag: para
#, no-c-format
msgid "Dialect"
msgstr "Dialect"
-#. Tag: entry
-#: configuration.xml:1042
+#. Tag: para
#, no-c-format
-msgid "<entry>DB2</entry>"
-msgstr ""
+msgid "DB2"
+msgstr "DB2"
-#. Tag: literal
-#: configuration.xml:1042
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.DB2Dialect"
-msgstr "org.hibernate.dialect.DB2Dialect"
+msgid "<literal>org.hibernate.dialect.DB2Dialect</literal>"
+msgstr "<literal>org.hibernate.dialect.DB2Dialect</literal>"
-#. Tag: entry
-#: configuration.xml:1045
+#. Tag: para
#, no-c-format
msgid "DB2 AS/400"
msgstr "DB2 AS/400"
-#. Tag: literal
-#: configuration.xml:1045
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.DB2400Dialect"
-msgstr "org.hibernate.dialect.DB2400Dialect"
+msgid "<literal>org.hibernate.dialect.DB2400Dialect</literal>"
+msgstr "<literal>org.hibernate.dialect.DB2400Dialect</literal>"
-#. Tag: entry
-#: configuration.xml:1048
+#. Tag: para
#, no-c-format
msgid "DB2 OS390"
msgstr "DB2 OS390"
-#. Tag: literal
-#: configuration.xml:1048
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.DB2390Dialect"
-msgstr "org.hibernate.dialect.DB2390Dialect"
+msgid "<literal>org.hibernate.dialect.DB2390Dialect</literal>"
+msgstr "<literal>org.hibernate.dialect.DB2390Dialect</literal>"
-#. Tag: entry
-#: configuration.xml:1051
+#. Tag: para
#, no-c-format
msgid "PostgreSQL"
msgstr "PostgreSQL"
-#. Tag: literal
-#: configuration.xml:1051
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.PostgreSQLDialect"
-msgstr "org.hibernate.dialect.PostgreSQLDialect"
+msgid "<literal>org.hibernate.dialect.PostgreSQLDialect</literal>"
+msgstr
"<literal>org.hibernate.dialect.PostgreSQLDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1054
+#. Tag: para
#, no-c-format
msgid "MySQL"
msgstr "MySQL"
-#. Tag: literal
-#: configuration.xml:1054
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.MySQLDialect"
-msgstr "org.hibernate.dialect.MySQLDialect"
+msgid "<literal>org.hibernate.dialect.MySQLDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.MySQLDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1057
+#. Tag: para
#, no-c-format
msgid "MySQL with InnoDB"
msgstr "MySQL with InnoDB"
-#. Tag: literal
-#: configuration.xml:1057
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.MySQLInnoDBDialect"
-msgstr "org.hibernate.dialect.MySQLInnoDBDialect"
+msgid
"<literal>org.hibernate.dialect.MySQLInnoDBDialect</literal>"
+msgstr
"<literal>org.hibernate.dialect.MySQLInnoDBDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1060
+#. Tag: para
#, no-c-format
msgid "MySQL with MyISAM"
msgstr "MySQL with MyISAM"
-#. Tag: literal
-#: configuration.xml:1060
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.MySQLMyISAMDialect"
-msgstr "org.hibernate.dialect.MySQLMyISAMDialect"
+msgid
"<literal>org.hibernate.dialect.MySQLMyISAMDialect</literal>"
+msgstr
"<literal>org.hibernate.dialect.MySQLMyISAMDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1063
+#. Tag: para
#, no-c-format
msgid "Oracle (any version)"
-msgstr "Oracle (any version)"
+msgstr "Oracle (いずれのバージョンでも)"
-#. Tag: literal
-#: configuration.xml:1063
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.OracleDialect"
-msgstr "org.hibernate.dialect.OracleDialect"
+msgid "<literal>org.hibernate.dialect.OracleDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.OracleDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1066
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "Oracle 9i"
-msgstr "Oracle 9i/10g"
+msgstr "Oracle 9i"
-#. Tag: literal
-#: configuration.xml:1066
-#, fuzzy, no-c-format
-msgid "org.hibernate.dialect.Oracle9iDialect"
-msgstr "org.hibernate.dialect.Oracle9Dialect"
+#. Tag: para
+#, no-c-format
+msgid "<literal>org.hibernate.dialect.Oracle9iDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.Oracle9iDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1069
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "Oracle 10g"
-msgstr "Oracle 9i/10g"
+msgstr "Oracle 10g"
-#. Tag: literal
-#: configuration.xml:1069
-#, fuzzy, no-c-format
-msgid "org.hibernate.dialect.Oracle10gDialect"
-msgstr "org.hibernate.dialect.OracleDialect"
+#. Tag: para
+#, no-c-format
+msgid "<literal>org.hibernate.dialect.Oracle10gDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.Oracle10gDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1072
+#. Tag: para
#, no-c-format
msgid "Sybase"
msgstr "Sybase"
-#. Tag: literal
-#: configuration.xml:1072
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.SybaseDialect"
-msgstr "org.hibernate.dialect.SybaseDialect"
+msgid "<literal>org.hibernate.dialect.SybaseDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.SybaseDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1075
+#. Tag: para
#, no-c-format
msgid "Sybase Anywhere"
msgstr "Sybase Anywhere"
-#. Tag: literal
-#: configuration.xml:1075
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.SybaseAnywhereDialect"
-msgstr "org.hibernate.dialect.SybaseAnywhereDialect"
+msgid
"<literal>org.hibernate.dialect.SybaseAnywhereDialect</literal>"
+msgstr
"<literal>org.hibernate.dialect.SybaseAnywhereDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1078
+#. Tag: para
#, no-c-format
msgid "Microsoft SQL Server"
msgstr "Microsoft SQL Server"
-#. Tag: literal
-#: configuration.xml:1078
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.SQLServerDialect"
-msgstr "org.hibernate.dialect.SQLServerDialect"
+msgid "<literal>org.hibernate.dialect.SQLServerDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.SQLServerDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1081
+#. Tag: para
#, no-c-format
msgid "SAP DB"
msgstr "SAP DB"
-#. Tag: literal
-#: configuration.xml:1081
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.SAPDBDialect"
-msgstr "org.hibernate.dialect.SAPDBDialect"
+msgid "<literal>org.hibernate.dialect.SAPDBDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.SAPDBDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1084
+#. Tag: para
#, no-c-format
msgid "Informix"
msgstr "Informix"
-#. Tag: literal
-#: configuration.xml:1084
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.InformixDialect"
-msgstr "org.hibernate.dialect.InformixDialect"
+msgid "<literal>org.hibernate.dialect.InformixDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.InformixDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1087
+#. Tag: para
#, no-c-format
msgid "HypersonicSQL"
msgstr "HypersonicSQL"
-#. Tag: literal
-#: configuration.xml:1087
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.HSQLDialect"
-msgstr "org.hibernate.dialect.HSQLDialect"
+msgid "<literal>org.hibernate.dialect.HSQLDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.HSQLDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1090
+#. Tag: para
#, no-c-format
msgid "Ingres"
msgstr "Ingres"
-#. Tag: literal
-#: configuration.xml:1090
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.IngresDialect"
-msgstr "org.hibernate.dialect.IngresDialect"
+msgid "<literal>org.hibernate.dialect.IngresDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.IngresDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1093
+#. Tag: para
#, no-c-format
msgid "Progress"
msgstr "Progress"
-#. Tag: literal
-#: configuration.xml:1093
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.ProgressDialect"
-msgstr "org.hibernate.dialect.ProgressDialect"
+msgid "<literal>org.hibernate.dialect.ProgressDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.ProgressDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1096
+#. Tag: para
#, no-c-format
msgid "Mckoi SQL"
msgstr "Mckoi SQL"
-#. Tag: literal
-#: configuration.xml:1096
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.MckoiDialect"
-msgstr "org.hibernate.dialect.MckoiDialect"
+msgid "<literal>org.hibernate.dialect.MckoiDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.MckoiDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1099
+#. Tag: para
#, no-c-format
msgid "Interbase"
msgstr "Interbase"
-#. Tag: literal
-#: configuration.xml:1099
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.InterbaseDialect"
-msgstr "org.hibernate.dialect.InterbaseDialect"
+msgid "<literal>org.hibernate.dialect.InterbaseDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.InterbaseDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1102
+#. Tag: para
#, no-c-format
msgid "Pointbase"
msgstr "Pointbase"
-#. Tag: literal
-#: configuration.xml:1102
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.PointbaseDialect"
-msgstr "org.hibernate.dialect.PointbaseDialect"
+msgid "<literal>org.hibernate.dialect.PointbaseDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.PointbaseDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1105
+#. Tag: para
#, no-c-format
msgid "FrontBase"
msgstr "FrontBase"
-#. Tag: literal
-#: configuration.xml:1105
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.FrontbaseDialect"
-msgstr "org.hibernate.dialect.FrontbaseDialect"
+msgid "<literal>org.hibernate.dialect.FrontbaseDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.FrontbaseDialect</literal>"
-#. Tag: entry
-#: configuration.xml:1108
+#. Tag: para
#, no-c-format
msgid "Firebird"
msgstr "Firebird"
-#. Tag: literal
-#: configuration.xml:1108
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.dialect.FirebirdDialect"
-msgstr "org.hibernate.dialect.FirebirdDialect"
+msgid "<literal>org.hibernate.dialect.FirebirdDialect</literal>"
+msgstr "<literal>org.hibernate.dialect.FirebirdDialect</literal>"
#. Tag: title
-#: configuration.xml:1117
#, no-c-format
msgid "Outer Join Fetching"
msgstr "外部結合フェッチ"
#. Tag: para
-#: configuration.xml:1119
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If your database supports ANSI, Oracle or Sybase style outer joins, "
"<emphasis>outer join fetching</emphasis> will often increase
performance by "
@@ -1952,15 +1654,15 @@
"one, one-to-many, many-to-many and one-to-one associations to be retrieved "
"in a single SQL <literal>SELECT</literal>."
msgstr ""
-"もしDBがANSIか、OracleかSybaseスタイルの外部結合をサポートしている場合、 "
-"<emphasis>outer join fetching</emphasis> は、DBのSQL発行回数を節約し パフォー"
-"マンスを良くします。(DB内でより多くの処理コストが発生します) 外部結合フェッ"
-"チは、多対一、一対多、多対多、一対一のオブジェクト関連で グループオブジェクト"
-"を1つのSQLで <literal>SELECT</literal> します。"
+"もしデータベースが ANSI か、 Oracle か Sybase スタイルの外部結合をサポートし"
+"ている場合、 <emphasis>outer join fetching</emphasis> は、データベースの SQL "
+"発行回数を節約しパフォーマンスを良くします(データベース内でより多くの処理コ"
+"ストが発生します)。外部結合フェッチは、多対一、一対多、多対多、一対一のオブ"
+"ジェクト関連でグループオブジェクトを1つの SQL で <literal>SELECT</literal> し"
+"ます。"
#. Tag: para
-#: configuration.xml:1128
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Outer join fetching can be disabled <emphasis>globally</emphasis> by
setting "
"the property <literal>hibernate.max_fetch_depth</literal> to
<literal>0</"
@@ -1969,26 +1671,25 @@
"with <literal>fetch=\"join\"</literal>."
msgstr ""
"<literal>hibernate.max_fetch_depth</literal> プロパティの値を
<literal>0</"
-"literal> にすると Outer join fetchingを <emphasis>すべて</emphasis>
無効にす"
-"ることになります。 <literal>1</literal> やそれ以上の値を設定すると、外部結合"
-"フェッチが有効になり、 一対一と多対一関連が <literal>fetch=\"join\"</"
-"literal> としてマッピングされます。"
+"literal> にすると外部結合フェッチを <emphasis>すべて</emphasis> 無効にするこ"
+"とになります。 <literal>1</literal> やそれ以上の値を設定すると、外部結合"
+"フェッチが有効になり、一対一と多対一関連が <literal>fetch=\"join\"</literal>
"
+"としてマッピングされます。"
#. Tag: para
-#: configuration.xml:1136
#, no-c-format
-msgid "See <xref linkend=\"performance-fetching\"/> for more
information."
-msgstr "See <xref linkend=\"performance-fetching\"/> for more
information."
+msgid "See <xref linkend=\"performance-fetching\" /> for more
information."
+msgstr ""
+"さらに情報が見たければ <xref linkend=\"performance-fetching\"/> を参照してく"
+"ださい。"
#. Tag: title
-#: configuration.xml:1143
#, no-c-format
msgid "Binary Streams"
msgstr "バイナリストリーム"
#. Tag: para
-#: configuration.xml:1145
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Oracle limits the size of <literal>byte</literal> arrays that can be
passed "
"to and/or from its JDBC driver. If you wish to use large instances of "
@@ -1996,85 +1697,65 @@
"should enable <literal>hibernate.jdbc.use_streams_for_binary</literal>.
"
"<emphasis>This is a system-level setting only.</emphasis>"
msgstr ""
-"OracleはJDBCドライバとの間でやりとりされる <literal>byte</literal> 配列のサイ"
-"ズを制限します。 <literal>binary</literal> や
<literal>serializable</"
+"Oracle は JDBC ドライバとの間でやりとりされる <literal>byte</literal> 配列の"
+"サイズを制限します。 <literal>binary</literal> や
<literal>serializable</"
"literal> 型の大きなインスタンスを使いたければ、 <literal>hibernate.jdbc."
"use_streams_for_binary</literal> を有効にしてください。 ただし <emphasis>これ"
"はシステムレベルの設定だけです</emphasis> 。"
#. Tag: title
-#: configuration.xml:1156
#, no-c-format
msgid "Second-level and query cache"
-msgstr "2次キャッシュとクエリーキャッシュ"
+msgstr "ニ次キャッシュとクエリキャッシュ"
#. Tag: para
-#: configuration.xml:1158
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The properties prefixed by <literal>hibernate.cache</literal> allow you
to "
"use a process or cluster scoped second-level cache system with Hibernate. "
-"See the <xref linkend=\"performance-cache\"/> for more
information."
+"See the <xref linkend=\"performance-cache\" /> for more
information."
msgstr ""
-"<literal>hibernate.cache</literal> プロパティ接頭辞は Hibernateでプロセスやク"
-"ラスタ二次キャッシュを使うとことを許可します。 <xref linkend=\"performance-"
-"cache\"/>により多くの詳細があります。"
+"<literal>hibernate.cache</literal> プロパティ接頭辞は Hibernate でプロセスや"
+"クラスタ二次キャッシュを使うとことを許可します。<xref linkend=\"performance-"
+"cache\"/> により多くの詳細があります。"
#. Tag: title
-#: configuration.xml:1168
#, no-c-format
msgid "Query Language Substitution"
-msgstr "クエリー言語の置き換え"
+msgstr "クエリ言語の置き換え"
#. Tag: para
-#: configuration.xml:1170
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can define new Hibernate query tokens using
<literal>hibernate.query."
"substitutions</literal>. For example:"
msgstr ""
-"<literal>hibernate.query.substitutions</literal> を使うことで、 新しい"
-"Hibernateクエリトークンを定義できます。 例:"
+"<literal>hibernate.query.substitutions</literal> を使うことで、新しい "
+"Hibernate クエリトークンを定義できます。例:"
-#. Tag: programlisting
-#: configuration.xml:1175
-#, no-c-format
-msgid "hibernate.query.substitutions true=1, false=0"
-msgstr "hibernate.query.substitutions true=1, false=0"
-
#. Tag: para
-#: configuration.xml:1177
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This would cause the tokens <literal>true</literal> and
<literal>false</"
"literal> to be translated to integer literals in the generated SQL."
msgstr ""
-"これはトークン <literal>true</literal> と <literal>false</literal>
を、 生成"
-"されるSQLにおいて整数リテラルに翻訳します。"
+"これはトークン <literal>true</literal> と <literal>false</literal>
を、生成さ"
+"れる SQL において整数リテラルに翻訳します。"
-#. Tag: programlisting
-#: configuration.xml:1182
-#, no-c-format
-msgid "hibernate.query.substitutions toLowercase=LOWER"
-msgstr "hibernate.query.substitutions toLowercase=LOWER"
-
#. Tag: para
-#: configuration.xml:1184
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This would allow you to rename the SQL <literal>LOWER</literal>
function."
msgstr ""
-"これはSQLの <literal>LOWER</literal> 関数の名前の付け替えを可能にします。"
+"これは SQL の <literal>LOWER</literal> 関数の名前の付け替えを可能にします。"
#. Tag: title
-#: configuration.xml:1191
#, no-c-format
msgid "Hibernate statistics"
msgstr "Hibernate 統計"
#. Tag: para
-#: configuration.xml:1193
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you enable <literal>hibernate.generate_statistics</literal>,
Hibernate "
"exposes a number of metrics that are useful when tuning a running system via
"
@@ -2082,20 +1763,18 @@
"configured to expose these statistics via JMX. Read the Javadoc of the "
"interfaces in <literal>org.hibernate.stats</literal> for more
information."
msgstr ""
-"<literal>hibernate.generate_statistics</literal> を有効にした場合、 動作して"
-"いるシステムをチューニングするときに、<literal>SessionFactory.getStatistics()"
-"</literal> を経由して、Hibernateは便利な統計情報を出力します。 JMXを経由して"
-"統計情報を出力することも可能です。 Javadocの <literal>org.hibernate.stats</"
-"literal> パッケージ内の インターフェイスにはより多くの情報があります。"
+"<literal>hibernate.generate_statistics</literal> を有効にした場合、動作してい"
+"るシステムをチューニングするときに、 <literal>SessionFactory.getStatistics()"
+"</literal> を経由して、 Hibernate は便利な統計情報を出力します。 JMX を経由し"
+"て統計情報を出力することも可能です。 Javadoc の <literal>org.hibernate."
+"stats</literal> パッケージ内のインターフェースにはより多くの情報があります。"
#. Tag: title
-#: configuration.xml:1205
#, no-c-format
msgid "Logging"
msgstr "ロギング"
#. Tag: para
-#: configuration.xml:1207
#, no-c-format
msgid ""
"Hibernate utilizes <ulink
url=\"http://www.slf4j.org/\">Simple
Logging "
@@ -2113,8 +1792,7 @@
msgstr ""
#. Tag: para
-#: configuration.xml:1218
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is recommended that you familiarize yourself with Hibernate's log "
"messages. A lot of work has been put into making the Hibernate log as "
@@ -2122,149 +1800,126 @@
"troubleshooting device. The most interesting log categories are the "
"following:"
msgstr ""
-"Hibernateのログメッセージに慣れることを強くおすすめします。 Hibernateのログは"
-"読みやすく、できる限り詳細になるように努力されています。 これは必須のトラブル"
-"シューティングデバイスです。 以下に重要なログのカテゴリを示します。"
+"Hibernate のログメッセージに慣れることを強くおすすめします。 Hibernate のログ"
+"は読みやすく、できる限り詳細になるように努力されています。これは必須のトラブ"
+"ルシューティングデバイスです。以下に重要なログのカテゴリを示します:"
#. Tag: title
-#: configuration.xml:1227
#, no-c-format
msgid "Hibernate Log Categories"
msgstr "Hibernate ログカテゴリ"
-#. Tag: entry
-#: configuration.xml:1233
+#. Tag: para
#, no-c-format
msgid "Category"
msgstr "カテゴリ"
-#. Tag: entry
-#: configuration.xml:1234
+#. Tag: para
#, no-c-format
msgid "Function"
msgstr "機能"
-#. Tag: literal
-#: configuration.xml:1239
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.SQL"
-msgstr "org.hibernate.SQL"
+msgid "<literal>org.hibernate.SQL</literal>"
+msgstr "<literal>org.hibernate.SQL</literal>"
-#. Tag: entry
-#: configuration.xml:1240
+#. Tag: para
#, no-c-format
msgid "Log all SQL DML statements as they are executed"
-msgstr "実行したすべてのSQL(DDL)ステートメントをロギングします。"
+msgstr "実行したすべての SQL(DDL)ステートメントをロギングします。"
-#. Tag: literal
-#: configuration.xml:1243
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.type"
-msgstr "org.hibernate.type"
+msgid "<literal>org.hibernate.type</literal>"
+msgstr "<literal>org.hibernate.type</literal>"
-#. Tag: entry
-#: configuration.xml:1244
+#. Tag: para
#, no-c-format
msgid "Log all JDBC parameters"
-msgstr "すべてのJDBCパラメータをロギングします。"
+msgstr "すべての JDBC パラメータをロギングします。"
-#. Tag: literal
-#: configuration.xml:1247
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.tool.hbm2ddl"
-msgstr "org.hibernate.tool.hbm2ddl"
+msgid "<literal>org.hibernate.tool. hbm2ddl</literal>"
+msgstr "<literal>org.hibernate.tool. hbm2ddl</literal>"
-#. Tag: entry
-#: configuration.xml:1248
+#. Tag: para
#, no-c-format
msgid "Log all SQL DDL statements as they are executed"
-msgstr "実行したすべてのSQL(DDL)ステートメントをロギングします。"
+msgstr "実行したすべての SQL(DDL)ステートメントをロギングします。"
-#. Tag: literal
-#: configuration.xml:1251
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.pretty"
-msgstr "org.hibernate.pretty"
+msgid "<literal>org.hibernate.pretty</literal>"
+msgstr "<literal>org.hibernate.pretty</literal>"
-#. Tag: entry
-#: configuration.xml:1252
+#. Tag: para
#, no-c-format
msgid ""
"Log the state of all entities (max 20 entities) associated with the session "
"at flush time"
msgstr ""
-"sessionに関連するすべてのエンティティ(最大20)のフラッシュ時間をロギングし"
-"ます。"
+"session に関連するすべてのエンティティ(最大20)のフラッシュ時間をロギング"
+"します。"
-#. Tag: literal
-#: configuration.xml:1258
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.cache"
-msgstr "org.hibernate.cache"
+msgid "<literal>org.hibernate.cache</literal>"
+msgstr "<literal>org.hibernate.cache</literal>"
-#. Tag: entry
-#: configuration.xml:1259
+#. Tag: para
#, no-c-format
msgid "Log all second-level cache activity"
-msgstr "すべての2次キャッシュの動作をロギングします。"
+msgstr "すべてのニ次キャッシュの動作をロギングします。"
-#. Tag: literal
-#: configuration.xml:1262
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction"
-msgstr "org.hibernate.transaction"
+msgid "<literal>org.hibernate. transaction</literal>"
+msgstr "<literal>org.hibernate. transaction</literal>"
-#. Tag: entry
-#: configuration.xml:1263
+#. Tag: para
#, no-c-format
msgid "Log transaction related activity"
msgstr "トランザクションに関連する動作をロギングします。"
-#. Tag: literal
-#: configuration.xml:1266
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.jdbc"
-msgstr "org.hibernate.jdbc"
+msgid "<literal>org.hibernate.jdbc</literal>"
+msgstr "<literal>org.hibernate.jdbc</literal>"
-#. Tag: entry
-#: configuration.xml:1267
+#. Tag: para
#, no-c-format
msgid "Log all JDBC resource acquisition"
-msgstr "JDBCリソース取得をロギングします。"
+msgstr "JDBC リソース取得をロギングします。"
-#. Tag: literal
-#: configuration.xml:1270
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.hql.ast.AST"
-msgstr "org.hibernate.hql.ast.AST"
+msgid "<literal>org.hibernate.hql. ast.AST</literal>"
+msgstr "<literal>org.hibernate.hql. ast.AST</literal>"
-#. Tag: entry
-#: configuration.xml:1271
+#. Tag: para
#, no-c-format
msgid "Log HQL and SQL ASTs during query parsing"
-msgstr "HQLとSQLのASTのクエリーパースをロギングします。"
+msgstr "HQL と SQL の AST のクエリパースをロギングします。"
-#. Tag: literal
-#: configuration.xml:1276
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.secure"
-msgstr "org.hibernate.secure"
+msgid "<literal>org.hibernate.secure</literal>"
+msgstr "<literal>org.hibernate.secure</literal>"
-#. Tag: entry
-#: configuration.xml:1277
+#. Tag: para
#, no-c-format
msgid "Log all JAAS authorization requests"
-msgstr "すべてのJAAS分析をロギングします。"
+msgstr "すべての JAAS 分析をロギングします。"
-#. Tag: literal
-#: configuration.xml:1280
-#, no-c-format
-msgid "org.hibernate"
-msgstr "org.hibernate"
-
-#. Tag: entry
-#: configuration.xml:1281
+#. Tag: para
#, fuzzy, no-c-format
+msgid "<literal>org.hibernate</literal>"
+msgstr "SessionFactory の JNDI への登録"
+
+#. Tag: para
+#, no-c-format
msgid ""
"Log everything. This is a lot of information but it is useful for "
"troubleshooting"
@@ -2273,7 +1928,6 @@
"便利です)"
#. Tag: para
-#: configuration.xml:1290
#, no-c-format
msgid ""
"When developing applications with Hibernate, you should almost always work "
@@ -2281,31 +1935,28 @@
"hibernate.SQL</literal>, or, alternatively, the property
<literal>hibernate."
"show_sql</literal> enabled."
msgstr ""
-"Hibernateでアプリケーションを作成するときは、<literal>org.hibernate.SQL</"
+"Hibernate でアプリケーションを作成するときは、 <literal>org.hibernate.SQL</"
"literal> カテゴリの <literal>debug</literal> を常に有効にしておいたほうが良い"
-"でしょう。 代替方法として、<literal>hibernate.show_sql</literal> を有効にする"
-"方法があります。"
+"でしょう。代替方法として、 <literal>hibernate.show_sql</literal> プロパティを"
+"有効にする方法があります。"
#. Tag: title
-#: configuration.xml:1300
#, no-c-format
msgid "Implementing a <literal>NamingStrategy</literal>"
-msgstr "<literal>NamingStrategy</literal> の実装"
+msgstr "<literal>NamingStrategy</literal> を選択"
#. Tag: para
-#: configuration.xml:1302
#, no-c-format
msgid ""
"The interface <literal>org.hibernate.cfg.NamingStrategy</literal>
allows you "
"to specify a \"naming standard\" for database objects and schema
elements."
msgstr ""
-"インターフェイス <literal>net.sf.hibernate.cfg.NamingStrategy</literal>
を使"
-"うと データベースオブジェクトとスキーマ要素のための「命名標準」を指定できま"
+"インターフェース <literal>net.sf.hibernate.cfg.NamingStrategy</literal>
を使"
+"うとデータベースオブジェクトとスキーマ要素のための「命名標準」を指定できま"
"す。"
#. Tag: para
-#: configuration.xml:1307
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can provide rules for automatically generating database identifiers from
"
"Java identifiers or for processing \"logical\" column and table names
given "
@@ -2314,53 +1965,38 @@
"noise (<literal>TBL_</literal> prefixes, for example). The default
strategy "
"used by Hibernate is quite minimal."
msgstr ""
-"Javaの識別子からデータベースの識別子を自動生成するためのルールや、 マッピング"
-"ファイルで与えた「論理的な」カラムとテーブル名から 「物理的な」テーブルとカラ"
-"ム名を生成するためのルールを用意することができます。 この機能は繰り返しの雑音"
-"(例えば <literal>TBL_</literal> プリフィックス)を取り除き、 マッピングド"
-"キュメントの冗長さを減らすことに役立ちます。 Hibernateが使うデフォルトの戦略"
-"はかなり最小限に近いものです。"
+"Java の識別子からデータベースの識別子を自動生成するためのルールや、マッピング"
+"ファイルで与えた「論理的な」カラムとテーブル名から「物理的な」テーブルとカラ"
+"ム名を生成するためのルールを用意することができます。この機能は繰り返しの雑音"
+"(例えば <literal>TBL_</literal> プリフィックス)を取り除き、マッピングドキュ"
+"メントの冗長さを減らすことに役立ちます。 Hibernate が使うデフォルトの戦略はか"
+"なり最小限に近いものです。"
#. Tag: para
-#: configuration.xml:1316
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can specify a different strategy by calling
<literal>Configuration."
"setNamingStrategy()</literal> before adding mappings:"
msgstr ""
"マッピングを追加する前に <literal>Configuration.setNamingStrategy()</"
-"literal> を呼ぶことで 以下のように異なる戦略を指定することができます:"
+"literal> を呼ぶことで以下のように異なる戦略を指定することができます:"
-#. Tag: programlisting
-#: configuration.xml:1321
-#, no-c-format
-msgid ""
-"<![CDATA[SessionFactory sf = new Configuration()\n"
-" .setNamingStrategy(ImprovedNamingStrategy.INSTANCE)\n"
-" .addFile(\"Item.hbm.xml\")\n"
-" .addFile(\"Bid.hbm.xml\")\n"
-" .buildSessionFactory();]]>"
-msgstr ""
-
#. Tag: para
-#: configuration.xml:1323
#, no-c-format
msgid ""
"<literal>org.hibernate.cfg.ImprovedNamingStrategy</literal> is a
built-in "
"strategy that might be a useful starting point for some applications."
msgstr ""
"<literal>org.hibernate.cfg.ImprovedNamingStrategy</literal>
は組み込みの戦略"
-"です。 これはいくつかのアプリケーションにとって有用な開始点となるかもしれませ"
+"です。これはいくつかのアプリケーションにとって有用な開始点となるかもしれませ"
"ん。"
#. Tag: title
-#: configuration.xml:1331
#, no-c-format
msgid "XML configuration file"
-msgstr "XML設定ファイル"
+msgstr "XML 設定ファイル"
#. Tag: para
-#: configuration.xml:1333
#, no-c-format
msgid ""
"An alternative approach to configuration is to specify a full configuration "
@@ -2368,69 +2004,23 @@
"as a replacement for the <literal>hibernate.properties</literal> file
or, if "
"both are present, to override properties."
msgstr ""
-"もう1つの方法は <literal>hibernate.cfg.xml</literal> という名前のファイルで "
-"十分な設定を指定する方法です。 このファイルは <literal>hibernate.properties</"
-"literal> ファイルの代わりとなります。 もし両方のファイルがあれば、プロパティ"
-"が置き換えられます。"
+"もう1つの方法は <literal>hibernate.cfg.xml</literal> という名前のファイルで十"
+"分な設定を指定する方法です。このファイルは <literal>hibernate.properties</"
+"literal> ファイルの代わりとなります。もし両方のファイルがあれば、プロパティが"
+"置き換えられます。"
#. Tag: para
-#: configuration.xml:1340
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The XML configuration file is by default expected to be in the root of your "
"<literal>CLASSPATH</literal>. Here is an example:"
msgstr ""
-"XML設定ファイルは初期設定で <literal>CLASSPATH</literal> に配置してくださ"
-"い。 これが例です:"
+"XML 設定ファイルは初期設定で <literal>CLASSPATH</literal> の root に配置して"
+"ください。これが例です:"
-#. Tag: programlisting
-#: configuration.xml:1345
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<?xml version='1.0' encoding='utf-8'?>\n"
-"<!DOCTYPE hibernate-configuration PUBLIC\n"
-" \"-//Hibernate/Hibernate Configuration DTD//EN\"\n"
-"
\"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd\">\n"
-"\n"
-"<hibernate-configuration>\n"
-"\n"
-" <!-- a SessionFactory instance listed as /jndi/name -->\n"
-" <session-factory\n"
-" name=\"java:hibernate/SessionFactory\">\n"
-"\n"
-" <!-- properties -->\n"
-" <property
name=\"connection.datasource\">java:/comp/env/jdbc/MyDB</"
-"property>\n"
-" <property
name=\"dialect\">org.hibernate.dialect.MySQLDialect</"
-"property>\n"
-" <property name=\"show_sql\">false</property>\n"
-" <property name=\"transaction.factory_class\">\n"
-" org.hibernate.transaction.JTATransactionFactory\n"
-" </property>\n"
-" <property
name=\"jta.UserTransaction\">java:comp/UserTransaction</"
-"property>\n"
-"\n"
-" <!-- mapping files -->\n"
-" <mapping
resource=\"org/hibernate/auction/Item.hbm.xml\"/>\n"
-" <mapping
resource=\"org/hibernate/auction/Bid.hbm.xml\"/>\n"
-"\n"
-" <!-- cache settings -->\n"
-" <class-cache class=\"org.hibernate.auction.Item\"
usage=\"read-write"
-"\"/>\n"
-" <class-cache class=\"org.hibernate.auction.Bid\"
usage=\"read-only\"/"
-">\n"
-" <collection-cache
collection=\"org.hibernate.auction.Item.bids\" "
-"usage=\"read-write\"/>\n"
-"\n"
-" </session-factory>\n"
-"\n"
-"</hibernate-configuration>]]>"
-msgstr ""
-
-#. Tag: para
-#: configuration.xml:1347
-#, fuzzy, no-c-format
-msgid ""
"The advantage of this approach is the externalization of the mapping file "
"names to configuration. The <literal>hibernate.cfg.xml</literal> is
also "
"more convenient once you have to tune the Hibernate cache. It is your choice
"
@@ -2439,56 +2029,34 @@
"benefits of using the XML syntax."
msgstr ""
"見てのとおり、この方法の優位性は設定のためのマッピングファイル名を外出しにで"
-"きることです。 Hibernateキャッシュをチューニングしなければならないのであれ"
+"きることです。 Hibernate キャッシュをチューニングしなければならないのであれ"
"ば、 <literal>hibernate.cfg.xml</literal> はより便利です。 "
"<literal>hibernate.properties</literal> と
<literal>hibernate.cfg.xml</"
-"literal> の どちらかを使えることを覚えておいてください。 二つは同じもので、違"
-"うところといえばXML構文を使うことの利点だけです。"
+"literal> の どちらかを使えることを覚えておいてください。2つは同じもので、違う"
+"ところといえば XML 構文を使うことの利点だけです。"
#. Tag: para
-#: configuration.xml:1356
-#, fuzzy, no-c-format
+#, no-c-format
msgid "With the XML configuration, starting Hibernate is then as simple as:"
-msgstr "XML設定を使うことで、Hibernateは以下のようにシンプルになります。"
+msgstr "XML 設定を使うことで、 Hibernate は以下のようにシンプルになります。"
-#. Tag: programlisting
-#: configuration.xml:1360
-#, no-c-format
-msgid ""
-"<![CDATA[SessionFactory sf = new Configuration().configure()."
-"buildSessionFactory();]]>"
-msgstr ""
-
#. Tag: para
-#: configuration.xml:1362
-#, fuzzy, no-c-format
+#, no-c-format
msgid "You can select a different XML configuration file using:"
-msgstr "違うXML設定ファイルを使うこともできます。"
+msgstr "違う XML 設定ファイルを使うこともできます。"
-#. Tag: programlisting
-#: configuration.xml:1366
-#, no-c-format
-msgid ""
-"<![CDATA[SessionFactory sf = new Configuration()\n"
-" .configure(\"catdb.cfg.xml\")\n"
-" .buildSessionFactory();]]>"
-msgstr ""
-
#. Tag: title
-#: configuration.xml:1371
#, no-c-format
msgid "J2EE Application Server integration"
-msgstr "J2EEアプリケーションサーバとの統合"
+msgstr "J2EE アプリケーションサーバーとの統合"
#. Tag: para
-#: configuration.xml:1373
#, no-c-format
msgid "Hibernate has the following integration points for J2EE
infrastructure:"
-msgstr "HibernateはJ2EE構造と統合するポイントをサポートしています。"
+msgstr "Hibernate は J2EE 構造と統合するポイントをサポートしています:"
#. Tag: para
-#: configuration.xml:1379
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Container-managed datasources</emphasis>: Hibernate can use
JDBC "
"connections managed by the container and provided through JNDI. Usually, a "
@@ -2499,27 +2067,25 @@
"(BMT), or you might want to use the optional Hibernate
<literal>Transaction</"
"literal> API for this to keep your code portable."
msgstr ""
-"<emphasis>コンテナ管理データソース</emphasis>:Hibernateは JNDIが提供し、コン"
-"テナが管理するJDBCコネクションを使用できます。 通常、JTA準拠の "
+"<emphasis>コンテナ管理データソース</emphasis>: Hibernate は JNDI が提供し、"
+"コンテナが管理する JDBC コネクションを使用できます。通常、 JTA 準拠の "
"<literal>TransactionManager</literal> と
<literal>ResourceManager</literal> "
-"がトランザクション管理(CMT)、 特に様々なデータソースにまたがる分散トランザク"
-"ションを扱います。 当然プログラムでトランザクション境界を指定できます(BMT)。 "
-"あるいは、記述したコードのポータビリティを保つために、 オプションのHibernate"
-"の <literal>Transaction</literal> APIを使いたくなるかもしれません。"
+"がトランザクション管理 (CMT)、特に様々なデータソースにまたがる分散トランザク"
+"ションを扱います。当然プログラムでトランザクション境界を指定できます (BMT)。"
+"あるいは、記述したコードのポータビリティを保つために、オプションの Hibernate "
+"の <literal>Transaction</literal> API を使いたくなるかもしれません。"
#. Tag: para
-#: configuration.xml:1394
#, no-c-format
msgid ""
"<emphasis>Automatic JNDI binding</emphasis>: Hibernate can bind its
"
"<literal>SessionFactory</literal> to JNDI after startup."
msgstr ""
-"<emphasis>自動JNDIバインディング</emphasis>:HibernateはJNDIが立ち上がった後"
-"に <literal>SessionFactory</literal> を生成します。"
+"<emphasis>自動 JNDI バインディング</emphasis>: Hibernate は JNDI が立ち上"
+"がった後に <literal>SessionFactory</literal> を生成します。"
#. Tag: para
-#: configuration.xml:1403
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>JTA Session binding:</emphasis> the Hibernate
<literal>Session</"
"literal> can be automatically bound to the scope of JTA transactions. Simply
"
@@ -2529,17 +2095,16 @@
"demarcation is either declarative (CMT) or programmatic (BMT/"
"UserTransaction)."
msgstr ""
-"<emphasis>JTAセッションバインディング</emphasis> : Hibernate "
-"<literal>Session</literal> のトランザクション境界はJTAトランザクションと同じ"
-"になります。 単純に <literal>SessionFactory</literal> をJNDIからlookupして、 "
-"現在の <literal>Session</literal> を取得します。 JTAトランザクションが完了し"
-"たときに、Hibernateが <literal>Session</literal> をフラッシュし、クローズしま"
-"す。 EJBデプロイメントディスクリプタの中に、トランザクション境界を宣言しま"
-"す。"
+"<emphasis> JTA セッションバインディング</emphasis>: Hibernate "
+"<literal>Session</literal> は自動的に JTA トランザクションのスコープにバイン"
+"ドされます。単純に <literal>SessionFactory</literal> を JNDI から lookup し"
+"て、現在の <literal>Session</literal> を取得します。 JTA トランザクションが完"
+"了したときに、 Hibernateが <literal>Session</literal> をフラッシュし、クロー"
+"ズします。トランザクション境界は、宣言 (CMT) することも、プログラム (BMT/"
+"UserTransaction) することも可能です。"
#. Tag: para
-#: configuration.xml:1416
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>JMX deployment:</emphasis> if you have a JMX capable
application "
"server (e.g. JBoss AS), you can choose to deploy Hibernate as a managed "
@@ -2549,35 +2114,32 @@
"take care of service dependencies (datasource has to be available before "
"Hibernate starts, etc)."
msgstr ""
-"<emphasis>JMXデプロイ:</emphasis> もしJMXが使用可能なアプリケーションサーバ"
-"(例えばJBOSS) がある場合、HibernateをMBeanとしてデプロイすることを選べま"
-"す。 これは <literal>Configuration</literal> から
<literal>SessionFactory</"
-"literal> を 生成するコードを無くすことができます。 コンテナは "
-"<literal>HibernateService</literal> を起動し、 サービスの依存を理想的に管理し"
-"ます(データソースはHibernateやその他が起動する前に 使用できるようにしなけれ"
-"ばなりません)。"
+"<emphasis> JMX デプロイメント:</emphasis> もし JMX が使用可能なアプリケーショ"
+"ンサーバー(例えば JBoss AS) がある場合、 Hibernate を MBean としてデプロイ"
+"することを選べます。これは <literal>Configuration</literal> から "
+"<literal>SessionFactory</literal> を生成するコードを無くすことができます。コ"
+"ンテナは <literal>HibernateService</literal> を起動し、サービスの依存を理想的"
+"に管理します(データソースは Hibernate やその他が起動する前に使用できるように"
+"しなければなりません)。"
#. Tag: para
-#: configuration.xml:1427
#, no-c-format
msgid ""
"Depending on your environment, you might have to set the configuration "
"option <literal>hibernate.connection.aggressive_release</literal> to
true if "
"your application server shows \"connection containment\"
exceptions."
msgstr ""
-"環境に依存しますが、もし、アプリケーションサーバが\"connection containment"
-"\"の例外をスローするなら 設定のオプション <literal>hibernate.connection."
-"aggressive_release</literal> をtrueにしてください。"
+"環境に依存しますが、もしアプリケーションサーバーが \"connection containment"
+"\" の例外を出す場合、設定のオプション <literal>hibernate.connection."
+"aggressive_release</literal> を true にしてください。"
#. Tag: title
-#: configuration.xml:1434
#, no-c-format
msgid "Transaction strategy configuration"
msgstr "トランザクション戦略設定"
#. Tag: para
-#: configuration.xml:1436
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The Hibernate <literal>Session</literal> API is independent of any
"
"transaction demarcation system in your architecture. If you let Hibernate "
@@ -2586,15 +2148,14 @@
"server, you might want to use bean-managed transactions and call the JTA API
"
"and <literal>UserTransaction</literal> when needed."
msgstr ""
-"Hibernate <literal>Session</literal> APIは、アーキテクチャ内のシステムの管轄"
-"である あらゆるトランザクションに依存しません。 もしコネクションプールのJDBC"
-"を直接使いたい場合、JDBC APIから トランザクションを呼ぶことができます。 も"
-"し、J2EEアプリケーションサーバで動作させるなら、Bean管理トランザクションを使"
-"い、 必要に応じて <literal>UserTransaction</literal> をJTA APIから呼ぶことに"
-"なるでしょう。"
+"Hibernate <literal>Session</literal> API は、アーキテクチャ内のシステムの管轄"
+"であるあらゆるトランザクションに依存しません。もしコネクションプールの JDBC "
+"を直接使いたい場合、 JDBC API から トランザクションを呼ぶことができます。も"
+"し、 J2EE アプリケーションサーバーで動作させるなら、 Bean 管理トランザクショ"
+"ンを使い、必要に応じて <literal>UserTransaction</literal> を JTA API から呼ぶ"
+"ことになるでしょう。"
#. Tag: para
-#: configuration.xml:1444
#, no-c-format
msgid ""
"To keep your code portable between these two (and other) environments we "
@@ -2605,73 +2166,64 @@
"literal>."
msgstr ""
"2つ(それ以上)の環境で互換性のあるコードを維持するために、オプションとして根"
-"本的なシステムを ラッピングするHibernate <literal>Transaction</literal> APIを"
-"推奨します。 Hibernate設定プロパティの <literal>hibernate.transaction."
-"factory_class</literal> を設定することで ある特定の <literal>Transaction</"
+"本的なシステムをラッピングする Hibernate <literal>Transaction</literal> API "
+"を推奨します。 Hibernate 設定プロパティの <literal>hibernate.transaction."
+"factory_class</literal> を設定することで、ある特定の <literal>Transaction</"
"literal> クラスのインスタンスを持つことができます。"
#. Tag: para
-#: configuration.xml:1451
-#, fuzzy, no-c-format
+#, no-c-format
msgid "There are three standard, or built-in, choices:"
msgstr "3つの基本的な(既にある)選択を挙げます:"
-#. Tag: literal
-#: configuration.xml:1457
+#. Tag: term
#, no-c-format
-msgid "org.hibernate.transaction.JDBCTransactionFactory"
-msgstr "org.hibernate.transaction.JDBCTransactionFactory"
+msgid
"<literal>org.hibernate.transaction.JDBCTransactionFactory</literal>"
+msgstr
"<literal>org.hibernate.transaction.JDBCTransactionFactory</literal>"
#. Tag: para
-#: configuration.xml:1459
#, no-c-format
msgid "delegates to database (JDBC) transactions (default)"
-msgstr "データベース(JDBC)トランザクションに委譲します(デフォルト)"
+msgstr "データベース (JDBC) トランザクションに委譲します(デフォルト)"
-#. Tag: literal
-#: configuration.xml:1463
+#. Tag: term
#, no-c-format
-msgid "org.hibernate.transaction.JTATransactionFactory"
-msgstr "org.hibernate.transaction.JTATransactionFactory"
+msgid
"<literal>org.hibernate.transaction.JTATransactionFactory</literal>"
+msgstr
"<literal>org.hibernate.transaction.JTATransactionFactory</literal>"
#. Tag: para
-#: configuration.xml:1465
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"delegates to container-managed transactions if an existing transaction is "
"underway in this context (for example, EJB session bean method). Otherwise, "
"a new transaction is started and bean-managed transactions are used."
msgstr ""
-"もし、このコンテキスト(例えば、EJBセッションBeanメソッド)で進行中のトランザ"
-"クションが存在する、もしくは 新しいトランザクションが開始されており、Bean管理"
-"トランザクションが使われている場合、 コンテナ管理トランザクションに委譲しま"
-"す。"
+"もし、このコンテキスト(例えば、 EJB セッション Bean メソッド)で進行中のトラ"
+"ンザクションが存在する場合、コンテナ管理トランザクションに委譲します。そうで"
+"ない場合は、新しいトランザクションが開始されており、 Bean 管理トランザクショ"
+"ンが使われます。"
-#. Tag: literal
-#: configuration.xml:1473
+#. Tag: term
#, no-c-format
-msgid "org.hibernate.transaction.CMTTransactionFactory"
-msgstr "org.hibernate.transaction.CMTTransactionFactory"
+msgid
"<literal>org.hibernate.transaction.CMTTransactionFactory</literal>"
+msgstr
"<literal>org.hibernate.transaction.CMTTransactionFactory</literal>"
#. Tag: para
-#: configuration.xml:1475
#, no-c-format
msgid "delegates to container-managed JTA transactions"
-msgstr "コンテナ管理JTAトランザクションに委譲します"
+msgstr "コンテナ管理 JTA トランザクションに委譲します"
#. Tag: para
-#: configuration.xml:1480
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also define your own transaction strategies (for a CORBA transaction
"
"service, for example)."
msgstr ""
-"自分自身のトランザクション戦略(例えば、CORBAトランザクションサービス)を定義"
-"することもできます。"
+"自分自身のトランザクション戦略(例えば、 CORBA トランザクションサービス)を定"
+"義することもできます。"
#. Tag: para
-#: configuration.xml:1485
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Some features in Hibernate (i.e., the second level cache, Contextual "
"Sessions with JTA, etc.) require access to the JTA "
@@ -2680,174 +2232,174 @@
"have to specify how Hibernate should obtain a reference to the "
"<literal>TransactionManager</literal>:"
msgstr ""
-"Hibernateのいくつかの機能(例えば、二次キャッシュ、JTAによるコンテキストセッ"
-"ション 等)は 管理された環境の中のJTA <literal>TransactionManager</literal> "
-"へのアクセスを要求します。 J2EEがひとつのメカニズムに規格化されていないの"
-"で、 アプリケーションサーバにおいて、Hibernateが "
-"<literal>TransactionManager</literal> のリファレンス を取得する方法を明確にす"
+"Hibernate のいくつかの機能(例えば、二次キャッシュ、 JTA によるコンテキスト"
+"セッション等)は管理された環境の中の JTA <literal>TransactionManager</"
+"literal> へのアクセスを要求します。 J2EE がひとつのメカニズムに規格化されてい"
+"ないので、アプリケーションサーバーにおいて、 Hibernateが "
+"<literal>TransactionManager</literal> のリファレンスを取得する方法を明確にす"
"る必要があります。"
#. Tag: title
-#: configuration.xml:1493
#, no-c-format
msgid "JTA TransactionManagers"
msgstr "JTA トランザクションマネージャ"
-#. Tag: entry
-#: configuration.xml:1499
+#. Tag: para
#, no-c-format
msgid "Transaction Factory"
msgstr "Transaction Factory"
-#. Tag: entry
-#: configuration.xml:1500
+#. Tag: para
#, no-c-format
msgid "Application Server"
msgstr "Application Server"
-#. Tag: literal
-#: configuration.xml:1505
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction.JBossTransactionManagerLookup"
-msgstr "org.hibernate.transaction.JBossTransactionManagerLookup"
+msgid ""
+"<literal>org.hibernate.transaction.
JBossTransactionManagerLookup</literal>"
+msgstr ""
+"<literal>org.hibernate.transaction.
JBossTransactionManagerLookup</literal>"
-#. Tag: entry
-#: configuration.xml:1506
+#. Tag: para
#, no-c-format
msgid "JBoss"
msgstr "JBoss"
-#. Tag: literal
-#: configuration.xml:1509
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction.WeblogicTransactionManagerLookup"
-msgstr "org.hibernate.transaction.WeblogicTransactionManagerLookup"
+msgid ""
+"<literal>org.hibernate.transaction.
WeblogicTransactionManagerLookup</"
+"literal>"
+msgstr ""
+"<literal>org.hibernate.transaction.
WeblogicTransactionManagerLookup</"
+"literal>"
-#. Tag: entry
-#: configuration.xml:1510
+#. Tag: para
#, no-c-format
msgid "Weblogic"
msgstr "Weblogic"
-#. Tag: literal
-#: configuration.xml:1513
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction.WebSphereTransactionManagerLookup"
-msgstr "org.hibernate.transaction.WebSphereTransactionManagerLookup"
+msgid ""
+"<literal>org.hibernate.transaction.
WebSphereTransactionManagerLookup</"
+"literal>"
+msgstr ""
+"<literal>org.hibernate.transaction.
WebSphereTransactionManagerLookup</"
+"literal>"
-#. Tag: entry
-#: configuration.xml:1514
+#. Tag: para
#, no-c-format
msgid "WebSphere"
msgstr "WebSphere"
-#. Tag: literal
-#: configuration.xml:1517
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction.WebSphereExtendedJTATransactionLookup"
-msgstr "org.hibernate.transaction.WebSphereExtendedJTATransactionLookup"
+msgid ""
+"<literal>org.hibernate.transaction.
WebSphereExtendedJTATransactionLookup</"
+"literal>"
+msgstr ""
+"<literal>org.hibernate.transaction.
WebSphereExtendedJTATransactionLookup</"
+"literal>"
-#. Tag: entry
-#: configuration.xml:1518
+#. Tag: para
#, no-c-format
msgid "WebSphere 6"
msgstr "WebSphere 6"
-#. Tag: literal
-#: configuration.xml:1521
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction.OrionTransactionManagerLookup"
-msgstr "org.hibernate.transaction.OrionTransactionManagerLookup"
+msgid ""
+"<literal>org.hibernate.transaction.
OrionTransactionManagerLookup</literal>"
+msgstr ""
+"<literal>org.hibernate.transaction.
OrionTransactionManagerLookup</literal>"
-#. Tag: entry
-#: configuration.xml:1522
+#. Tag: para
#, no-c-format
msgid "Orion"
msgstr "Orion"
-#. Tag: literal
-#: configuration.xml:1525
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction.ResinTransactionManagerLookup"
-msgstr "org.hibernate.transaction.ResinTransactionManagerLookup"
+msgid ""
+"<literal>org.hibernate.transaction.
ResinTransactionManagerLookup</literal>"
+msgstr ""
+"<literal>org.hibernate.transaction.
ResinTransactionManagerLookup</literal>"
-#. Tag: entry
-#: configuration.xml:1526
+#. Tag: para
#, no-c-format
msgid "Resin"
msgstr "Resin"
-#. Tag: literal
-#: configuration.xml:1529
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction.JOTMTransactionManagerLookup"
-msgstr "org.hibernate.transaction.JOTMTransactionManagerLookup"
+msgid ""
+"<literal>org.hibernate.transaction.
JOTMTransactionManagerLookup</literal>"
+msgstr ""
+"<literal>org.hibernate.transaction.
JOTMTransactionManagerLookup</literal>"
-#. Tag: entry
-#: configuration.xml:1530
+#. Tag: para
#, no-c-format
msgid "JOTM"
msgstr "JOTM"
-#. Tag: literal
-#: configuration.xml:1533
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction.JOnASTransactionManagerLookup"
-msgstr "org.hibernate.transaction.JOnASTransactionManagerLookup"
+msgid ""
+"<literal>org.hibernate.transaction.
JOnASTransactionManagerLookup</literal>"
+msgstr ""
+"<literal>org.hibernate.transaction.
JOnASTransactionManagerLookup</literal>"
-#. Tag: entry
-#: configuration.xml:1534
+#. Tag: para
#, no-c-format
msgid "JOnAS"
msgstr "JOnAS"
-#. Tag: literal
-#: configuration.xml:1537
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction.JRun4TransactionManagerLookup"
-msgstr "org.hibernate.transaction.JRun4TransactionManagerLookup"
+msgid ""
+"<literal>org.hibernate.transaction.
JRun4TransactionManagerLookup</literal>"
+msgstr ""
+"<literal>org.hibernate.transaction.
JRun4TransactionManagerLookup</literal>"
-#. Tag: entry
-#: configuration.xml:1538
+#. Tag: para
#, no-c-format
msgid "JRun4"
msgstr "JRun4"
-#. Tag: literal
-#: configuration.xml:1541
+#. Tag: para
#, no-c-format
-msgid "org.hibernate.transaction.BESTransactionManagerLookup"
-msgstr "org.hibernate.transaction.BESTransactionManagerLookup"
+msgid ""
+"<literal>org.hibernate.transaction.
BESTransactionManagerLookup</literal>"
+msgstr ""
+"<literal>org.hibernate.transaction.
BESTransactionManagerLookup</literal>"
-#. Tag: entry
-#: configuration.xml:1542
+#. Tag: para
#, no-c-format
msgid "Borland ES"
msgstr "Borland ES"
#. Tag: title
-#: configuration.xml:1551
#, no-c-format
msgid "JNDI-bound <literal>SessionFactory</literal>"
-msgstr "<literal>SessionFactory</literal> のJNDIへの登録"
+msgstr "<literal>SessionFactory</literal> の JNDI への登録"
#. Tag: para
-#: configuration.xml:1553
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A JNDI-bound Hibernate <literal>SessionFactory</literal> can simplify
the "
"lookup function of the factory and create new
<literal>Session</literal>s. "
"This is not, however, related to a JNDI bound
<literal>Datasource</literal>; "
"both simply use the same registry."
msgstr ""
-"JNDIに登録したHibernate <literal>SessionFactory</literal> は単純に ファクトリ"
-"をルックアップし、新しい <literal>Session</literal> を作ります。 これはJNDIに"
-"登録された <literal>Datasource</literal> には関連せず、 お互いにシンプルにこ"
-"れらの登録を使うことに注意してください。"
+"JNDI に登録した Hibernate <literal>SessionFactory</literal> はファクトリの"
+"ルックアップと新しい <literal>Session</literal> の作成を簡易化します。これは "
+"JNDI に登録された <literal>Datasource</literal> には関連せず、両方とも単に同"
+"じ登録を使うことに注意してください。"
#. Tag: para
-#: configuration.xml:1560
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you wish to have the <literal>SessionFactory</literal> bound to a
JNDI "
"namespace, specify a name (e.g.
<literal>java:hibernate/SessionFactory</"
@@ -2856,15 +2408,14 @@
"will not be bound to JNDI. This is especially useful in environments with a "
"read-only JNDI default implementation (in Tomcat, for example)."
msgstr ""
-"もし <literal>SessionFactory</literal> をJNDIネームスペースに登録したい場"
-"合、 特別な名前(例えば、 <literal>java:hibernate/SessionFactory</literal> )"
+"もし <literal>SessionFactory</literal> を JNDI ネームスペースに登録したい場"
+"合、特別な名前(例えば、 <literal>java:hibernate/SessionFactory</literal> )"
"を <literal>hibernate.session_factory_name</literal> プロパティに使ってくださ"
-"い もしこのプロパティを省略した場合、 <literal>SessionFactory</literal> は "
-"JNDIに登録されません。(これはTomcatのようなデフォルト実装でJNDIが読みより専"
-"用の環境の場合特に便利です。)"
+"い。もしこのプロパティを省略した場合、 <literal>SessionFactory</literal> は "
+"JNDI に登録されません。(これは Tomcat のようなデフォルト実装で JNDI が読み取"
+"り専用の環境の場合は特に便利です。)"
#. Tag: para
-#: configuration.xml:1568
#, no-c-format
msgid ""
"When binding the <literal>SessionFactory</literal> to JNDI, Hibernate
will "
@@ -2872,14 +2423,13 @@
"jndi.class</literal> to instantiate an initial context. If they are not
"
"specified, the default <literal>InitialContext</literal> will be
used."
msgstr ""
-"<literal>SessionFactory</literal> をJNDIに登録するとき、Hibernateは "
+"<literal>SessionFactory</literal> を JNDI に登録するとき、 Hibernate は "
"<literal>hibernate.jndi.url</literal>
の値を使用し、<literal>hibernate.jndi."
-"class</literal> をイニシャルコンテキストとして具体化します。 もし何も設定しな"
+"class</literal> をイニシャルコンテキストとして具体化します。もし何も設定しな"
"い場合は、デフォルトの <literal>InitialContext</literal> を使用します。"
#. Tag: para
-#: configuration.xml:1575
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate will automatically place the
<literal>SessionFactory</literal> in "
"JNDI after you call <literal>cfg.buildSessionFactory()</literal>. This
means "
@@ -2888,27 +2438,25 @@
"<literal>HibernateService</literal> (this is discussed later in greater
"
"detail)."
msgstr ""
-"<literal>cfg.buildSessionFactory()</literal> をコール後 Hibernateは自動的に
"
-"<literal>SessionFactory</literal> をJNDIに配置します。 "
-"<literal>HibernateService</literal> と一緒にJMXデプロイメントを使わない限"
-"り、 これはこの呼び出しをアプリケーション内の何らかのスタートアップコード(も"
-"しくはユーティリティクラス) に配置しなければならないことを意味します。(後で"
-"議論します)"
+"<literal>cfg.buildSessionFactory()</literal> をコール後 Hibernate は自動的に
"
+"<literal>SessionFactory</literal> を JNDI に配置します。 "
+"<literal>HibernateService</literal> と一緒に JMX デプロイメントを使わない限"
+"り、これはこの呼び出しをアプリケーション内の何らかのスタートアップコード(も"
+"しくはユーティリティクラス) に配置しなければならないことを意味します(後で議"
+"論します)。"
#. Tag: para
-#: configuration.xml:1582
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you use a JNDI <literal>SessionFactory</literal>, an EJB or any
other "
"class, you can obtain the <literal>SessionFactory</literal> using a
JNDI "
"lookup."
msgstr ""
-"もしJNDI <literal>SessionFactory</literal> を使う場合、EJBや他のクラスは JNDI"
-"ルックアップを使って <literal>SessionFactory</literal> を取得します。"
+"もし JNDI <literal>SessionFactory</literal> を使う場合、 EJB や他のクラスは "
+"JNDI ルックアップを使って <literal>SessionFactory</literal> を取得します。"
#. Tag: para
-#: configuration.xml:1587
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is recommended that you bind the <literal>SessionFactory</literal>
to "
"JNDI in a managed environment and use a <literal>static</literal>
singleton "
@@ -2918,28 +2466,26 @@
"()</literal>. Note that such a class is also a convenient way to startup
"
"Hibernate—see chapter 1."
msgstr ""
-"管理された環境では <literal>SessionFactory</literal> をJNDIにバインドし、 そ"
-"うでなければ <literal>static</literal> シングルトンを使うことを推奨します。 "
-"こういった詳細からアプリケーションコードを保護するために、 "
+"管理された環境では <literal>SessionFactory</literal> を JNDI にバインドし、そ"
+"うでなければ <literal>static</literal> シングルトンを使うことを推奨します。こ"
+"ういった詳細からアプリケーションコードを保護するために、 "
"<literal>HibernateUtil.getSessionFactory()</literal>
のようなヘルパークラスの"
"中に、 <literal>SessionFactory</literal> をルックアップするコードを隠すことを"
-"推奨します。 このようなヘルパークラスはHibernateを開始する便利な手段でもあり"
-"ます。 —1章を参照してください。"
+"推奨します。このようなヘルパークラスは Hibernate を開始する便利な手段でもあり"
+"ます。 - 1章を参照してください。"
#. Tag: title
-#: configuration.xml:1599
#, no-c-format
msgid "Current Session context management with JTA"
-msgstr "JTAによる現在のセッションコンテキストマネージメント"
+msgstr "JTA による現在のセッションコンテキストマネージメント"
#. Tag: para
-#: configuration.xml:1601
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The easiest way to handle <literal>Sessions</literal> and transactions
is "
"Hibernate's automatic \"current\"
<literal>Session</literal> management. For "
"a discussion of contextual sessions see <xref
linkend=\"architecture-current-"
-"session\"/>. Using the <literal>\"jta\"</literal>
session context, if there "
+"session\" />. Using the <literal>\"jta\"</literal>
session context, if there "
"is no Hibernate <literal>Session</literal> associated with the current
JTA "
"transaction, one will be started and associated with that JTA transaction "
"the first time you call
<literal>sessionFactory.getCurrentSession()</"
@@ -2957,33 +2503,31 @@
"preferred."
msgstr ""
"もっとも簡単に <literal>Session</literal> とトランザクションを扱う方法は、 "
-"Hibernateが自動的に「現在の」 <literal>Session</literal> を管理することで"
-"す。 <xref
linkend=\"architecture-current-session\">カレントセッション</"
-"xref> の説明を参照してください。 もし <literal>「JTA」</literal> セッションコ"
-"ンテキストを使った上で、 現在のJTAトランザクションとHibernate "
-"<literal>Session</literal> が関連していない場合は、 最初に "
-"<literal>sessionFactory.getCurrentSession()</literal> をコールし、
JTAトラン"
-"ザクションとの関連付けを行ってください。 <literal>「JTA」</literal> コンテキ"
-"ストの <literal>getCurrentSession()</literal> を 通じて取得した "
-"<literal>Session</literal> は、トランザクションが完了する前に 自動的にフラッ"
-"シュし、完了した後には自動的にクローズします。 また、各ステートメント後にJDBC"
-"コネクションを積極的にリリースします。 これによりJTAトランザクションのライフ"
-"サイクルで <literal>Session</literal> を管理することができ、 ユーザーのコード"
-"からそのような管理をするコードを排除できます。 <literal>UserTransaction</"
-"literal> を通じてJTAをプログラムで管理することができます。 または、(ポータブ"
-"ルなコードであれば)Hibernate <literal>Transaction</literal> APIを トランザク"
-"ション境界として使うこともできます。 EJBコンテナを使うときは、CMTによる宣言的"
-"トランザクション境界が好ましいです。"
+"Hibernate が自動的に「現在の」 <literal>Session</literal> を管理することで"
+"す。 <xref linkend=\"architecture-current-session\"/>
カレントセッションの説"
+"明を参照してください。もし <literal>\"jta\"</literal> セッションコンテキスト"
+"を使った上で、現在の JTA トランザクションと Hibernate <literal>Session</"
+"literal> が関連していない場合は、最初に <literal>sessionFactory."
+"getCurrentSession()</literal> をコールし、 JTA トランザクションとの関連付けを"
+"行ってください。 <literal>\"jta\"</literal> コンテキストの "
+"<literal>getCurrentSession()</literal> を通じて取得した
<literal>Session</"
+"literal> は、トランザクションが完了する前に自動的にフラッシュし、完了した後に"
+"は自動的にクローズします。また、各ステートメント後に JDBC コネクションを積極"
+"的にリリースします。これにより JTA トランザクションのライフサイクルで "
+"<literal>Session</literal> を管理することができ、ユーザーのコードからそのよう"
+"な管理をするコードを排除できます。 <literal>UserTransaction</literal> を通じ"
+"て JTA をプログラムで管理することができます。または、(ポータブルなコードであ"
+"れば) Hibernate <literal>Transaction</literal> API をトランザクション境界と"
+"して使うこともできます。 EJB コンテナを使うときは、 CMT による宣言的トランザ"
+"クション境界が好ましいです。"
#. Tag: title
-#: configuration.xml:1624
#, no-c-format
msgid "JMX deployment"
-msgstr "JMXデプロイメント"
+msgstr "JMX デプロイメント"
#. Tag: para
-#: configuration.xml:1626
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The line <literal>cfg.buildSessionFactory()</literal> still has to be
"
"executed somewhere to get a <literal>SessionFactory</literal> into
JNDI. You "
@@ -2991,81 +2535,28 @@
"the one in <literal>HibernateUtil</literal>, or you can deploy
Hibernate as "
"a <emphasis>managed service</emphasis>."
msgstr ""
-"<literal>SessionFactory</literal> をJNDIから取得するためには
<literal>cfg."
-"buildSessionFactory()</literal> 行をどこかで実行していなければなりません。 あ"
-"なたはこれを、<literal>static</literal> 初期化ブロック内"
+"<literal>SessionFactory</literal> を JNDI から取得するためには
<literal>cfg."
+"buildSessionFactory()</literal> 行をどこかで実行していなければなりません。あ"
+"なたはこれを、 <literal>static</literal> 初期化ブロック内"
"( <literal>HibernateUtil</literal> のような)か <emphasis>managed
service</"
-"emphasis> としてHibernateをデプロイするか、どちらかで実行できます。"
+"emphasis> として Hibernate をデプロイするか、どちらかで実行できます。"
#. Tag: para
-#: configuration.xml:1634
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate is distributed with
<literal>org.hibernate.jmx.HibernateService</"
"literal> for deployment on an application server with JMX capabilities, such
"
"as JBoss AS. The actual deployment and configuration is vendor-specific. "
"Here is an example <literal>jboss-service.xml</literal> for JBoss
4.0.x:"
msgstr ""
-"JBOSSのようなJMXの機能でアプリケーションサーバにデプロイするために "
-"<literal>org.hibernate.jmx.HibernateService</literal> を使って、配置します。
"
-"実際のデプロイメントと設定はベンダー特有です。 ここで例としてJBOSS 4.0.x用の "
-"<literal>jboss-service.xml</literal> を示します。"
+"JBoss AS のような JMX の機能でアプリケーションサーバーにデプロイするために "
+"<literal>org.hibernate.jmx.HibernateService</literal>
を使って、配置します。"
+"実際のデプロイメントと設定はベンダー特有です。ここで例として JBoss 4.0.x 用"
+"の <literal>jboss-service.xml</literal> を示します。"
-#. Tag: programlisting
-#: configuration.xml:1641
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<?xml version=\"1.0\"?>\n"
-"<server>\n"
-"\n"
-"<mbean code=\"org.hibernate.jmx.HibernateService\"\n"
-"
name=\"jboss.jca:service=HibernateFactory,name=HibernateFactory\">\n"
-"\n"
-" <!-- Required services -->\n"
-" <depends>jboss.jca:service=RARDeployer</depends>\n"
-" <depends>jboss.jca:service=LocalTxCM,name=HsqlDS</depends>\n"
-"\n"
-" <!-- Bind the Hibernate service to JNDI -->\n"
-" <attribute
name=\"JndiName\">java:/hibernate/SessionFactory</attribute>\n"
-"\n"
-" <!-- Datasource settings -->\n"
-" <attribute
name=\"Datasource\">java:HsqlDS</attribute>\n"
-" <attribute
name=\"Dialect\">org.hibernate.dialect.HSQLDialect</"
-"attribute>\n"
-"\n"
-" <!-- Transaction integration -->\n"
-" <attribute name=\"TransactionStrategy\">\n"
-" org.hibernate.transaction.JTATransactionFactory</attribute>\n"
-" <attribute name=\"TransactionManagerLookupStrategy\">\n"
-"
org.hibernate.transaction.JBossTransactionManagerLookup</attribute>\n"
-" <attribute
name=\"FlushBeforeCompletionEnabled\">true</attribute>\n"
-" <attribute
name=\"AutoCloseSessionEnabled\">true</attribute>\n"
-"\n"
-" <!-- Fetching options -->\n"
-" <attribute
name=\"MaximumFetchDepth\">5</attribute>\n"
-"\n"
-" <!-- Second-level caching -->\n"
-" <attribute
name=\"SecondLevelCacheEnabled\">true</attribute>\n"
-" <attribute
name=\"CacheProviderClass\">org.hibernate.cache."
-"EhCacheProvider</attribute>\n"
-" <attribute
name=\"QueryCacheEnabled\">true</attribute>\n"
-"\n"
-" <!-- Logging -->\n"
-" <attribute
name=\"ShowSqlEnabled\">true</attribute>\n"
-"\n"
-" <!-- Mapping files -->\n"
-" <attribute
name=\"MapResources\">auction/Item.hbm.xml,auction/Category."
-"hbm.xml</attribute>\n"
-"\n"
-"</mbean>\n"
-"\n"
-"</server>]]>"
-msgstr ""
-
-#. Tag: para
-#: configuration.xml:1643
-#, fuzzy, no-c-format
-msgid ""
"This file is deployed in a directory called <literal>META-INF</literal>
and "
"packaged in a JAR file with the extension <literal>.sar</literal>
(service "
"archive). You also need to package Hibernate, its required third-party "
@@ -3076,213 +2567,338 @@
"JBoss AS documentation for more information about JMX service and EJB "
"deployment."
msgstr ""
-"このファイルは <literal>META-INF</literal> ディレクトリに配置され、 JARファイ"
-"ルを拡張した <literal>.sar</literal> (service archive)でパッケージ化されま"
-"す。 同様にHibernateパッケージも必要です。また、Hibernateはサードパーティのラ"
-"イブラリも要求します。 コンパイルした永続化クラスとそのマッピングファイルも同"
-"様にアーカイブ(.sarファイル)に入れます。 エンタープライズbean(通常はセッ"
-"ションbean)は自身のJARファイルを保持しますが、 1回で(ホット)デプロイ可能な"
-"ユニットのためにメインサービスアーカイブとしてこのEJB JARファイルをインクルー"
-"ドする ことができます。JBossアプリケーションサーバのドキュメントにJXMサービス"
-"と EJBデプロイメントのより多くの情報があります。"
+"このファイルは <literal>META-INF</literal> ディレクトリに配置され、 JAR ファ"
+"イルを拡張した <literal>.sar</literal> (service archive) でパッケージ化されま"
+"す。同様に Hibernate パッケージも必要です。また、 Hibernate はサードパーティ"
+"のライブラリも要求します。コンパイルした永続化クラスとそのマッピングファイル"
+"も同様にアーカイブ(.sarファイル)に入れます。エンタープライズ Bean (通常は"
+"セッション Bean )は自身の JAR ファイルを保持しますが、1回で(ホット)デプロ"
+"イ可能なユニットのためにメインサービスアーカイブとしてこの EJB JAR ファイルを"
+"含めることができます。 JBoss AS のドキュメントに JXM サービスと EJB デプロイ"
+"メントのより多くの情報があります。"
+#, fuzzy
#~ msgid ""
-#~ "<literal>hibernate.properties</literal> is the easiest approach if
you "
-#~ "want to get started quickly."
+#~ "<![CDATA[Configuration cfg = new Configuration()\n"
+#~ " .addResource(\"Item.hbm.xml\")\n"
+#~ " .addResource(\"Bid.hbm.xml\");]]>"
#~ msgstr ""
-#~ "今すぐ始めたいのなら、<literal>hibernate.properties</literal> を使うのが一"
-#~ "番の近道です。"
+#~ "Configuration cfg = new Configuration()\n"
+#~ " .addResource(\"Item.hbm.xml\")\n"
+#~ " .addResource(\"Bid.hbm.xml\");"
-#~ msgid "Hibernate logs various events using Apache commons-logging."
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Configuration cfg = new Configuration()\n"
+#~ " .addClass(org.hibernate.auction.Item.class)\n"
+#~ " .addClass(org.hibernate.auction.Bid.class);]]>"
#~ msgstr ""
-#~ "HibernateはApache commons-logginを使って、さまざまなイベントをログとして "
-#~ "出力します。"
+#~ "Configuration cfg = new Configuration()\n"
+#~ " .addClass(org.hibernate.auction.Item.class)\n"
+#~ " .addClass(org.hibernate.auction.Bid.class);"
+#, fuzzy
#~ msgid ""
-#~ "The commons-logging service will direct output to either Apache Log4j (if
"
-#~ "you include <literal>log4j.jar</literal> in your classpath) or
JDK1.4 "
-#~ "logging (if running under JDK1.4 or above). You may download Log4j from "
-#~ "<literal>http://jakarta.apache.org</literal>. To use Log4j you will
need "
-#~ "to place a <literal>log4j.properties</literal> file in your
classpath, an "
-#~ "example properties file is distributed with Hibernate in the
<literal>src/"
-#~ "</literal> directory."
+#~ "<![CDATA[Configuration cfg = new Configuration()\n"
+#~ " .addClass(org.hibernate.auction.Item.class)\n"
+#~ " .addClass(org.hibernate.auction.Bid.class)\n"
+#~ " .setProperty(\"hibernate.dialect\",
\"org.hibernate.dialect."
+#~ "MySQLInnoDBDialect\")\n"
+#~ " .setProperty(\"hibernate.connection.datasource\",
\"java:comp/env/"
+#~ "jdbc/test\")\n"
+#~ " .setProperty(\"hibernate.order_updates\",
\"true\");]]>"
#~ msgstr ""
-#~ "commons-loggingサービスは(クラスパスに <literal>log4j.jar</literal> を含"
-#~ "めれば)Apache Log4jに、 また(JDK1.4かそれ以上で実行させれば)JDK1.4 "
-#~ "loggingに直接出力します。 Log4jは <literal>http://jakarta.apache.org</"
-#~ "literal> からダウンロードできます。 Log4jを使うためには、クラスパスに "
-#~ "<literal>log4j.properties</literal> ファイルを配置する必要があります。 例"
-#~ "のプロパティファイルはHibernateと一緒に配布され、それは <literal>src/</"
-#~ "literal> ディレクトリにあります。"
+#~ "Configuration cfg = new Configuration()\n"
+#~ " .addClass(org.hibernate.auction.Item.class)\n"
+#~ " .addClass(org.hibernate.auction.Bid.class)\n"
+#~ " .setProperty(\"hibernate.dialect\",
\"org.hibernate.dialect."
+#~ "MySQLInnoDBDialect\")\n"
+#~ " .setProperty(\"hibernate.connection.datasource\",
\"java:comp/env/"
+#~ "jdbc/test\")\n"
+#~ " .setProperty(\"hibernate.order_updates\",
\"true\");"
-#~ msgid "<placeholder-1/> (optional)"
-#~ msgstr "<placeholder-1/> (オプション)"
+#, fuzzy
+#~ msgid "<![CDATA[SessionFactory sessions =
cfg.buildSessionFactory();]]>"
+#~ msgstr "SessionFactory sessions = cfg.buildSessionFactory();"
-#~ msgid "InitialContextFactory"
-#~ msgstr "InitialContextFactory"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = sessions.openSession(); // open a new
Session]]"
+#~ ">"
+#~ msgstr "Session session = sessions.openSession(); // open a new Session"
-#~ msgid "class of the JNDI <placeholder-1/>"
-#~ msgstr "JNDIクラス <placeholder-1/>"
+#~ msgid "database user"
+#~ msgstr "データベースのユーザー"
-#~ msgid "eg."
-#~ msgstr "例:"
+#~ msgid "database user password"
+#~ msgstr "データベースユーザーパスワード"
-#~ msgid "full.classname.of.Dialect"
-#~ msgstr "full.classname.of.Dialect"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[hibernate.connection.driver_class = org.postgresql.Driver\n"
+#~ "hibernate.connection.url = jdbc:postgresql://localhost/mydatabase\n"
+#~ "hibernate.connection.username = myuser\n"
+#~ "hibernate.connection.password = secret\n"
+#~ "hibernate.c3p0.min_size=5\n"
+#~ "hibernate.c3p0.max_size=20\n"
+#~ "hibernate.c3p0.timeout=1800\n"
+#~ "hibernate.c3p0.max_statements=50\n"
+#~ "hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect]]>"
+#~ msgstr ""
+#~ "hibernate.connection.driver_class = org.postgresql.Driver\n"
+#~ "hibernate.connection.url = jdbc:postgresql://localhost/mydatabase\n"
+#~ "hibernate.connection.username = myuser\n"
+#~ "hibernate.connection.password = secret\n"
+#~ "hibernate.c3p0.min_size=5\n"
+#~ "hibernate.c3p0.max_size=20\n"
+#~ "hibernate.c3p0.timeout=1800\n"
+#~ "hibernate.c3p0.max_statements=50\n"
+#~ "hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect"
-#~ msgid "debug"
-#~ msgstr "debug"
+#~ msgid "datasource JNDI name"
+#~ msgstr "データソースの JNDI 名"
-#~ msgid "SCHEMA_NAME"
-#~ msgstr "SCHEMA_NAME"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[hibernate.connection.datasource = java:/comp/env/jdbc/test\n"
+#~ "hibernate.transaction.factory_class = \\\n"
+#~ " org.hibernate.transaction.JTATransactionFactory\n"
+#~ "hibernate.transaction.manager_lookup_class = \\\n"
+#~ " org.hibernate.transaction.JBossTransactionManagerLookup\n"
+#~ "hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect]]>"
+#~ msgstr ""
+#~ "hibernate.connection.datasource = java:/comp/env/jdbc/test\n"
+#~ "hibernate.transaction.factory_class = \\n"
+#~ " org.hibernate.transaction.JTATransactionFactory\n"
+#~ "hibernate.transaction.manager_lookup_class = \\n"
+#~ " org.hibernate.transaction.JBossTransactionManagerLookup\n"
+#~ "hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect"
-#~ msgid "CATALOG_NAME"
-#~ msgstr "CATALOG_NAME"
+#~ msgid "<entry>DB2</entry>"
+#~ msgstr "<entry>DB2</entry>"
-#~ msgid "SessionFactory"
-#~ msgstr "SessionFactory"
+#~ msgid "hibernate.query.substitutions true=1, false=0"
+#~ msgstr "hibernate.query.substitutions true=1, false=0"
-#~ msgid "jndi/composite/name"
-#~ msgstr "jndi/composite/name"
+#~ msgid "hibernate.query.substitutions toLowercase=LOWER"
+#~ msgstr "hibernate.query.substitutions toLowercase=LOWER"
-#~ msgid "0"
-#~ msgstr "0"
+#~ msgid "org.hibernate"
+#~ msgstr "org.hibernate"
-#~ msgid "false"
-#~ msgstr "false"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[SessionFactory sf = new Configuration()\n"
+#~ " .setNamingStrategy(ImprovedNamingStrategy.INSTANCE)\n"
+#~ " .addFile(\"Item.hbm.xml\")\n"
+#~ " .addFile(\"Bid.hbm.xml\")\n"
+#~ " .buildSessionFactory();]]>"
+#~ msgstr ""
+#~ "SessionFactory sf = new Configuration()\n"
+#~ " .setNamingStrategy(ImprovedNamingStrategy.INSTANCE)\n"
+#~ " .addFile(\"Item.hbm.xml\")\n"
+#~ " .addFile(\"Bid.hbm.xml\")\n"
+#~ " .buildSessionFactory();"
-#~ msgid "Statement.setFetchSize()"
-#~ msgstr "Statement.setFetchSize()"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<?xml version='1.0'
encoding='utf-8'?>\n"
+#~ "<!DOCTYPE hibernate-configuration PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Configuration DTD//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
+#~ "\">\n"
+#~ "\n"
+#~ "<hibernate-configuration>\n"
+#~ "\n"
+#~ " <!-- a SessionFactory instance listed as /jndi/name -->\n"
+#~ " <session-factory\n"
+#~ " name=\"java:hibernate/SessionFactory\">\n"
+#~ "\n"
+#~ " <!-- properties -->\n"
+#~ " <property
name=\"connection.datasource\">java:/comp/env/jdbc/"
+#~ "MyDB</property>\n"
+#~ " <property
name=\"dialect\">org.hibernate.dialect.MySQLDialect</"
+#~ "property>\n"
+#~ " <property
name=\"show_sql\">false</property>\n"
+#~ " <property name=\"transaction.factory_class\">\n"
+#~ " org.hibernate.transaction.JTATransactionFactory\n"
+#~ " </property>\n"
+#~ " <property
name=\"jta.UserTransaction\">java:comp/UserTransaction</"
+#~ "property>\n"
+#~ "\n"
+#~ " <!-- mapping files -->\n"
+#~ " <mapping
resource=\"org/hibernate/auction/Item.hbm.xml\"/>\n"
+#~ " <mapping
resource=\"org/hibernate/auction/Bid.hbm.xml\"/>\n"
+#~ "\n"
+#~ " <!-- cache settings -->\n"
+#~ " <class-cache class=\"org.hibernate.auction.Item\"
usage=\"read-"
+#~ "write\"/>\n"
+#~ " <class-cache class=\"org.hibernate.auction.Bid\"
usage=\"read-only"
+#~ "\"/>\n"
+#~ " <collection-cache
collection=\"org.hibernate.auction.Item.bids\" "
+#~ "usage=\"read-write\"/>\n"
+#~ "\n"
+#~ " </session-factory>\n"
+#~ "\n"
+#~ "</hibernate-configuration>]]>"
+#~ msgstr ""
+#~ "<?xml version='1.0' encoding='utf-8'?>\n"
+#~ "<!DOCTYPE hibernate-configuration PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Configuration DTD//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
+#~ "\">\n"
+#~ "\n"
+#~ "<hibernate-configuration>\n"
+#~ "\n"
+#~ " <!-- a SessionFactory instance listed as /jndi/name
-->\n"
+#~ " <session-factory\n"
+#~ " name=\"java:hibernate/SessionFactory\">\n"
+#~ "\n"
+#~ " <!-- properties -->\n"
+#~ " <property
name=\"connection.datasource\">java:/comp/env/"
+#~ "jdbc/MyDB</property>\n"
+#~ " <property
name=\"dialect\">org.hibernate.dialect."
+#~ "MySQLDialect</property>\n"
+#~ " <property
name=\"show_sql\">false</property>\n"
+#~ " <property
name=\"transaction.factory_class\">\n"
+#~ " org.hibernate.transaction.JTATransactionFactory\n"
+#~ " </property>\n"
+#~ " <property
name=\"jta.UserTransaction\">java:comp/"
+#~ "UserTransaction</property>\n"
+#~ "\n"
+#~ " <!-- mapping files -->\n"
+#~ " <mapping
resource=\"org/hibernate/auction/Item.hbm.xml\"/>\n"
+#~ " <mapping
resource=\"org/hibernate/auction/Bid.hbm.xml\"/>\n"
+#~ "\n"
+#~ " <!-- cache settings -->\n"
+#~ " <class-cache class=\"org.hibernate.auction.Item\"
usage=\"read-"
+#~ "write\"/>\n"
+#~ " <class-cache class=\"org.hibernate.auction.Bid\"
usage=\"read-"
+#~ "only\"/>\n"
+#~ " <collection-cache
collection=\"org.hibernate.auction.Item.bids"
+#~ "\" usage=\"read-write\"/>\n"
+#~ "\n"
+#~ " </session-factory>\n"
+#~ "\n"
+#~ "</hibernate-configuration>"
-#~ msgid "true"
-#~ msgstr "executeBatch()"
-
-#~ msgid "executeBatch()"
-#~ msgstr "true"
-
-#~ msgid "Batcher"
-#~ msgstr "Batcher"
-
-#~ msgid "classname.of.BatcherFactory"
-#~ msgstr "classname.of.BatcherFactory"
-
-#~ msgid "binary"
-#~ msgstr "binary"
-
-#~ msgid "serializable"
-#~ msgstr "serializable"
-
-#~ msgid "PreparedStatement.getGeneratedKeys()"
-#~ msgstr "PreparedStatement.getGeneratedKeys()"
-
-#~ msgid "true|false"
-#~ msgstr "true|false"
-
-#~ msgid "ConnectionProvider"
-#~ msgstr "ConnectionProvider"
-
-#~ msgid "classname.of.ConnectionProvider"
-#~ msgstr "classname.of.ConnectionProvider"
-
-#~ msgid "java.sql.Connection"
-#~ msgstr "java.sql.Connection"
-
-#~ msgid "1, 2, 4, 8"
-#~ msgstr "1, 2, 4, 8"
-
-#~ msgid "after_statement"
-#~ msgstr "after_statement"
-
-#~ msgid "after_transaction"
-#~ msgstr "after_transaction"
-
-#~ msgid "auto"
-#~ msgstr "auto"
-
-#~ msgid "hibernate.connection."
-#~ msgstr "<propertyName>"
-
#, fuzzy
-#~ msgid "<propertyName>"
+#~ msgid ""
+#~ "<![CDATA[SessionFactory sf = new Configuration().configure()."
+#~ "buildSessionFactory();]]>"
#~ msgstr ""
-#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-#~ "hibernate.connection.<placeholder-1/>\n"
-#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-#~ "propertyName\n"
-#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-#~ "hibernate.jndi.<placeholder-1/>\n"
-#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-#~ "propertyName"
+#~ "SessionFactory sf = new
Configuration().configure().buildSessionFactory();"
-#~ msgid "DriverManager.getConnection()"
-#~ msgstr "DriverManager.getConnection()"
-
-#~ msgid "Pass the JDBC property <placeholder-1/> to
<placeholder-2/>."
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[SessionFactory sf = new Configuration()\n"
+#~ " .configure(\"catdb.cfg.xml\")\n"
+#~ " .buildSessionFactory();]]>"
#~ msgstr ""
-#~ "JDBCの <placeholder-1/> プロパティを、 <placeholder-2/> に渡します。"
+#~ "SessionFactory sf = new Configuration()\n"
+#~ " .configure(\"catdb.cfg.xml\")\n"
+#~ " .buildSessionFactory();"
-#~ msgid "hibernate.jndi."
-#~ msgstr "<propertyName>"
-
-#~ msgid "Pass the property <placeholder-1/> to the JNDI
<placeholder-2/>."
-#~ msgstr "<placeholder-1/> プロパティを、 JNDI <placeholder-2/> に渡します。"
-
-#~ msgid "CacheProvider"
-#~ msgstr "CacheProvider"
-
-#~ msgid "classname.of.CacheProvider"
-#~ msgstr "classname.of.CacheProvider"
-
-#~ msgid "<cache>"
-#~ msgstr "<cache>"
-
-#~ msgid "QueryCache"
-#~ msgstr "QueryCache"
-
-#~ msgid "StandardQueryCache"
-#~ msgstr "StandardQueryCache"
-
-#~ msgid "classname.of.QueryCache"
-#~ msgstr "classname.of.QueryCache"
-
-#~ msgid "prefix"
-#~ msgstr "prefix"
-
-#~ msgid "TransactionFactory"
-#~ msgstr "Transaction"
-
-#~ msgid "Transaction"
-#~ msgstr "TransactionFactory"
-
-#~ msgid "JDBCTransactionFactory"
-#~ msgstr "JDBCTransactionFactory"
-
-#~ msgid "classname.of.TransactionFactory"
-#~ msgstr "classname.of.TransactionFactory"
-
-#~ msgid "JTATransactionFactory"
-#~ msgstr "UserTransaction"
-
-#~ msgid "UserTransaction"
-#~ msgstr "JTATransactionFactory"
-
-#~ msgid "TransactionManagerLookup"
-#~ msgstr "TransactionManagerLookup"
-
-#~ msgid "classname.of.TransactionManagerLookup"
-#~ msgstr "classname.of.TransactionManagerLookup"
-
-#~ msgid "Session"
-#~ msgstr "Session"
-
-#~ msgid "hqlLiteral=SQL_LITERAL, hqlFunction=SQLFUNC"
-#~ msgstr "hqlLiteral=SQL_LITERAL, hqlFunction=SQLFUNC"
-
-#~ msgid "create-drop"
-#~ msgstr "create-drop"
-
-#~ msgid "hibernate.cfg.xml"
-#~ msgstr "hibernate.cfg.xml"
-
-#~ msgid "DB2"
-#~ msgstr "DB2"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<?xml version=\"1.0\"?>\n"
+#~ "<server>\n"
+#~ "\n"
+#~ "<mbean code=\"org.hibernate.jmx.HibernateService\"\n"
+#~ "
name=\"jboss.jca:service=HibernateFactory,name=HibernateFactory\">\n"
+#~ "\n"
+#~ " <!-- Required services -->\n"
+#~ " <depends>jboss.jca:service=RARDeployer</depends>\n"
+#~ "
<depends>jboss.jca:service=LocalTxCM,name=HsqlDS</depends>\n"
+#~ "\n"
+#~ " <!-- Bind the Hibernate service to JNDI -->\n"
+#~ " <attribute
name=\"JndiName\">java:/hibernate/SessionFactory</"
+#~ "attribute>\n"
+#~ "\n"
+#~ " <!-- Datasource settings -->\n"
+#~ " <attribute
name=\"Datasource\">java:HsqlDS</attribute>\n"
+#~ " <attribute
name=\"Dialect\">org.hibernate.dialect.HSQLDialect</"
+#~ "attribute>\n"
+#~ "\n"
+#~ " <!-- Transaction integration -->\n"
+#~ " <attribute name=\"TransactionStrategy\">\n"
+#~ "
org.hibernate.transaction.JTATransactionFactory</attribute>\n"
+#~ " <attribute
name=\"TransactionManagerLookupStrategy\">\n"
+#~ " org.hibernate.transaction.JBossTransactionManagerLookup</"
+#~ "attribute>\n"
+#~ " <attribute
name=\"FlushBeforeCompletionEnabled\">true</attribute>\n"
+#~ " <attribute
name=\"AutoCloseSessionEnabled\">true</attribute>\n"
+#~ "\n"
+#~ " <!-- Fetching options -->\n"
+#~ " <attribute
name=\"MaximumFetchDepth\">5</attribute>\n"
+#~ "\n"
+#~ " <!-- Second-level caching -->\n"
+#~ " <attribute
name=\"SecondLevelCacheEnabled\">true</attribute>\n"
+#~ " <attribute
name=\"CacheProviderClass\">org.hibernate.cache."
+#~ "EhCacheProvider</attribute>\n"
+#~ " <attribute
name=\"QueryCacheEnabled\">true</attribute>\n"
+#~ "\n"
+#~ " <!-- Logging -->\n"
+#~ " <attribute
name=\"ShowSqlEnabled\">true</attribute>\n"
+#~ "\n"
+#~ " <!-- Mapping files -->\n"
+#~ " <attribute
name=\"MapResources\">auction/Item.hbm.xml,auction/"
+#~ "Category.hbm.xml</attribute>\n"
+#~ "\n"
+#~ "</mbean>\n"
+#~ "\n"
+#~ "</server>]]>"
+#~ msgstr ""
+#~ "<?xml version=\"1.0\"?>\n"
+#~ "<server>\n"
+#~ "\n"
+#~ "<mbean code=\"org.hibernate.jmx.HibernateService\"\n"
+#~ " name=\"jboss.jca:service=HibernateFactory,name=HibernateFactory"
+#~ "\">\n"
+#~ "\n"
+#~ " <!-- Required services -->\n"
+#~ "
<depends>jboss.jca:service=RARDeployer</depends>\n"
+#~ "
<depends>jboss.jca:service=LocalTxCM,name=HsqlDS</"
+#~ "depends>\n"
+#~ "\n"
+#~ " <!-- Bind the Hibernate service to JNDI -->\n"
+#~ " <attribute
name=\"JndiName\">java:/hibernate/SessionFactory</"
+#~ "attribute>\n"
+#~ "\n"
+#~ " <!-- Datasource settings -->\n"
+#~ " <attribute
name=\"Datasource\">java:HsqlDS</attribute>\n"
+#~ " <attribute
name=\"Dialect\">org.hibernate.dialect."
+#~ "HSQLDialect</attribute>\n"
+#~ "\n"
+#~ " <!-- Transaction integration -->\n"
+#~ " <attribute name=\"TransactionStrategy\">\n"
+#~ " org.hibernate.transaction.JTATransactionFactory</"
+#~ "attribute>\n"
+#~ " <attribute
name=\"TransactionManagerLookupStrategy\">\n"
+#~ " org.hibernate.transaction.JBossTransactionManagerLookup</"
+#~ "attribute>\n"
+#~ " <attribute
name=\"FlushBeforeCompletionEnabled\">true</"
+#~ "attribute>\n"
+#~ " <attribute
name=\"AutoCloseSessionEnabled\">true</"
+#~ "attribute>\n"
+#~ "\n"
+#~ " <!-- Fetching options -->\n"
+#~ " <attribute
name=\"MaximumFetchDepth\">5</attribute>\n"
+#~ "\n"
+#~ " <!-- Second-level caching -->\n"
+#~ " <attribute
name=\"SecondLevelCacheEnabled\">true</"
+#~ "attribute>\n"
+#~ " <attribute
name=\"CacheProviderClass\">org.hibernate.cache."
+#~ "EhCacheProvider</attribute>\n"
+#~ " <attribute
name=\"QueryCacheEnabled\">true</attribute>\n"
+#~ "\n"
+#~ " <!-- Logging -->\n"
+#~ " <attribute
name=\"ShowSqlEnabled\">true</attribute>\n"
+#~ "\n"
+#~ " <!-- Mapping files -->\n"
+#~ " <attribute
name=\"MapResources\">auction/Item.hbm.xml,auction/"
+#~ "Category.hbm.xml</attribute>\n"
+#~ "\n"
+#~ "</mbean>\n"
+#~ "\n"
+#~ "</server>"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/events.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/events.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/events.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,42 +1,41 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:26\n"
+"PO-Revision-Date: 2010-01-13 11:47+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: events.xml:29
#, no-c-format
msgid "Interceptors and events"
msgstr "インターセプタとイベント"
#. Tag: para
-#: events.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is useful for the application to react to certain events that occur "
"inside Hibernate. This allows for the implementation of generic "
"functionality and the extension of Hibernate functionality."
msgstr ""
-"アプリケーションがHibernateの内部で発生するイベントに対応できると役に立つこと"
-"があります。 ある種の一般的な機能を実装できるようになり、 またHibernateの機能"
-"を拡張することもできるようになります。"
+"アプリケーションが Hibernate の内部で発生するイベントに対応できると役に立つこ"
+"とがあります。ある種の一般的な機能を実装できるようになり、また Hibernate の機"
+"能を拡張することもできるようになります。"
#. Tag: title
-#: events.xml:38
#, no-c-format
msgid "Interceptors"
msgstr "インターセプタ"
#. Tag: para
-#: events.xml:40
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>Interceptor</literal> interface provides callbacks from
the "
"session to the application, allowing the application to inspect and/or "
@@ -48,118 +47,27 @@
"<literal>lastUpdateTimestamp</literal> property when an
<literal>Auditable</"
"literal> is updated."
msgstr ""
-"<literal>Interceptor</literal> インターフェイスを使って、 セッションからアプ"
-"リケーションへコールバックをすることができます。 これにより永続オブジェクトの"
-"保存、更新、削除、読み込みの前に、 アプリケーションがプロパティを検査したり操"
-"作したりできるようになります。 これは監査情報の追跡に利用できます。 下の例で "
+"<literal>Interceptor</literal> インターフェースを使って、セッションからアプリ"
+"ケーションへコールバックをすることができます。これにより永続オブジェクトの保"
+"存、更新、削除、読み込みの前に、アプリケーションがプロパティを検査したり操作"
+"したりできるようになります。これは監査情報の追跡に利用できます。下の例で "
"<literal>Interceptor</literal> は
<literal>Auditable</literal> が作成されると"
"自動的に <literal>createTimestamp</literal> を設定し、
<literal>Auditable</"
"literal> が更新されると自動的に <literal>lastUpdateTimestamp</literal>
プロパ"
"ティを更新します。"
#. Tag: para
-#: events.xml:51
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can either implement <literal>Interceptor</literal> directly or
extend "
"<literal>EmptyInterceptor</literal>."
msgstr ""
-"<literal>Interceptor</literal> を直接実装したり、 (さらによいのは)"
+"<literal>Interceptor</literal> を直接実装したり、 (さらによいのは) "
"<literal>EmptyInterceptor</literal> を拡張したりできます。"
-#. Tag: programlisting
-#: events.xml:56
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[package org.hibernate.test;\n"
-"\n"
-"import java.io.Serializable;\n"
-"import java.util.Date;\n"
-"import java.util.Iterator;\n"
-"\n"
-"import org.hibernate.EmptyInterceptor;\n"
-"import org.hibernate.Transaction;\n"
-"import org.hibernate.type.Type;\n"
-"\n"
-"public class AuditInterceptor extends EmptyInterceptor {\n"
-"\n"
-" private int updates;\n"
-" private int creates;\n"
-" private int loads;\n"
-"\n"
-" public void onDelete(Object entity,\n"
-" Serializable id,\n"
-" Object[] state,\n"
-" String[] propertyNames,\n"
-" Type[] types) {\n"
-" // do nothing\n"
-" }\n"
-"\n"
-" public boolean onFlushDirty(Object entity,\n"
-" Serializable id,\n"
-" Object[] currentState,\n"
-" Object[] previousState,\n"
-" String[] propertyNames,\n"
-" Type[] types) {\n"
-"\n"
-" if ( entity instanceof Auditable ) {\n"
-" updates++;\n"
-" for ( int i=0; i < propertyNames.length; i++ ) {\n"
-" if ( \"lastUpdateTimestamp\".equals( propertyNames[i] ) )
{\n"
-" currentState[i] = new Date();\n"
-" return true;\n"
-" }\n"
-" }\n"
-" }\n"
-" return false;\n"
-" }\n"
-"\n"
-" public boolean onLoad(Object entity,\n"
-" Serializable id,\n"
-" Object[] state,\n"
-" String[] propertyNames,\n"
-" Type[] types) {\n"
-" if ( entity instanceof Auditable ) {\n"
-" loads++;\n"
-" }\n"
-" return false;\n"
-" }\n"
-"\n"
-" public boolean onSave(Object entity,\n"
-" Serializable id,\n"
-" Object[] state,\n"
-" String[] propertyNames,\n"
-" Type[] types) {\n"
-"\n"
-" if ( entity instanceof Auditable ) {\n"
-" creates++;\n"
-" for ( int i=0; i<propertyNames.length; i++ ) {\n"
-" if ( \"createTimestamp\".equals( propertyNames[i] ) )
{\n"
-" state[i] = new Date();\n"
-" return true;\n"
-" }\n"
-" }\n"
-" }\n"
-" return false;\n"
-" }\n"
-"\n"
-" public void afterTransactionCompletion(Transaction tx) {\n"
-" if ( tx.wasCommitted() ) {\n"
-" System.out.println(\"Creations: \" + creates + \",
Updates: \" + "
-"updates, \"Loads: \" + loads);\n"
-" }\n"
-" updates=0;\n"
-" creates=0;\n"
-" loads=0;\n"
-" }\n"
-"\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: events.xml:58
-#, fuzzy, no-c-format
-msgid ""
"There are two kinds of inteceptors: <literal>Session</literal>-scoped
and "
"<literal>SessionFactory</literal>-scoped."
msgstr ""
@@ -167,26 +75,18 @@
"と <literal>SessionFactory</literal> スコープのものです。"
#. Tag: para
-#: events.xml:63
#, no-c-format
msgid ""
"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>."
msgstr ""
-"<literal>Session</literal> スコープのインターセプタは、 セッションをオープン"
-"するときに指定します。 <literal>Interceptor</literal> を引数に取る"
+"<literal>Session</literal> スコープのインターセプタは、セッションをオープンす"
+"るときに指定します。 <literal>Interceptor</literal> を引数に取る "
"SessionFactory.openSession() のオーバーロードメソッドの一つを使います。"
-#. Tag: programlisting
-#: events.xml:69
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[Session session = sf.openSession( new AuditInterceptor()
);]]>"
-msgstr ""
-
-#. Tag: para
-#: events.xml:71
-#, fuzzy, no-c-format
msgid ""
"A <literal>SessionFactory</literal>-scoped interceptor is registered
with "
"the <literal>Configuration</literal> object prior to building the
"
@@ -198,44 +98,34 @@
"sessions will use this interceptor potentially concurrently."
msgstr ""
"<literal>SessionFactory</literal> スコープのインターセプタは "
-"<literal>Configuration</literal> オブジェクトを使って登録します。 これは "
-"<literal>SessionFactory</literal> の構築よりも優先されます。 この場合、提供さ"
+"<literal>Configuration</literal> オブジェクトを使って登録します。これは "
+"<literal>SessionFactory</literal> の構築よりも優先されます。この場合、提供さ"
"れるインターセプタは <literal>SessionFactory</literal> からオープンされたすべ"
-"てのセッションに適用されます。 これは使用するインターセプタを明示的に指定して"
+"てのセッションに適用されます。これは使用するインターセプタを明示的に指定して"
"セッションをオープンしない限り、そうなります。 <literal>SessionFactory</"
-"literal> スコープのインターセプタはスレッドセーフでなければなりません。 複数"
-"のセッションが(潜在的に)このインターセプタを同時並行で使用することになるた"
-"め、 セッション固有の状態を格納しないように気をつけてください。"
+"literal> スコープのインターセプタはスレッドセーフでなければなりません。複数の"
+"セッションが (潜在的に) このインターセプタを同時並行で使用することになるた"
+"め、セッション固有の状態を格納しないように気をつけてください。"
-#. Tag: programlisting
-#: events.xml:80
-#, no-c-format
-msgid ""
-"<![CDATA[new Configuration().setInterceptor( new AuditInterceptor()
);]]>"
-msgstr ""
-
#. Tag: title
-#: events.xml:85
#, no-c-format
msgid "Event system"
msgstr "イベントシステム"
#. Tag: para
-#: events.xml:87
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you have to react to particular events in your persistence layer, you can
"
"also use the Hibernate3 <emphasis>event</emphasis> architecture. The
event "
"system can be used in addition, or as a replacement, for interceptors."
msgstr ""
-"永続化層で特定のイベントに対応しなければならない場合、 Hibernate3の "
-"<emphasis>イベント</emphasis> アーキテクチャを使うこともできます。 イベントシ"
+"永続化層で特定のイベントに対応しなければならない場合、 Hibernate3 の "
+"<emphasis>イベント</emphasis> アーキテクチャを使うこともできます。イベントシ"
"ステムはインターセプタと一緒に使うか、またはインターセプタの代わりとして使う"
"ことができます。"
#. Tag: para
-#: events.xml:93
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"All the methods of the <literal>Session</literal> interface correlate
to an "
"event. You have a <literal>LoadEvent</literal>, a
<literal>FlushEvent</"
@@ -252,33 +142,31 @@
"processing any <literal>load()</literal> requests made of the "
"<literal>Session</literal>."
msgstr ""
-"本質的に <literal>Session</literal> インターフェイスのすべてのメソッドは、 1"
-"個のイベントと相互に関連します。 例えば <literal>LoadEvent</literal>、"
+"本質的に <literal>Session</literal> インターフェースのすべてのメソッドは、1個"
+"のイベントと相互に関連します。例えば <literal>LoadEvent</literal> 、 "
"<literal>FlushEvent</literal> などがあります (定義済みのイベント型の一覧につ"
-"いては、XML設定ファイルのDTDや <literal>org.hibernate.event</literal> パッ"
-"ケージを調べてください)。 リクエストがこれらのメソッドの1つから作られると"
-"き、 Hibernateの <literal>Session</literal> は適切なイベントを生成し、 そのイ"
-"ベント型に設定されたイベントリスナに渡します。 すばらしいことに、これらのリス"
-"ナはそのメソッドと同じ処理を実装します。 とはいえ、リスナインターフェイスの一"
-"つを自由にカスタム実装できます (つまり、<literal>LoadEvent</literal> は登録"
-"された <literal>LoadEventListener</literal> インターフェイスの実装により処理"
-"されます)。 その場合、その実装には <literal>Session</literal> から作られたど"
-"のような <literal>load()</literal> リクエストをも処理する責任があります。"
+"いては、 XML 設定ファイルの DTD や <literal>org.hibernate.event</literal> "
+"パッケージを調べてください) 。リクエストがこれらのメソッドの1つから作られる"
+"とき、 Hibernate の <literal>Session</literal> は適切なイベントを生成し、その"
+"イベント型に設定されたイベントリスナに渡します。すばらしいことに、これらのリ"
+"スナはそのメソッドと同じ処理を実装します。とはいえ、リスナインターフェースの"
+"一つを自由にカスタム実装できます (つまり、 <literal>LoadEvent</literal> は登"
+"録された <literal>LoadEventListener</literal> インターフェースの実装により処"
+"理されます)。その場合、その実装には <literal>Session</literal> から作られた"
+"どのような <literal>load()</literal> リクエストをも処理する責任があります。"
#. Tag: para
-#: events.xml:108
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The listeners should be considered singletons. This means they are shared "
"between requests, and should not save any state as instance variables."
msgstr ""
-"リスナは事実上シングルトンであると見なせます。 つまりリスナはリクエスト間で共"
-"有されるため、 インスタンス変数として状態を保持するべきではないということで"
+"リスナは事実上シングルトンであると見なせます。つまりリスナはリクエスト間で共"
+"有されるため、インスタンス変数として状態を保持するべきではないということで"
"す。"
#. Tag: para
-#: events.xml:113
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A custom listener implements the appropriate interface for the event it "
"wants to process and/or extend one of the convenience base classes (or even "
@@ -289,91 +177,45 @@
"configuration through the properties file is not supported. Here is an "
"example of a custom load event listener:"
msgstr ""
-"カスタムリスナは処理したいイベントについて適切なインターフェイスを実装するべ"
-"きです。 便利な基底クラスのうちの一つを継承してもよいです (またはHibernateが"
-"デフォルトで使用するイベントリスナを継承してもよいです。 すばらしいことに、こ"
-"の目的のために非finalとして宣言されています)。 カスタムリスナは "
+"カスタムリスナは処理したいイベントについて適切なインターフェースを実装するべ"
+"きです。便利な基底クラスのうちの一つを継承してもよいです (または Hibernate "
+"がデフォルトで使用するイベントリスナを継承してもよいです。すばらしいことに、"
+"この目的のために非 final として宣言されています) 。カスタムリスナは "
"<literal>Configuration</literal> オブジェクトを使ってプログラムから登録する"
-"か、 HibernateのXML設定ファイルで指定できます (プロパティファイルで宣言的に"
-"設定する方法はサポートされていません)。 カスタムロードイベントリスナの例を示"
-"します。"
+"か、 Hibernate の XML 設定ファイルで指定できます (プロパティファイルで宣言的"
+"に設定する方法はサポートされていません) 。カスタムロードイベントリスナの例を"
+"示します:"
-#. Tag: programlisting
-#: events.xml:123
-#, no-c-format
-msgid ""
-"<![CDATA[public class MyLoadListener implements LoadEventListener {\n"
-" // this is the single method defined by the LoadEventListener
interface\n"
-" public void onLoad(LoadEvent event, LoadEventListener.LoadType "
-"loadType)\n"
-" throws HibernateException {\n"
-" if ( !MySecurity.isAuthorized( event.getEntityClassName(), event."
-"getEntityId() ) ) {\n"
-" throw MySecurityException(\"Unauthorized access\");\n"
-" }\n"
-" }\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: events.xml:125
#, no-c-format
msgid ""
"You also need a configuration entry telling Hibernate to use the listener in
"
"addition to the default listener:"
-msgstr "デフォルトリスナ以外のリスナを使うには、Hibernateへの設定も必要です:"
-
-#. Tag: programlisting
-#: events.xml:130
-#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-configuration>\n"
-" <session-factory>\n"
-" ...\n"
-" <event type=\"load\">\n"
-" <listener class=\"com.eg.MyLoadListener\"/>\n"
-" <listener class=\"org.hibernate.event.def."
-"DefaultLoadEventListener\"/>\n"
-" </event>\n"
-" </session-factory>\n"
-"</hibernate-configuration>]]>"
msgstr ""
+"デフォルトリスナ以外のリスナを使うには、 Hibernate への設定も必要です:"
#. Tag: para
-#: events.xml:132
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Instead, you can register it programmatically:"
msgstr "またその他に、プログラムで登録する方法もあります:"
-#. Tag: programlisting
-#: events.xml:136
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Configuration cfg = new Configuration();\n"
-"LoadEventListener[] stack = { new MyLoadListener(), new "
-"DefaultLoadEventListener() };\n"
-"cfg.EventListeners().setLoadEventListeners(stack);]]>"
-msgstr ""
-
-#. Tag: para
-#: events.xml:138
-#, fuzzy, no-c-format
-msgid ""
"Listeners registered declaratively cannot share instances. If the same class
"
"name is used in multiple <literal><listener/></literal>
elements, each "
"reference will result in a separate instance of that class. If you need to "
"share listener instances between listener types you must use the "
"programmatic registration approach."
msgstr ""
-"リスナを宣言的に登録すると、そのリスナのインスタンスを共有できません。 複数"
-"の <literal><listener/></literal> 要素で同じクラス名が使われると、
それ"
-"ぞれの参照はそのクラスの別々のインスタンスを指すことになります。 リスナ型の間"
-"でリスナインスタンスを共有する必要があれば、 プログラムで登録する方法を採らな"
-"ければなりません。"
+"リスナを宣言的に登録すると、そのリスナのインスタンスを共有できません。複数の "
+"<literal><listener/></literal>
要素で同じクラス名が使われると、それぞれ"
+"の参照はそのクラスの別々のインスタンスを指すことになります。リスナ型の間でリ"
+"スナインスタンスを共有する必要があれば、プログラムで登録する方法を採らなけれ"
+"ばなりません。"
#. Tag: para
-#: events.xml:146
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Why implement an interface and define the specific type during "
"configuration? A listener implementation could implement multiple event "
@@ -381,59 +223,41 @@
"registration makes it easier to turn custom listeners on or off during "
"configuration."
msgstr ""
-"なぜインターフェイスを実装して、特化した型を設定時に指定するのでしょうか? リ"
-"スナの実装クラスに、複数のイベントリスナインターフェイスを実装できるからで"
-"す。 登録時に追加で型を指定することで、カスタムリスナのon/offを設定時に簡単に"
-"切り替えられます。"
+"なぜインターフェースを実装して、特化した型を設定時に指定するのでしょうか?リ"
+"スナの実装クラスに、複数のイベントリスナインターフェースを実装できるからで"
+"す。登録時に追加で型を指定することで、カスタムリスナの on/off を設定時に簡単"
+"に切り替えられます。"
#. Tag: title
-#: events.xml:156
#, no-c-format
msgid "Hibernate declarative security"
-msgstr "Hibernateの宣言的なセキュリティ"
+msgstr "Hibernate の宣言的なセキュリティ"
#. Tag: para
-#: events.xml:157
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Usually, declarative security in Hibernate applications is managed in a "
"session facade layer. Hibernate3 allows certain actions to be permissioned "
"via JACC, and authorized via JAAS. This is an optional functionality that is
"
"built on top of the event architecture."
msgstr ""
-"一般的にHibernateアプリケーションの宣言的なセキュリティは、セッションファサー"
-"ド層で管理します。 現在、Hiberenate3はJACCで許可しかつ、JAASで認証したアク"
-"ションを許しています。 これはイベントアーキテクチャの最上位に組み込まれている"
-"オプションの機能です。"
+"一般的に Hibernate アプリケーションの宣言的なセキュリティは、セッションファ"
+"サード層で管理します。現在、 Hiberenate3 は JACC で許可し、さらに JAAS で認証"
+"したアクションを許しています。これはイベントアーキテクチャの最上位に組み込ま"
+"れているオプションの機能です。"
#. Tag: para
-#: events.xml:163
#, no-c-format
msgid ""
"First, you must configure the appropriate event listeners, to enable the use
"
"of JAAS authorization."
msgstr ""
-"まず最初に、適切なイベントリスナを設定してJAAS認証を使えるようにしなければな"
-"りません。"
+"まず最初に、適切なイベントリスナを設定して JAAS 認証を使えるようにしなければ"
+"なりません。"
-#. Tag: programlisting
-#: events.xml:168
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<listener type=\"pre-delete\"
class=\"org.hibernate.secure."
-"JACCPreDeleteEventListener\"/>\n"
-"<listener type=\"pre-update\"
class=\"org.hibernate.secure."
-"JACCPreUpdateEventListener\"/>\n"
-"<listener type=\"pre-insert\"
class=\"org.hibernate.secure."
-"JACCPreInsertEventListener\"/>\n"
-"<listener type=\"pre-load\" class=\"org.hibernate.secure."
-"JACCPreLoadEventListener\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: events.xml:170
-#, fuzzy, no-c-format
-msgid ""
"Note that <literal><listener type=\"...\"
class=\"...\"/></literal> is "
"shorthand for <literal><event
type=\"...\"><listener class=\"...\"/"
"></event></literal> when there is exactly one listener
for a "
@@ -445,8 +269,7 @@
"略形に過ぎないことに注意してください。"
#. Tag: para
-#: events.xml:176
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Next, while still in <literal>hibernate.cfg.xml</literal>, bind the
"
"permissions to roles:"
@@ -454,17 +277,284 @@
"次に、同じく <literal>hibernate.cfg.xml</literal> でロールにパーミッションを"
"与えてください:"
-#. Tag: programlisting
-#: events.xml:180
-#, no-c-format
-msgid ""
-"<![CDATA[<grant role=\"admin\" entity-name=\"User\"
actions=\"insert,update,"
-"read\"/>\n"
-"<grant role=\"su\" entity-name=\"User\"
actions=\"*\"/>]]>"
-msgstr ""
-
#. Tag: para
-#: events.xml:182
#, no-c-format
msgid "The role names are the roles understood by your JACC provider."
-msgstr "このロール名は使用するJACCプロバイダに理解されるロールです。"
+msgstr "このロール名は使用する JACC プロバイダに理解されるロールです。"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[package org.hibernate.test;\n"
+#~ "\n"
+#~ "import java.io.Serializable;\n"
+#~ "import java.util.Date;\n"
+#~ "import java.util.Iterator;\n"
+#~ "\n"
+#~ "import org.hibernate.EmptyInterceptor;\n"
+#~ "import org.hibernate.Transaction;\n"
+#~ "import org.hibernate.type.Type;\n"
+#~ "\n"
+#~ "public class AuditInterceptor extends EmptyInterceptor {\n"
+#~ "\n"
+#~ " private int updates;\n"
+#~ " private int creates;\n"
+#~ " private int loads;\n"
+#~ "\n"
+#~ " public void onDelete(Object entity,\n"
+#~ " Serializable id,\n"
+#~ " Object[] state,\n"
+#~ " String[] propertyNames,\n"
+#~ " Type[] types) {\n"
+#~ " // do nothing\n"
+#~ " }\n"
+#~ "\n"
+#~ " public boolean onFlushDirty(Object entity,\n"
+#~ " Serializable id,\n"
+#~ " Object[] currentState,\n"
+#~ " Object[] previousState,\n"
+#~ " String[] propertyNames,\n"
+#~ " Type[] types) {\n"
+#~ "\n"
+#~ " if ( entity instanceof Auditable ) {\n"
+#~ " updates++;\n"
+#~ " for ( int i=0; i < propertyNames.length; i++ ) {\n"
+#~ " if ( \"lastUpdateTimestamp\".equals( propertyNames[i]
) ) "
+#~ "{\n"
+#~ " currentState[i] = new Date();\n"
+#~ " return true;\n"
+#~ " }\n"
+#~ " }\n"
+#~ " }\n"
+#~ " return false;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public boolean onLoad(Object entity,\n"
+#~ " Serializable id,\n"
+#~ " Object[] state,\n"
+#~ " String[] propertyNames,\n"
+#~ " Type[] types) {\n"
+#~ " if ( entity instanceof Auditable ) {\n"
+#~ " loads++;\n"
+#~ " }\n"
+#~ " return false;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public boolean onSave(Object entity,\n"
+#~ " Serializable id,\n"
+#~ " Object[] state,\n"
+#~ " String[] propertyNames,\n"
+#~ " Type[] types) {\n"
+#~ "\n"
+#~ " if ( entity instanceof Auditable ) {\n"
+#~ " creates++;\n"
+#~ " for ( int i=0; i<propertyNames.length; i++ ) {\n"
+#~ " if ( \"createTimestamp\".equals( propertyNames[i] ) )
{\n"
+#~ " state[i] = new Date();\n"
+#~ " return true;\n"
+#~ " }\n"
+#~ " }\n"
+#~ " }\n"
+#~ " return false;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void afterTransactionCompletion(Transaction tx) {\n"
+#~ " if ( tx.wasCommitted() ) {\n"
+#~ " System.out.println(\"Creations: \" + creates + \",
Updates: "
+#~ "\" + updates, \"Loads: \" + loads);\n"
+#~ " }\n"
+#~ " updates=0;\n"
+#~ " creates=0;\n"
+#~ " loads=0;\n"
+#~ " }\n"
+#~ "\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "package org.hibernate.test;\n"
+#~ "\n"
+#~ "import java.io.Serializable;\n"
+#~ "import java.util.Date;\n"
+#~ "import java.util.Iterator;\n"
+#~ "\n"
+#~ "import org.hibernate.EmptyInterceptor;\n"
+#~ "import org.hibernate.Transaction;\n"
+#~ "import org.hibernate.type.Type;\n"
+#~ "\n"
+#~ "public class AuditInterceptor extends EmptyInterceptor {\n"
+#~ "\n"
+#~ " private int updates;\n"
+#~ " private int creates;\n"
+#~ " private int loads;\n"
+#~ "\n"
+#~ " public void onDelete(Object entity,\n"
+#~ " Serializable id,\n"
+#~ " Object[] state,\n"
+#~ " String[] propertyNames,\n"
+#~ " Type[] types) {\n"
+#~ " // do nothing\n"
+#~ " }\n"
+#~ "\n"
+#~ " public boolean onFlushDirty(Object entity,\n"
+#~ " Serializable id,\n"
+#~ " Object[] currentState,\n"
+#~ " Object[] previousState,\n"
+#~ " String[] propertyNames,\n"
+#~ " Type[] types) {\n"
+#~ "\n"
+#~ " if ( entity instanceof Auditable ) {\n"
+#~ " updates++;\n"
+#~ " for ( int i=0; i < propertyNames.length; i++ ) {\n"
+#~ " if ( \"lastUpdateTimestamp\".equals( propertyNames[i]
) ) "
+#~ "{\n"
+#~ " currentState[i] = new Date();\n"
+#~ " return true;\n"
+#~ " }\n"
+#~ " }\n"
+#~ " }\n"
+#~ " return false;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public boolean onLoad(Object entity,\n"
+#~ " Serializable id,\n"
+#~ " Object[] state,\n"
+#~ " String[] propertyNames,\n"
+#~ " Type[] types) {\n"
+#~ " if ( entity instanceof Auditable ) {\n"
+#~ " loads++;\n"
+#~ " }\n"
+#~ " return false;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public boolean onSave(Object entity,\n"
+#~ " Serializable id,\n"
+#~ " Object[] state,\n"
+#~ " String[] propertyNames,\n"
+#~ " Type[] types) {\n"
+#~ "\n"
+#~ " if ( entity instanceof Auditable ) {\n"
+#~ " creates++;\n"
+#~ " for ( int i=0; i<propertyNames.length; i++ ) {\n"
+#~ " if ( \"createTimestamp\".equals( propertyNames[i] ) )
{\n"
+#~ " state[i] = new Date();\n"
+#~ " return true;\n"
+#~ " }\n"
+#~ " }\n"
+#~ " }\n"
+#~ " return false;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void afterTransactionCompletion(Transaction tx) {\n"
+#~ " if ( tx.wasCommitted() ) {\n"
+#~ " System.out.println(\"Creations: \" + creates + \",
Updates: "
+#~ "\" + updates,\n"
+#~ " \"Loads: \" + loads);\n"
+#~ " }\n"
+#~ " updates=0;\n"
+#~ " creates=0;\n"
+#~ " loads=0;\n"
+#~ " }\n"
+#~ "\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = sf.openSession( new AuditInterceptor()
);]]>"
+#~ msgstr "Session session = sf.openSession( new AuditInterceptor() );"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[new Configuration().setInterceptor( new AuditInterceptor()
);]]>"
+#~ msgstr "new Configuration().setInterceptor( new AuditInterceptor() );"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[public class MyLoadListener implements LoadEventListener {\n"
+#~ " // this is the single method defined by the LoadEventListener "
+#~ "interface\n"
+#~ " public void onLoad(LoadEvent event, LoadEventListener.LoadType "
+#~ "loadType)\n"
+#~ " throws HibernateException {\n"
+#~ " if ( !MySecurity.isAuthorized( event.getEntityClassName(), event."
+#~ "getEntityId() ) ) {\n"
+#~ " throw MySecurityException(\"Unauthorized
access\");\n"
+#~ " }\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "public class MyLoadListener implements LoadEventListener {\n"
+#~ " // this is the single method defined by the LoadEventListener "
+#~ "interface\n"
+#~ " public void onLoad(LoadEvent event, LoadEventListener.LoadType "
+#~ "loadType)\n"
+#~ " throws HibernateException {\n"
+#~ " if ( !MySecurity.isAuthorized( event.getEntityClassName(), event."
+#~ "getEntityId() ) ) {\n"
+#~ " throw MySecurityException(\"Unauthorized
access\");\n"
+#~ " }\n"
+#~ " }\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-configuration>\n"
+#~ " <session-factory>\n"
+#~ " ...\n"
+#~ " <event type=\"load\">\n"
+#~ " <listener class=\"com.eg.MyLoadListener\"/>\n"
+#~ " <listener class=\"org.hibernate.event.def."
+#~ "DefaultLoadEventListener\"/>\n"
+#~ " </event>\n"
+#~ " </session-factory>\n"
+#~ "</hibernate-configuration>]]>"
+#~ msgstr ""
+#~ "<hibernate-configuration>\n"
+#~ " <session-factory>\n"
+#~ " ...\n"
+#~ " <event type=\"load\">\n"
+#~ " <listener
class=\"com.eg.MyLoadListener\"/>\n"
+#~ " <listener class=\"org.hibernate.event.def."
+#~ "DefaultLoadEventListener\"/>\n"
+#~ " </event>\n"
+#~ " </session-factory>\n"
+#~ "</hibernate-configuration>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Configuration cfg = new Configuration();\n"
+#~ "LoadEventListener[] stack = { new MyLoadListener(), new "
+#~ "DefaultLoadEventListener() };\n"
+#~ "cfg.EventListeners().setLoadEventListeners(stack);]]>"
+#~ msgstr ""
+#~ "Configuration cfg = new Configuration();\n"
+#~ "LoadEventListener[] stack = { new MyLoadListener(), new "
+#~ "DefaultLoadEventListener() };\n"
+#~ "cfg.EventListeners().setLoadEventListeners(stack);"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<listener type=\"pre-delete\"
class=\"org.hibernate.secure."
+#~ "JACCPreDeleteEventListener\"/>\n"
+#~ "<listener type=\"pre-update\"
class=\"org.hibernate.secure."
+#~ "JACCPreUpdateEventListener\"/>\n"
+#~ "<listener type=\"pre-insert\"
class=\"org.hibernate.secure."
+#~ "JACCPreInsertEventListener\"/>\n"
+#~ "<listener type=\"pre-load\"
class=\"org.hibernate.secure."
+#~ "JACCPreLoadEventListener\"/>]]>"
+#~ msgstr ""
+#~ "<listener type=\"pre-delete\"
class=\"org.hibernate.secure."
+#~ "JACCPreDeleteEventListener\"/>\n"
+#~ "<listener type=\"pre-update\"
class=\"org.hibernate.secure."
+#~ "JACCPreUpdateEventListener\"/>\n"
+#~ "<listener type=\"pre-insert\"
class=\"org.hibernate.secure."
+#~ "JACCPreInsertEventListener\"/>\n"
+#~ "<listener type=\"pre-load\"
class=\"org.hibernate.secure."
+#~ "JACCPreLoadEventListener\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<grant role=\"admin\" entity-name=\"User\"
actions=\"insert,"
+#~ "update,read\"/>\n"
+#~ "<grant role=\"su\" entity-name=\"User\"
actions=\"*\"/>]]>"
+#~ msgstr ""
+#~ "<grant role=\"admin\" entity-name=\"User\"
actions=\"insert,update,read"
+#~ "\"/>\n"
+#~ "<grant role=\"su\" entity-name=\"User\"
actions=\"*\"/>"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_mappings.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_mappings.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_mappings.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,36 +1,35 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:26\n"
+"PO-Revision-Date: 2010-01-20 15:40+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: example_mappings.xml:29
#, no-c-format
msgid "Example: Various Mappings"
-msgstr "例:いろいろなマッピング"
+msgstr "例: いろいろなマッピング"
#. Tag: para
-#: example_mappings.xml:32
-#, fuzzy, no-c-format
+#, no-c-format
msgid "This chapters explores some more complex association mappings."
msgstr "この章では、より複雑な関連のマッピングをいくつか紹介します。"
#. Tag: title
-#: example_mappings.xml:37
#, no-c-format
msgid "Employer/Employee"
msgstr "雇用者/従業員"
#. Tag: para
-#: example_mappings.xml:39
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following model of the relationship between
<literal>Employer</literal> "
"and <literal>Employee</literal> uses an entity class
(<literal>Employment</"
@@ -39,129 +38,28 @@
"used to model monetary values and employee names."
msgstr ""
"<literal>Employer</literal> と <literal>Employee</literal>
の関係を表す以下の"
-"モデルは、 関連の表現に実際のエンティティクラス( <literal>Employment</"
-"literal> ) を使います。 なぜなら、同じ2つのパーティに複数の期間雇用されると"
-"いうことがありえるからです。 お金の値と従業員の名前をモデル化するためにコン"
-"ポーネントを使っています。"
+"モデルは、関連の表現に実際のエンティティクラス ( <literal>Employment</"
+"literal> ) を使います。なぜなら、同じ2つのパーティに複数の期間雇用されるとい"
+"うことがありえるからです。お金の値と従業員の名前をモデル化するためにコンポー"
+"ネントを使っています。"
#. Tag: para
-#: example_mappings.xml:56
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Here is a possible mapping document:"
msgstr "マッピングドキュメントの一例です:"
-#. Tag: programlisting
-#: example_mappings.xml:60
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-" \n"
-" <class name=\"Employer\"
table=\"employers\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\">\n"
-" <param
name=\"sequence\">employer_id_seq</param>\n"
-" </generator>\n"
-" </id>\n"
-" <property name=\"name\"/>\n"
-" </class>\n"
-"\n"
-" <class name=\"Employment\"
table=\"employment_periods\">\n"
-"\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\">\n"
-" <param
name=\"sequence\">employment_id_seq</param>\n"
-" </generator>\n"
-" </id>\n"
-" <property name=\"startDate\"
column=\"start_date\"/>\n"
-" <property name=\"endDate\"
column=\"end_date\"/>\n"
-"\n"
-" <component name=\"hourlyRate\"
class=\"MonetaryAmount\">\n"
-" <property name=\"amount\">\n"
-" <column name=\"hourly_rate\"
sql-type=\"NUMERIC(12, 2)\"/>\n"
-" </property>\n"
-" <property name=\"currency\"
length=\"12\"/>\n"
-" </component>\n"
-"\n"
-" <many-to-one name=\"employer\"
column=\"employer_id\" not-null=\"true"
-"\"/>\n"
-" <many-to-one name=\"employee\"
column=\"employee_id\" not-null=\"true"
-"\"/>\n"
-"\n"
-" </class>\n"
-"\n"
-" <class name=\"Employee\"
table=\"employees\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"sequence\">\n"
-" <param
name=\"sequence\">employee_id_seq</param>\n"
-" </generator>\n"
-" </id>\n"
-" <property name=\"taxfileNumber\"/>\n"
-" <component name=\"name\" class=\"Name\">\n"
-" <property name=\"firstName\"/>\n"
-" <property name=\"initial\"/>\n"
-" <property name=\"lastName\"/>\n"
-" </component>\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: para
-#: example_mappings.xml:62
-#, fuzzy, no-c-format
msgid "Here is the table schema generated by
<literal>SchemaExport</literal>."
msgstr "<literal>SchemaExport</literal> で生成したテーブルスキーマです。"
-#. Tag: programlisting
-#: example_mappings.xml:66
-#, no-c-format
-msgid ""
-"<![CDATA[create table employers (\n"
-" id BIGINT not null, \n"
-" name VARCHAR(255), \n"
-" primary key (id)\n"
-")\n"
-"\n"
-"create table employment_periods (\n"
-" id BIGINT not null,\n"
-" hourly_rate NUMERIC(12, 2),\n"
-" currency VARCHAR(12), \n"
-" employee_id BIGINT not null, \n"
-" employer_id BIGINT not null, \n"
-" end_date TIMESTAMP, \n"
-" start_date TIMESTAMP, \n"
-" primary key (id)\n"
-")\n"
-"\n"
-"create table employees (\n"
-" id BIGINT not null, \n"
-" firstName VARCHAR(255), \n"
-" initial CHAR(1), \n"
-" lastName VARCHAR(255), \n"
-" taxfileNumber VARCHAR(255), \n"
-" primary key (id)\n"
-")\n"
-"\n"
-"alter table employment_periods \n"
-" add constraint employment_periodsFK0 foreign key (employer_id) "
-"references employers\n"
-"alter table employment_periods \n"
-" add constraint employment_periodsFK1 foreign key (employee_id) "
-"references employees\n"
-"create sequence employee_id_seq\n"
-"create sequence employment_id_seq\n"
-"create sequence employer_id_seq]]>"
-msgstr ""
-
#. Tag: title
-#: example_mappings.xml:71
#, no-c-format
msgid "Author/Work"
msgstr "作者/作品"
#. Tag: para
-#: example_mappings.xml:73
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Consider the following model of the relationships between
<literal>Work</"
"literal>, <literal>Author</literal> and
<literal>Person</literal>. In the "
@@ -171,143 +69,41 @@
"literal> is represented as one-to-one association. Another possibility would
"
"be to have <literal>Author</literal> extend
<literal>Person</literal>."
msgstr ""
-"<literal>Work</literal> , <literal>Author</literal> そして
<literal>Person</"
+"<literal>Work</literal> 、 <literal>Author</literal> そして
<literal>Person</"
"literal> の関係を表す以下のモデルを考えてみてください。 <literal>Work</"
"literal> と <literal>Author</literal> の関係を多対多関連で表しています。 "
"<literal>Author</literal> と <literal>Person</literal>
の関係は一対一関連とし"
-"て表しています。 他には <literal>Author</literal> が
<literal>Person</"
+"て表しています。他には <literal>Author</literal> が
<literal>Person</"
"literal> を拡張するという方法もあります。"
#. Tag: para
-#: example_mappings.xml:91
#, no-c-format
msgid ""
"The following mapping document correctly represents these relationships:"
-msgstr "以下のマッピングドキュメントはこのような関係を正確に表現しています。"
+msgstr "以下のマッピングドキュメントはこのような関係を正確に表現しています:"
-#. Tag: programlisting
-#: example_mappings.xml:95
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-"\n"
-" <class name=\"Work\" table=\"works\"
discriminator-value=\"W\">\n"
-"\n"
-" <id name=\"id\" column=\"id\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <discriminator column=\"type\"
type=\"character\"/>\n"
-"\n"
-" <property name=\"title\"/>\n"
-" <set name=\"authors\"
table=\"author_work\">\n"
-" <key column name=\"work_id\"/>\n"
-" <many-to-many class=\"Author\" column
name=\"author_id\"/>\n"
-" </set>\n"
-"\n"
-" <subclass name=\"Book\"
discriminator-value=\"B\">\n"
-" <property name=\"text\"/>\n"
-" </subclass>\n"
-"\n"
-" <subclass name=\"Song\"
discriminator-value=\"S\">\n"
-" <property name=\"tempo\"/>\n"
-" <property name=\"genre\"/>\n"
-" </subclass>\n"
-"\n"
-" </class>\n"
-"\n"
-" <class name=\"Author\" table=\"authors\">\n"
-"\n"
-" <id name=\"id\" column=\"id\">\n"
-" <!-- The Author must have the same identifier as the Person
-->\n"
-" <generator class=\"assigned\"/> \n"
-" </id>\n"
-"\n"
-" <property name=\"alias\"/>\n"
-" <one-to-one name=\"person\"
constrained=\"true\"/>\n"
-"\n"
-" <set name=\"works\" table=\"author_work\"
inverse=\"true\">\n"
-" <key column=\"author_id\"/>\n"
-" <many-to-many class=\"Work\"
column=\"work_id\"/>\n"
-" </set>\n"
-"\n"
-" </class>\n"
-"\n"
-" <class name=\"Person\" table=\"persons\">\n"
-" <id name=\"id\" column=\"id\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"name\"/>\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: para
-#: example_mappings.xml:97
-#, fuzzy, no-c-format
-msgid ""
"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. Here is the table schema, as "
"generated by <literal>SchemaExport</literal>:"
msgstr ""
-"このマッピングには4つのテーブルがあります。 <literal>works</literal> , "
+"このマッピングには4つのテーブルがあります。 <literal>works</literal> 、 "
"<literal>authors</literal> , <literal>persons</literal>
はそれぞれ、仕事、作"
"者、人のデータを保持します。 <literal>author_work</literal> は作者と作品をリ"
-"ンクする関連テーブルです。 以下は <literal>SchemaExport</literal> で生成した"
+"ンクする関連テーブルです。以下は <literal>SchemaExport</literal> で生成した"
"テーブルスキーマです。"
-#. Tag: programlisting
-#: example_mappings.xml:105
-#, no-c-format
-msgid ""
-"<![CDATA[create table works (\n"
-" id BIGINT not null generated by default as identity, \n"
-" tempo FLOAT, \n"
-" genre VARCHAR(255), \n"
-" text INTEGER, \n"
-" title VARCHAR(255), \n"
-" type CHAR(1) not null, \n"
-" primary key (id)\n"
-")\n"
-"\n"
-"create table author_work (\n"
-" author_id BIGINT not null, \n"
-" work_id BIGINT not null, \n"
-" primary key (work_id, author_id)\n"
-")\n"
-"\n"
-"create table authors (\n"
-" id BIGINT not null generated by default as identity, \n"
-" alias VARCHAR(255), \n"
-" primary key (id)\n"
-")\n"
-"\n"
-"create table persons (\n"
-" id BIGINT not null generated by default as identity, \n"
-" name VARCHAR(255), \n"
-" primary key (id)\n"
-")\n"
-"\n"
-"alter table authors \n"
-" add constraint authorsFK0 foreign key (id) references persons\n"
-"alter table author_work \n"
-" add constraint author_workFK0 foreign key (author_id) references "
-"authors\n"
-"alter table author_work\n"
-" add constraint author_workFK1 foreign key (work_id) references
works]]>"
-msgstr ""
-
#. Tag: title
-#: example_mappings.xml:110
#, no-c-format
msgid "Customer/Order/Product"
msgstr "顧客/注文/製品"
#. Tag: para
-#: example_mappings.xml:112
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In this section we consider a model of the relationships between "
"<literal>Customer</literal>, <literal>Order</literal>,
<literal>Line Item</"
@@ -319,66 +115,21 @@
"between <literal>Order</literal> and
<literal>Product</literal>. In "
"Hibernate this is called a composite element."
msgstr ""
-"さて、 <literal>Customer</literal> , <literal>Order</literal>
, "
-"<literal>LineItem</literal><literal>Product</literal>
の関係を表すモデルを考"
-"えてみましょう。 <literal>Customer</literal> と
<literal>Order</literal> は一"
-"対多の関連ですが、 <literal>Order</literal> /
<literal>LineItem</literal> / "
-"<literal>Product</literal> はどのように表現するべきでしょうか? "
-"<literal>LineItem</literal> を、<literal>Order</literal> と
"
+"さて、 <literal>Customer</literal> 、 <literal>Order</literal>
、 "
+"<literal>LineItem</literal> 、 <literal>Product</literal>
の関係を表すモデル"
+"を考えてみましょう。 <literal>Customer</literal> と
<literal>Order</literal> "
+"は一対多の関連ですが、 <literal>Order</literal> /
<literal>LineItem</"
+"literal> / <literal>Product</literal> はどのように表現するべきでしょうか? "
+"<literal>LineItem</literal> を、 <literal>Order</literal> と
"
"<literal>Product</literal> の多対多関連を表現する関連クラスとしてマッピングし"
-"ました。 Hibernateではこれをコンポジット要素と呼びます。"
+"ました。 Hibernate ではこれをコンポジット要素と呼びます。"
#. Tag: para
-#: example_mappings.xml:132
-#, fuzzy, no-c-format
+#, no-c-format
msgid "The mapping document will look like this:"
msgstr "マッピングドキュメント:"
-#. Tag: programlisting
-#: example_mappings.xml:136
-#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-"\n"
-" <class name=\"Customer\"
table=\"customers\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"name\"/>\n"
-" <set name=\"orders\" inverse=\"true\">\n"
-" <key column=\"customer_id\"/>\n"
-" <one-to-many class=\"Order\"/>\n"
-" </set>\n"
-" </class>\n"
-"\n"
-" <class name=\"Order\" table=\"orders\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"date\"/>\n"
-" <many-to-one name=\"customer\"
column=\"customer_id\"/>\n"
-" <list name=\"lineItems\"
table=\"line_items\">\n"
-" <key column=\"order_id\"/>\n"
-" <list-index column=\"line_number\"/>\n"
-" <composite-element class=\"LineItem\">\n"
-" <property name=\"quantity\"/>\n"
-" <many-to-one name=\"product\"
column=\"product_id\"/>\n"
-" </composite-element>\n"
-" </list>\n"
-" </class>\n"
-"\n"
-" <class name=\"Product\" table=\"products\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"serialNumber\"/>\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
#. Tag: para
-#: example_mappings.xml:138
#, no-c-format
msgid ""
"<literal>customers</literal>, <literal>orders</literal>,
"
@@ -386,401 +137,1137 @@
"order, order line item and product data respectively.
<literal>line_items</"
"literal> also acts as an association table linking orders with products."
msgstr ""
-"<literal>customers</literal> , <literal>orders</literal> ,
"
-"<literal>line_items</literal> , <literal>products</literal>
はそれぞれ、顧"
+"<literal>customers</literal> 、 <literal>orders</literal> 、
"
+"<literal>line_items</literal> 、 <literal>products</literal>
はそれぞれ、顧"
"客、注文、注文明細、製品のデータを保持します。 <literal>line_items</literal> "
"は注文と製品をリンクする関連テーブルとしても働きます。"
-#. Tag: programlisting
-#: example_mappings.xml:145
-#, no-c-format
-msgid ""
-"<![CDATA[create table customers (\n"
-" id BIGINT not null generated by default as identity, \n"
-" name VARCHAR(255), \n"
-" primary key (id)\n"
-")\n"
-"\n"
-"create table orders (\n"
-" id BIGINT not null generated by default as identity, \n"
-" customer_id BIGINT, \n"
-" date TIMESTAMP, \n"
-" primary key (id)\n"
-")\n"
-"\n"
-"create table line_items (\n"
-" line_number INTEGER not null, \n"
-" order_id BIGINT not null, \n"
-" product_id BIGINT, \n"
-" quantity INTEGER, \n"
-" primary key (order_id, line_number)\n"
-")\n"
-"\n"
-"create table products (\n"
-" id BIGINT not null generated by default as identity, \n"
-" serialNumber VARCHAR(255), \n"
-" primary key (id)\n"
-")\n"
-"\n"
-"alter table orders \n"
-" add constraint ordersFK0 foreign key (customer_id) references
customers\n"
-"alter table line_items\n"
-" add constraint line_itemsFK0 foreign key (product_id) references "
-"products\n"
-"alter table line_items\n"
-" add constraint line_itemsFK1 foreign key (order_id) references
orders]]>"
-msgstr ""
-
#. Tag: title
-#: example_mappings.xml:150
#, no-c-format
msgid "Miscellaneous example mappings"
msgstr "種々雑多なマッピング例"
#. Tag: para
-#: example_mappings.xml:152
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"These examples are available from the Hibernate test suite. You will find "
"many other useful example mappings there by searching in the
<literal>test</"
"literal> folder of the Hibernate distribution."
msgstr ""
-"ここにある例はすべてHibernateのテストスイートから取りました。 そこには、他に"
-"もたくさんのマッピングの例があります。 Hibernateディストリビューションの "
+"ここにある例はすべて Hibernate のテストスイートから取りました。そこには、他に"
+"もたくさんのマッピングの例があります。 Hibernate ディストリビューションの "
"<literal>test</literal> フォルダを見てください。"
#. Tag: title
-#: example_mappings.xml:161
#, no-c-format
msgid "\"Typed\" one-to-one association"
msgstr "「型付けされた」一対一関連"
-#. Tag: programlisting
-#: example_mappings.xml:162
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"name\"/>\n"
-" <one-to-one name=\"address\" \n"
-" cascade=\"all\">\n"
-" <formula>name</formula>\n"
-" <formula>'HOME'</formula>\n"
-" </one-to-one>\n"
-" <one-to-one name=\"mailingAddress\" \n"
-" cascade=\"all\">\n"
-" <formula>name</formula>\n"
-" <formula>'MAILING'</formula>\n"
-" </one-to-one>\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\" batch-size=\"2\" \n"
-" check=\"addressType in ('MAILING', 'HOME',
'BUSINESS')\">\n"
-" <composite-id>\n"
-" <key-many-to-one name=\"person\" \n"
-" column=\"personName\"/>\n"
-" <key-property name=\"type\" \n"
-" column=\"addressType\"/>\n"
-" </composite-id>\n"
-" <property name=\"street\" type=\"text\"/>\n"
-" <property name=\"state\"/>\n"
-" <property name=\"zip\"/>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: example_mappings.xml:166
#, no-c-format
msgid "Composite key example"
msgstr "複合キーの例"
-#. Tag: programlisting
-#: example_mappings.xml:167
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Customer\">\n"
-"\n"
-" <id name=\"customerId\"\n"
-" length=\"10\">\n"
-" <generator class=\"assigned\"/>\n"
-" </id>\n"
-"\n"
-" <property name=\"name\" not-null=\"true\"
length=\"100\"/>\n"
-" <property name=\"address\" not-null=\"true\"
length=\"200\"/>\n"
-"\n"
-" <list name=\"orders\"\n"
-" inverse=\"true\"\n"
-" cascade=\"save-update\">\n"
-" <key column=\"customerId\"/>\n"
-" <index column=\"orderNumber\"/>\n"
-" <one-to-many class=\"Order\"/>\n"
-" </list>\n"
-"\n"
-"</class>\n"
-"\n"
-"<class name=\"Order\" table=\"CustomerOrder\"
lazy=\"true\">\n"
-" <synchronize table=\"LineItem\"/>\n"
-" <synchronize table=\"Product\"/>\n"
-" \n"
-" <composite-id name=\"id\" \n"
-" class=\"Order$Id\">\n"
-" <key-property name=\"customerId\"
length=\"10\"/>\n"
-" <key-property name=\"orderNumber\"/>\n"
-" </composite-id>\n"
-" \n"
-" <property name=\"orderDate\" \n"
-" type=\"calendar_date\"\n"
-" not-null=\"true\"/>\n"
-" \n"
-" <property name=\"total\">\n"
-" <formula>\n"
-" ( select sum(li.quantity*p.price) \n"
-" from LineItem li, Product p \n"
-" where li.productId = p.productId \n"
-" and li.customerId = customerId \n"
-" and li.orderNumber = orderNumber )\n"
-" </formula>\n"
-" </property>\n"
-" \n"
-" <many-to-one name=\"customer\"\n"
-" column=\"customerId\"\n"
-" insert=\"false\"\n"
-" update=\"false\" \n"
-" not-null=\"true\"/>\n"
-" \n"
-" <bag name=\"lineItems\"\n"
-" fetch=\"join\" \n"
-" inverse=\"true\"\n"
-" cascade=\"save-update\">\n"
-" <key>\n"
-" <column name=\"customerId\"/>\n"
-" <column name=\"orderNumber\"/>\n"
-" </key>\n"
-" <one-to-many class=\"LineItem\"/>\n"
-" </bag>\n"
-" \n"
-"</class>\n"
-" \n"
-"<class name=\"LineItem\">\n"
-" \n"
-" <composite-id name=\"id\" \n"
-" class=\"LineItem$Id\">\n"
-" <key-property name=\"customerId\"
length=\"10\"/>\n"
-" <key-property name=\"orderNumber\"/>\n"
-" <key-property name=\"productId\"
length=\"10\"/>\n"
-" </composite-id>\n"
-" \n"
-" <property name=\"quantity\"/>\n"
-" \n"
-" <many-to-one name=\"order\"\n"
-" insert=\"false\"\n"
-" update=\"false\" \n"
-" not-null=\"true\">\n"
-" <column name=\"customerId\"/>\n"
-" <column name=\"orderNumber\"/>\n"
-" </many-to-one>\n"
-" \n"
-" <many-to-one name=\"product\"\n"
-" insert=\"false\"\n"
-" update=\"false\" \n"
-" not-null=\"true\"\n"
-" column=\"productId\"/>\n"
-" \n"
-"</class>\n"
-"\n"
-"<class name=\"Product\">\n"
-" <synchronize table=\"LineItem\"/>\n"
-"\n"
-" <id name=\"productId\"\n"
-" length=\"10\">\n"
-" <generator class=\"assigned\"/>\n"
-" </id>\n"
-" \n"
-" <property name=\"description\" \n"
-" not-null=\"true\" \n"
-" length=\"200\"/>\n"
-" <property name=\"price\" length=\"3\"/>\n"
-" <property name=\"numberAvailable\"/>\n"
-" \n"
-" <property name=\"numberOrdered\">\n"
-" <formula>\n"
-" ( select sum(li.quantity) \n"
-" from LineItem li \n"
-" where li.productId = productId )\n"
-" </formula>\n"
-" </property>\n"
-" \n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: example_mappings.xml:171
#, no-c-format
msgid "Many-to-many with shared composite key attribute"
msgstr "複合キー属性を共有する多対多"
-#. Tag: programlisting
-#: example_mappings.xml:172
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"User\"
table=\"`User`\">\n"
-" <composite-id>\n"
-" <key-property name=\"name\"/>\n"
-" <key-property name=\"org\"/>\n"
-" </composite-id>\n"
-" <set name=\"groups\" table=\"UserGroup\">\n"
-" <key>\n"
-" <column name=\"userName\"/>\n"
-" <column name=\"org\"/>\n"
-" </key>\n"
-" <many-to-many class=\"Group\">\n"
-" <column name=\"groupName\"/>\n"
-" <formula>org</formula>\n"
-" </many-to-many>\n"
-" </set>\n"
-"</class>\n"
-" \n"
-"<class name=\"Group\" table=\"`Group`\">\n"
-" <composite-id>\n"
-" <key-property name=\"name\"/>\n"
-" <key-property name=\"org\"/>\n"
-" </composite-id>\n"
-" <property name=\"description\"/>\n"
-" <set name=\"users\" table=\"UserGroup\"
inverse=\"true\">\n"
-" <key>\n"
-" <column name=\"groupName\"/>\n"
-" <column name=\"org\"/>\n"
-" </key>\n"
-" <many-to-many class=\"User\">\n"
-" <column name=\"userName\"/>\n"
-" <formula>org</formula>\n"
-" </many-to-many>\n"
-" </set>\n"
-"</class>\n"
-"]]>"
-msgstr ""
-
#. Tag: title
-#: example_mappings.xml:176
#, no-c-format
msgid "Content based discrimination"
-msgstr "discriminationに基づく内容"
+msgstr "discrimination に基づく内容"
-#. Tag: programlisting
-#: example_mappings.xml:177
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\"\n"
-" discriminator-value=\"P\">\n"
-" \n"
-" <id name=\"id\" \n"
-" column=\"person_id\" \n"
-" unsaved-value=\"0\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" \n"
-" \n"
-" <discriminator \n"
-" type=\"character\">\n"
-" <formula>\n"
-" case \n"
-" when title is not null then 'E' \n"
-" when salesperson is not null then 'C' \n"
-" else 'P' \n"
-" end\n"
-" </formula>\n"
-" </discriminator>\n"
-"\n"
-" <property name=\"name\" \n"
-" not-null=\"true\"\n"
-" length=\"80\"/>\n"
-" \n"
-" <property name=\"sex\" \n"
-" not-null=\"true\"\n"
-" update=\"false\"/>\n"
-" \n"
-" <component name=\"address\">\n"
-" <property name=\"address\"/>\n"
-" <property name=\"zip\"/>\n"
-" <property name=\"country\"/>\n"
-" </component>\n"
-" \n"
-" <subclass name=\"Employee\" \n"
-" discriminator-value=\"E\">\n"
-" <property name=\"title\"\n"
-" length=\"20\"/>\n"
-" <property name=\"salary\"/>\n"
-" <many-to-one name=\"manager\"/>\n"
-" </subclass>\n"
-" \n"
-" <subclass name=\"Customer\" \n"
-" discriminator-value=\"C\">\n"
-" <property name=\"comments\"/>\n"
-" <many-to-one name=\"salesperson\"/>\n"
-" </subclass>\n"
-" \n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: example_mappings.xml:181
#, no-c-format
msgid "Associations on alternate keys"
msgstr "代替キーの関連"
-#. Tag: programlisting
-#: example_mappings.xml:182
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" \n"
-" <id name=\"id\">\n"
-" <generator class=\"hilo\"/>\n"
-" </id>\n"
-" \n"
-" <property name=\"name\" length=\"100\"/>\n"
-" \n"
-" <one-to-one name=\"address\" \n"
-" property-ref=\"person\"\n"
-" cascade=\"all\"\n"
-" fetch=\"join\"/>\n"
-" \n"
-" <set name=\"accounts\" \n"
-" inverse=\"true\">\n"
-" <key column=\"userId\"\n"
-" property-ref=\"userId\"/>\n"
-" <one-to-many class=\"Account\"/>\n"
-" </set>\n"
-" \n"
-" <property name=\"userId\" length=\"8\"/>\n"
-"\n"
-"</class>\n"
-"\n"
-"<class name=\"Address\">\n"
-"\n"
-" <id name=\"id\">\n"
-" <generator class=\"hilo\"/>\n"
-" </id>\n"
-"\n"
-" <property name=\"address\" length=\"300\"/>\n"
-" <property name=\"zip\" length=\"5\"/>\n"
-" <property name=\"country\" length=\"25\"/>\n"
-" <many-to-one name=\"person\" unique=\"true\"
not-null=\"true\"/>\n"
-"\n"
-"</class>\n"
-"\n"
-"<class name=\"Account\">\n"
-" <id name=\"accountId\" length=\"32\">\n"
-" <generator class=\"uuid\"/>\n"
-" </id>\n"
-" \n"
-" <many-to-one name=\"user\"\n"
-" column=\"userId\"\n"
-" property-ref=\"userId\"/>\n"
-" \n"
-" <property name=\"type\" not-null=\"true\"/>\n"
-" \n"
-"</class>]]>"
-msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ " \n"
+#~ " <class name=\"Employer\"
table=\"employers\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\">\n"
+#~ " <param
name=\"sequence\">employer_id_seq</param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Employment\"
table=\"employment_periods\">\n"
+#~ "\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\">\n"
+#~ " <param
name=\"sequence\">employment_id_seq</param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " <property name=\"startDate\"
column=\"start_date\"/>\n"
+#~ " <property name=\"endDate\"
column=\"end_date\"/>\n"
+#~ "\n"
+#~ " <component name=\"hourlyRate\"
class=\"MonetaryAmount\">\n"
+#~ " <property name=\"amount\">\n"
+#~ " <column name=\"hourly_rate\"
sql-type=\"NUMERIC(12, 2)\"/"
+#~ ">\n"
+#~ " </property>\n"
+#~ " <property name=\"currency\"
length=\"12\"/>\n"
+#~ " </component>\n"
+#~ "\n"
+#~ " <many-to-one name=\"employer\"
column=\"employer_id\" not-null="
+#~ "\"true\"/>\n"
+#~ " <many-to-one name=\"employee\"
column=\"employee_id\" not-null="
+#~ "\"true\"/>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Employee\"
table=\"employees\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\">\n"
+#~ " <param
name=\"sequence\">employee_id_seq</param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " <property name=\"taxfileNumber\"/>\n"
+#~ " <component name=\"name\"
class=\"Name\">\n"
+#~ " <property name=\"firstName\"/>\n"
+#~ " <property name=\"initial\"/>\n"
+#~ " <property name=\"lastName\"/>\n"
+#~ " </component>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ " \n"
+#~ " <class name=\"Employer\"
table=\"employers\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\">\n"
+#~ " <param
name=\"sequence\">employer_id_seq</"
+#~ "param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Employment\"
table=\"employment_periods\">\n"
+#~ "\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\">\n"
+#~ " <param
name=\"sequence\">employment_id_seq</"
+#~ "param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " <property name=\"startDate\"
column=\"start_date\"/>\n"
+#~ " <property name=\"endDate\"
column=\"end_date\"/>\n"
+#~ "\n"
+#~ " <component name=\"hourlyRate\"
class=\"MonetaryAmount\">\n"
+#~ " <property name=\"amount\">\n"
+#~ " <column name=\"hourly_rate\"
sql-type=\"NUMERIC(12, 2)"
+#~ "\"/>\n"
+#~ " </property>\n"
+#~ " <property name=\"currency\"
length=\"12\"/>\n"
+#~ " </component>\n"
+#~ "\n"
+#~ " <many-to-one name=\"employer\"
column=\"employer_id\" not-null="
+#~ "\"true\"/>\n"
+#~ " <many-to-one name=\"employee\"
column=\"employee_id\" not-null="
+#~ "\"true\"/>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Employee\"
table=\"employees\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"sequence\">\n"
+#~ " <param
name=\"sequence\">employee_id_seq</"
+#~ "param>\n"
+#~ " </generator>\n"
+#~ " </id>\n"
+#~ " <property name=\"taxfileNumber\"/>\n"
+#~ " <component name=\"name\"
class=\"Name\">\n"
+#~ " <property name=\"firstName\"/>\n"
+#~ " <property name=\"initial\"/>\n"
+#~ " <property name=\"lastName\"/>\n"
+#~ " </component>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
-#~ msgid "TODO: put words around this stuff"
-#~ msgstr "TODO: ここに文章を埋める"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[create table employers (\n"
+#~ " id BIGINT not null, \n"
+#~ " name VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table employment_periods (\n"
+#~ " id BIGINT not null,\n"
+#~ " hourly_rate NUMERIC(12, 2),\n"
+#~ " currency VARCHAR(12), \n"
+#~ " employee_id BIGINT not null, \n"
+#~ " employer_id BIGINT not null, \n"
+#~ " end_date TIMESTAMP, \n"
+#~ " start_date TIMESTAMP, \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table employees (\n"
+#~ " id BIGINT not null, \n"
+#~ " firstName VARCHAR(255), \n"
+#~ " initial CHAR(1), \n"
+#~ " lastName VARCHAR(255), \n"
+#~ " taxfileNumber VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "alter table employment_periods \n"
+#~ " add constraint employment_periodsFK0 foreign key (employer_id) "
+#~ "references employers\n"
+#~ "alter table employment_periods \n"
+#~ " add constraint employment_periodsFK1 foreign key (employee_id) "
+#~ "references employees\n"
+#~ "create sequence employee_id_seq\n"
+#~ "create sequence employment_id_seq\n"
+#~ "create sequence employer_id_seq]]>"
+#~ msgstr ""
+#~ "create table employers (\n"
+#~ " id BIGINT not null, \n"
+#~ " name VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table employment_periods (\n"
+#~ " id BIGINT not null,\n"
+#~ " hourly_rate NUMERIC(12, 2),\n"
+#~ " currency VARCHAR(12), \n"
+#~ " employee_id BIGINT not null, \n"
+#~ " employer_id BIGINT not null, \n"
+#~ " end_date TIMESTAMP, \n"
+#~ " start_date TIMESTAMP, \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table employees (\n"
+#~ " id BIGINT not null, \n"
+#~ " firstName VARCHAR(255), \n"
+#~ " initial CHAR(1), \n"
+#~ " lastName VARCHAR(255), \n"
+#~ " taxfileNumber VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "alter table employment_periods \n"
+#~ " add constraint employment_periodsFK0 foreign key (employer_id) "
+#~ "references employers\n"
+#~ "alter table employment_periods \n"
+#~ " add constraint employment_periodsFK1 foreign key (employee_id) "
+#~ "references employees\n"
+#~ "create sequence employee_id_seq\n"
+#~ "create sequence employment_id_seq\n"
+#~ "create sequence employer_id_seq"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Work\" table=\"works\"
discriminator-value=\"W\">\n"
+#~ "\n"
+#~ " <id name=\"id\" column=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <discriminator column=\"type\"
type=\"character\"/>\n"
+#~ "\n"
+#~ " <property name=\"title\"/>\n"
+#~ " <set name=\"authors\"
table=\"author_work\">\n"
+#~ " <key column name=\"work_id\"/>\n"
+#~ " <many-to-many class=\"Author\" column
name=\"author_id\"/>\n"
+#~ " </set>\n"
+#~ "\n"
+#~ " <subclass name=\"Book\"
discriminator-value=\"B\">\n"
+#~ " <property name=\"text\"/>\n"
+#~ " </subclass>\n"
+#~ "\n"
+#~ " <subclass name=\"Song\"
discriminator-value=\"S\">\n"
+#~ " <property name=\"tempo\"/>\n"
+#~ " <property name=\"genre\"/>\n"
+#~ " </subclass>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Author\" table=\"authors\">\n"
+#~ "\n"
+#~ " <id name=\"id\" column=\"id\">\n"
+#~ " <!-- The Author must have the same identifier as the Person
--"
+#~ ">\n"
+#~ " <generator class=\"assigned\"/> \n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property name=\"alias\"/>\n"
+#~ " <one-to-one name=\"person\"
constrained=\"true\"/>\n"
+#~ "\n"
+#~ " <set name=\"works\" table=\"author_work\"
inverse=\"true\">\n"
+#~ " <key column=\"author_id\"/>\n"
+#~ " <many-to-many class=\"Work\"
column=\"work_id\"/>\n"
+#~ " </set>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Person\" table=\"persons\">\n"
+#~ " <id name=\"id\" column=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Work\" table=\"works\"
discriminator-value=\"W"
+#~ "\">\n"
+#~ "\n"
+#~ " <id name=\"id\"
column=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <discriminator column=\"type\"
type=\"character\"/>\n"
+#~ "\n"
+#~ " <property name=\"title\"/>\n"
+#~ " <set name=\"authors\"
table=\"author_work\">\n"
+#~ " <key column name=\"work_id\"/>\n"
+#~ " <many-to-many class=\"Author\" column
name=\"author_id\"/"
+#~ ">\n"
+#~ " </set>\n"
+#~ "\n"
+#~ " <subclass name=\"Book\"
discriminator-value=\"B\">\n"
+#~ " <property name=\"text\"/>\n"
+#~ " </subclass>\n"
+#~ "\n"
+#~ " <subclass name=\"Song\"
discriminator-value=\"S\">\n"
+#~ " <property name=\"tempo\"/>\n"
+#~ " <property name=\"genre\"/>\n"
+#~ " </subclass>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Author\"
table=\"authors\">\n"
+#~ "\n"
+#~ " <id name=\"id\"
column=\"id\">\n"
+#~ " <!-- The Author must have the same identifier as the "
+#~ "Person -->\n"
+#~ " <generator class=\"assigned\"/> \n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property name=\"alias\"/>\n"
+#~ " <one-to-one name=\"person\"
constrained=\"true\"/>\n"
+#~ "\n"
+#~ " <set name=\"works\" table=\"author_work\"
inverse=\"true"
+#~ "\">\n"
+#~ " <key column=\"author_id\"/>\n"
+#~ " <many-to-many class=\"Work\"
column=\"work_id\"/>\n"
+#~ " </set>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Person\"
table=\"persons\">\n"
+#~ " <id name=\"id\"
column=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[create table works (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " tempo FLOAT, \n"
+#~ " genre VARCHAR(255), \n"
+#~ " text INTEGER, \n"
+#~ " title VARCHAR(255), \n"
+#~ " type CHAR(1) not null, \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table author_work (\n"
+#~ " author_id BIGINT not null, \n"
+#~ " work_id BIGINT not null, \n"
+#~ " primary key (work_id, author_id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table authors (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " alias VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table persons (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " name VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "alter table authors \n"
+#~ " add constraint authorsFK0 foreign key (id) references persons\n"
+#~ "alter table author_work \n"
+#~ " add constraint author_workFK0 foreign key (author_id) references "
+#~ "authors\n"
+#~ "alter table author_work\n"
+#~ " add constraint author_workFK1 foreign key (work_id) references
works]]"
+#~ ">"
+#~ msgstr ""
+#~ "create table works (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " tempo FLOAT, \n"
+#~ " genre VARCHAR(255), \n"
+#~ " text INTEGER, \n"
+#~ " title VARCHAR(255), \n"
+#~ " type CHAR(1) not null, \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table author_work (\n"
+#~ " author_id BIGINT not null, \n"
+#~ " work_id BIGINT not null, \n"
+#~ " primary key (work_id, author_id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table authors (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " alias VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table persons (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " name VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "alter table authors \n"
+#~ " add constraint authorsFK0 foreign key (id) references persons\n"
+#~ "alter table author_work \n"
+#~ " add constraint author_workFK0 foreign key (author_id) references "
+#~ "authors\n"
+#~ "alter table author_work\n"
+#~ " add constraint author_workFK1 foreign key (work_id) references works"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Customer\"
table=\"customers\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " <set name=\"orders\"
inverse=\"true\">\n"
+#~ " <key column=\"customer_id\"/>\n"
+#~ " <one-to-many class=\"Order\"/>\n"
+#~ " </set>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Order\" table=\"orders\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"date\"/>\n"
+#~ " <many-to-one name=\"customer\"
column=\"customer_id\"/>\n"
+#~ " <list name=\"lineItems\"
table=\"line_items\">\n"
+#~ " <key column=\"order_id\"/>\n"
+#~ " <list-index column=\"line_number\"/>\n"
+#~ " <composite-element class=\"LineItem\">\n"
+#~ " <property name=\"quantity\"/>\n"
+#~ " <many-to-one name=\"product\"
column=\"product_id\"/>\n"
+#~ " </composite-element>\n"
+#~ " </list>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Product\"
table=\"products\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"serialNumber\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"Customer\"
table=\"customers\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " <set name=\"orders\"
inverse=\"true\">\n"
+#~ " <key column=\"customer_id\"/>\n"
+#~ " <one-to-many class=\"Order\"/>\n"
+#~ " </set>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Order\"
table=\"orders\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"date\"/>\n"
+#~ " <many-to-one name=\"customer\"
column=\"customer_id\"/>\n"
+#~ " <list name=\"lineItems\"
table=\"line_items\">\n"
+#~ " <key column=\"order_id\"/>\n"
+#~ " <list-index
column=\"line_number\"/>\n"
+#~ " <composite-element
class=\"LineItem\">\n"
+#~ " <property name=\"quantity\"/>\n"
+#~ " <many-to-one name=\"product\"
column=\"product_id\"/"
+#~ ">\n"
+#~ " </composite-element>\n"
+#~ " </list>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ " <class name=\"Product\"
table=\"products\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"serialNumber\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[create table customers (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " name VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table orders (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " customer_id BIGINT, \n"
+#~ " date TIMESTAMP, \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table line_items (\n"
+#~ " line_number INTEGER not null, \n"
+#~ " order_id BIGINT not null, \n"
+#~ " product_id BIGINT, \n"
+#~ " quantity INTEGER, \n"
+#~ " primary key (order_id, line_number)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table products (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " serialNumber VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "alter table orders \n"
+#~ " add constraint ordersFK0 foreign key (customer_id) references "
+#~ "customers\n"
+#~ "alter table line_items\n"
+#~ " add constraint line_itemsFK0 foreign key (product_id) references "
+#~ "products\n"
+#~ "alter table line_items\n"
+#~ " add constraint line_itemsFK1 foreign key (order_id) references "
+#~ "orders]]>"
+#~ msgstr ""
+#~ "create table customers (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " name VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table orders (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " customer_id BIGINT, \n"
+#~ " date TIMESTAMP, \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table line_items (\n"
+#~ " line_number INTEGER not null, \n"
+#~ " order_id BIGINT not null, \n"
+#~ " product_id BIGINT, \n"
+#~ " quantity INTEGER, \n"
+#~ " primary key (order_id, line_number)\n"
+#~ ")\n"
+#~ "\n"
+#~ "create table products (\n"
+#~ " id BIGINT not null generated by default as identity, \n"
+#~ " serialNumber VARCHAR(255), \n"
+#~ " primary key (id)\n"
+#~ ")\n"
+#~ "\n"
+#~ "alter table orders \n"
+#~ " add constraint ordersFK0 foreign key (customer_id) references "
+#~ "customers\n"
+#~ "alter table line_items\n"
+#~ " add constraint line_itemsFK0 foreign key (product_id) references "
+#~ "products\n"
+#~ "alter table line_items\n"
+#~ " add constraint line_itemsFK1 foreign key (order_id) references orders"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"name\"/>\n"
+#~ " <one-to-one name=\"address\" \n"
+#~ " cascade=\"all\">\n"
+#~ " <formula>name</formula>\n"
+#~ " <formula>'HOME'</formula>\n"
+#~ " </one-to-one>\n"
+#~ " <one-to-one name=\"mailingAddress\" \n"
+#~ " cascade=\"all\">\n"
+#~ " <formula>name</formula>\n"
+#~ " <formula>'MAILING'</formula>\n"
+#~ " </one-to-one>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\" batch-size=\"2\" \n"
+#~ " check=\"addressType in ('MAILING', 'HOME',
'BUSINESS')\">\n"
+#~ " <composite-id>\n"
+#~ " <key-many-to-one name=\"person\" \n"
+#~ " column=\"personName\"/>\n"
+#~ " <key-property name=\"type\" \n"
+#~ " column=\"addressType\"/>\n"
+#~ " </composite-id>\n"
+#~ " <property name=\"street\" type=\"text\"/>\n"
+#~ " <property name=\"state\"/>\n"
+#~ " <property name=\"zip\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"name\"/>\n"
+#~ " <one-to-one name=\"address\" \n"
+#~ " cascade=\"all\">\n"
+#~ " <formula>name</formula>\n"
+#~ " <formula>'HOME'</formula>\n"
+#~ " </one-to-one>\n"
+#~ " <one-to-one name=\"mailingAddress\" \n"
+#~ " cascade=\"all\">\n"
+#~ " <formula>name</formula>\n"
+#~ "
<formula>'MAILING'</formula>\n"
+#~ " </one-to-one>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\" batch-size=\"2\" \n"
+#~ " check=\"addressType in ('MAILING', 'HOME',
'BUSINESS')\">\n"
+#~ " <composite-id>\n"
+#~ " <key-many-to-one name=\"person\" \n"
+#~ " column=\"personName\"/>\n"
+#~ " <key-property name=\"type\" \n"
+#~ " column=\"addressType\"/>\n"
+#~ " </composite-id>\n"
+#~ " <property name=\"street\"
type=\"text\"/>\n"
+#~ " <property name=\"state\"/>\n"
+#~ " <property name=\"zip\"/>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Customer\">\n"
+#~ "\n"
+#~ " <id name=\"customerId\"\n"
+#~ " length=\"10\">\n"
+#~ " <generator class=\"assigned\"/>\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property name=\"name\" not-null=\"true\"
length=\"100\"/>\n"
+#~ " <property name=\"address\" not-null=\"true\"
length=\"200\"/>\n"
+#~ "\n"
+#~ " <list name=\"orders\"\n"
+#~ " inverse=\"true\"\n"
+#~ " cascade=\"save-update\">\n"
+#~ " <key column=\"customerId\"/>\n"
+#~ " <index column=\"orderNumber\"/>\n"
+#~ " <one-to-many class=\"Order\"/>\n"
+#~ " </list>\n"
+#~ "\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Order\" table=\"CustomerOrder\"
lazy=\"true\">\n"
+#~ " <synchronize table=\"LineItem\"/>\n"
+#~ " <synchronize table=\"Product\"/>\n"
+#~ " \n"
+#~ " <composite-id name=\"id\" \n"
+#~ " class=\"Order$Id\">\n"
+#~ " <key-property name=\"customerId\"
length=\"10\"/>\n"
+#~ " <key-property name=\"orderNumber\"/>\n"
+#~ " </composite-id>\n"
+#~ " \n"
+#~ " <property name=\"orderDate\" \n"
+#~ " type=\"calendar_date\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ " \n"
+#~ " <property name=\"total\">\n"
+#~ " <formula>\n"
+#~ " ( select sum(li.quantity*p.price) \n"
+#~ " from LineItem li, Product p \n"
+#~ " where li.productId = p.productId \n"
+#~ " and li.customerId = customerId \n"
+#~ " and li.orderNumber = orderNumber )\n"
+#~ " </formula>\n"
+#~ " </property>\n"
+#~ " \n"
+#~ " <many-to-one name=\"customer\"\n"
+#~ " column=\"customerId\"\n"
+#~ " insert=\"false\"\n"
+#~ " update=\"false\" \n"
+#~ " not-null=\"true\"/>\n"
+#~ " \n"
+#~ " <bag name=\"lineItems\"\n"
+#~ " fetch=\"join\" \n"
+#~ " inverse=\"true\"\n"
+#~ " cascade=\"save-update\">\n"
+#~ " <key>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " <column name=\"orderNumber\"/>\n"
+#~ " </key>\n"
+#~ " <one-to-many class=\"LineItem\"/>\n"
+#~ " </bag>\n"
+#~ " \n"
+#~ "</class>\n"
+#~ " \n"
+#~ "<class name=\"LineItem\">\n"
+#~ " \n"
+#~ " <composite-id name=\"id\" \n"
+#~ " class=\"LineItem$Id\">\n"
+#~ " <key-property name=\"customerId\"
length=\"10\"/>\n"
+#~ " <key-property name=\"orderNumber\"/>\n"
+#~ " <key-property name=\"productId\"
length=\"10\"/>\n"
+#~ " </composite-id>\n"
+#~ " \n"
+#~ " <property name=\"quantity\"/>\n"
+#~ " \n"
+#~ " <many-to-one name=\"order\"\n"
+#~ " insert=\"false\"\n"
+#~ " update=\"false\" \n"
+#~ " not-null=\"true\">\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " <column name=\"orderNumber\"/>\n"
+#~ " </many-to-one>\n"
+#~ " \n"
+#~ " <many-to-one name=\"product\"\n"
+#~ " insert=\"false\"\n"
+#~ " update=\"false\" \n"
+#~ " not-null=\"true\"\n"
+#~ " column=\"productId\"/>\n"
+#~ " \n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Product\">\n"
+#~ " <synchronize table=\"LineItem\"/>\n"
+#~ "\n"
+#~ " <id name=\"productId\"\n"
+#~ " length=\"10\">\n"
+#~ " <generator class=\"assigned\"/>\n"
+#~ " </id>\n"
+#~ " \n"
+#~ " <property name=\"description\" \n"
+#~ " not-null=\"true\" \n"
+#~ " length=\"200\"/>\n"
+#~ " <property name=\"price\" length=\"3\"/>\n"
+#~ " <property name=\"numberAvailable\"/>\n"
+#~ " \n"
+#~ " <property name=\"numberOrdered\">\n"
+#~ " <formula>\n"
+#~ " ( select sum(li.quantity) \n"
+#~ " from LineItem li \n"
+#~ " where li.productId = productId )\n"
+#~ " </formula>\n"
+#~ " </property>\n"
+#~ " \n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Customer\">\n"
+#~ "\n"
+#~ " <id name=\"customerId\"\n"
+#~ " length=\"10\">\n"
+#~ " <generator class=\"assigned\"/>\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property name=\"name\" not-null=\"true\"
length=\"100\"/>\n"
+#~ " <property name=\"address\" not-null=\"true\"
length=\"200\"/>\n"
+#~ "\n"
+#~ " <list name=\"orders\"\n"
+#~ " inverse=\"true\"\n"
+#~ " cascade=\"save-update\">\n"
+#~ " <key column=\"customerId\"/>\n"
+#~ " <index column=\"orderNumber\"/>\n"
+#~ " <one-to-many class=\"Order\"/>\n"
+#~ " </list>\n"
+#~ "\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Order\" table=\"CustomerOrder\"
lazy=\"true\">\n"
+#~ " <synchronize table=\"LineItem\"/>\n"
+#~ " <synchronize table=\"Product\"/>\n"
+#~ " \n"
+#~ " <composite-id name=\"id\" \n"
+#~ " class=\"Order$Id\">\n"
+#~ " <key-property name=\"customerId\"
length=\"10\"/>\n"
+#~ " <key-property name=\"orderNumber\"/>\n"
+#~ " </composite-id>\n"
+#~ " \n"
+#~ " <property name=\"orderDate\" \n"
+#~ " type=\"calendar_date\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ " \n"
+#~ " <property name=\"total\">\n"
+#~ " <formula>\n"
+#~ " ( select sum(li.quantity*p.price) \n"
+#~ " from LineItem li, Product p \n"
+#~ " where li.productId = p.productId \n"
+#~ " and li.customerId = customerId \n"
+#~ " and li.orderNumber = orderNumber )\n"
+#~ " </formula>\n"
+#~ " </property>\n"
+#~ " \n"
+#~ " <many-to-one name=\"customer\"\n"
+#~ " column=\"customerId\"\n"
+#~ " insert=\"false\"\n"
+#~ " update=\"false\" \n"
+#~ " not-null=\"true\"/>\n"
+#~ " \n"
+#~ " <bag name=\"lineItems\"\n"
+#~ " fetch=\"join\" \n"
+#~ " inverse=\"true\"\n"
+#~ " cascade=\"save-update\">\n"
+#~ " <key>\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " <column name=\"orderNumber\"/>\n"
+#~ " </key>\n"
+#~ " <one-to-many class=\"LineItem\"/>\n"
+#~ " </bag>\n"
+#~ " \n"
+#~ "</class>\n"
+#~ " \n"
+#~ "<class name=\"LineItem\">\n"
+#~ " \n"
+#~ " <composite-id name=\"id\" \n"
+#~ " class=\"LineItem$Id\">\n"
+#~ " <key-property name=\"customerId\"
length=\"10\"/>\n"
+#~ " <key-property name=\"orderNumber\"/>\n"
+#~ " <key-property name=\"productId\"
length=\"10\"/>\n"
+#~ " </composite-id>\n"
+#~ " \n"
+#~ " <property name=\"quantity\"/>\n"
+#~ " \n"
+#~ " <many-to-one name=\"order\"\n"
+#~ " insert=\"false\"\n"
+#~ " update=\"false\" \n"
+#~ " not-null=\"true\">\n"
+#~ " <column name=\"customerId\"/>\n"
+#~ " <column name=\"orderNumber\"/>\n"
+#~ " </many-to-one>\n"
+#~ " \n"
+#~ " <many-to-one name=\"product\"\n"
+#~ " insert=\"false\"\n"
+#~ " update=\"false\" \n"
+#~ " not-null=\"true\"\n"
+#~ " column=\"productId\"/>\n"
+#~ " \n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Product\">\n"
+#~ " <synchronize table=\"LineItem\"/>\n"
+#~ "\n"
+#~ " <id name=\"productId\"\n"
+#~ " length=\"10\">\n"
+#~ " <generator class=\"assigned\"/>\n"
+#~ " </id>\n"
+#~ " \n"
+#~ " <property name=\"description\" \n"
+#~ " not-null=\"true\" \n"
+#~ " length=\"200\"/>\n"
+#~ " <property name=\"price\"
length=\"3\"/>\n"
+#~ " <property name=\"numberAvailable\"/>\n"
+#~ " \n"
+#~ " <property name=\"numberOrdered\">\n"
+#~ " <formula>\n"
+#~ " ( select sum(li.quantity) \n"
+#~ " from LineItem li \n"
+#~ " where li.productId = productId )\n"
+#~ " </formula>\n"
+#~ " </property>\n"
+#~ " \n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"User\"
table=\"`User`\">\n"
+#~ " <composite-id>\n"
+#~ " <key-property name=\"name\"/>\n"
+#~ " <key-property name=\"org\"/>\n"
+#~ " </composite-id>\n"
+#~ " <set name=\"groups\" table=\"UserGroup\">\n"
+#~ " <key>\n"
+#~ " <column name=\"userName\"/>\n"
+#~ " <column name=\"org\"/>\n"
+#~ " </key>\n"
+#~ " <many-to-many class=\"Group\">\n"
+#~ " <column name=\"groupName\"/>\n"
+#~ " <formula>org</formula>\n"
+#~ " </many-to-many>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ " \n"
+#~ "<class name=\"Group\" table=\"`Group`\">\n"
+#~ " <composite-id>\n"
+#~ " <key-property name=\"name\"/>\n"
+#~ " <key-property name=\"org\"/>\n"
+#~ " </composite-id>\n"
+#~ " <property name=\"description\"/>\n"
+#~ " <set name=\"users\" table=\"UserGroup\"
inverse=\"true\">\n"
+#~ " <key>\n"
+#~ " <column name=\"groupName\"/>\n"
+#~ " <column name=\"org\"/>\n"
+#~ " </key>\n"
+#~ " <many-to-many class=\"User\">\n"
+#~ " <column name=\"userName\"/>\n"
+#~ " <formula>org</formula>\n"
+#~ " </many-to-many>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "<class name=\"User\"
table=\"`User`\">\n"
+#~ " <composite-id>\n"
+#~ " <key-property name=\"name\"/>\n"
+#~ " <key-property name=\"org\"/>\n"
+#~ " </composite-id>\n"
+#~ " <set name=\"groups\"
table=\"UserGroup\">\n"
+#~ " <key>\n"
+#~ " <column name=\"userName\"/>\n"
+#~ " <column name=\"org\"/>\n"
+#~ " </key>\n"
+#~ " <many-to-many class=\"Group\">\n"
+#~ " <column name=\"groupName\"/>\n"
+#~ " <formula>org</formula>\n"
+#~ " </many-to-many>\n"
+#~ " </set>\n"
+#~ "</class>\n"
+#~ " \n"
+#~ "<class name=\"Group\"
table=\"`Group`\">\n"
+#~ " <composite-id>\n"
+#~ " <key-property name=\"name\"/>\n"
+#~ " <key-property name=\"org\"/>\n"
+#~ " </composite-id>\n"
+#~ " <property name=\"description\"/>\n"
+#~ " <set name=\"users\" table=\"UserGroup\"
inverse=\"true\">\n"
+#~ " <key>\n"
+#~ " <column name=\"groupName\"/>\n"
+#~ " <column name=\"org\"/>\n"
+#~ " </key>\n"
+#~ " <many-to-many class=\"User\">\n"
+#~ " <column name=\"userName\"/>\n"
+#~ " <formula>org</formula>\n"
+#~ " </many-to-many>\n"
+#~ " </set>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\"\n"
+#~ " discriminator-value=\"P\">\n"
+#~ " \n"
+#~ " <id name=\"id\" \n"
+#~ " column=\"person_id\" \n"
+#~ " unsaved-value=\"0\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " \n"
+#~ " \n"
+#~ " <discriminator \n"
+#~ " type=\"character\">\n"
+#~ " <formula>\n"
+#~ " case \n"
+#~ " when title is not null then 'E' \n"
+#~ " when salesperson is not null then 'C' \n"
+#~ " else 'P' \n"
+#~ " end\n"
+#~ " </formula>\n"
+#~ " </discriminator>\n"
+#~ "\n"
+#~ " <property name=\"name\" \n"
+#~ " not-null=\"true\"\n"
+#~ " length=\"80\"/>\n"
+#~ " \n"
+#~ " <property name=\"sex\" \n"
+#~ " not-null=\"true\"\n"
+#~ " update=\"false\"/>\n"
+#~ " \n"
+#~ " <component name=\"address\">\n"
+#~ " <property name=\"address\"/>\n"
+#~ " <property name=\"zip\"/>\n"
+#~ " <property name=\"country\"/>\n"
+#~ " </component>\n"
+#~ " \n"
+#~ " <subclass name=\"Employee\" \n"
+#~ " discriminator-value=\"E\">\n"
+#~ " <property name=\"title\"\n"
+#~ " length=\"20\"/>\n"
+#~ " <property name=\"salary\"/>\n"
+#~ " <many-to-one name=\"manager\"/>\n"
+#~ " </subclass>\n"
+#~ " \n"
+#~ " <subclass name=\"Customer\" \n"
+#~ " discriminator-value=\"C\">\n"
+#~ " <property name=\"comments\"/>\n"
+#~ " <many-to-one name=\"salesperson\"/>\n"
+#~ " </subclass>\n"
+#~ " \n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\"\n"
+#~ " discriminator-value=\"P\">\n"
+#~ " \n"
+#~ " <id name=\"id\" \n"
+#~ " column=\"person_id\" \n"
+#~ " unsaved-value=\"0\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " \n"
+#~ " \n"
+#~ " <discriminator \n"
+#~ " type=\"character\">\n"
+#~ " <formula>\n"
+#~ " case \n"
+#~ " when title is not null then 'E' \n"
+#~ " when salesperson is not null then 'C' \n"
+#~ " else 'P' \n"
+#~ " end\n"
+#~ " </formula>\n"
+#~ " </discriminator>\n"
+#~ "\n"
+#~ " <property name=\"name\" \n"
+#~ " not-null=\"true\"\n"
+#~ " length=\"80\"/>\n"
+#~ " \n"
+#~ " <property name=\"sex\" \n"
+#~ " not-null=\"true\"\n"
+#~ " update=\"false\"/>\n"
+#~ " \n"
+#~ " <component name=\"address\">\n"
+#~ " <property name=\"address\"/>\n"
+#~ " <property name=\"zip\"/>\n"
+#~ " <property name=\"country\"/>\n"
+#~ " </component>\n"
+#~ " \n"
+#~ " <subclass name=\"Employee\" \n"
+#~ " discriminator-value=\"E\">\n"
+#~ " <property name=\"title\"\n"
+#~ " length=\"20\"/>\n"
+#~ " <property name=\"salary\"/>\n"
+#~ " <many-to-one name=\"manager\"/>\n"
+#~ " </subclass>\n"
+#~ " \n"
+#~ " <subclass name=\"Customer\" \n"
+#~ " discriminator-value=\"C\">\n"
+#~ " <property name=\"comments\"/>\n"
+#~ " <many-to-one name=\"salesperson\"/>\n"
+#~ " </subclass>\n"
+#~ " \n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " \n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"hilo\"/>\n"
+#~ " </id>\n"
+#~ " \n"
+#~ " <property name=\"name\" length=\"100\"/>\n"
+#~ " \n"
+#~ " <one-to-one name=\"address\" \n"
+#~ " property-ref=\"person\"\n"
+#~ " cascade=\"all\"\n"
+#~ " fetch=\"join\"/>\n"
+#~ " \n"
+#~ " <set name=\"accounts\" \n"
+#~ " inverse=\"true\">\n"
+#~ " <key column=\"userId\"\n"
+#~ " property-ref=\"userId\"/>\n"
+#~ " <one-to-many class=\"Account\"/>\n"
+#~ " </set>\n"
+#~ " \n"
+#~ " <property name=\"userId\" length=\"8\"/>\n"
+#~ "\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ "\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"hilo\"/>\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property name=\"address\"
length=\"300\"/>\n"
+#~ " <property name=\"zip\" length=\"5\"/>\n"
+#~ " <property name=\"country\"
length=\"25\"/>\n"
+#~ " <many-to-one name=\"person\" unique=\"true\"
not-null=\"true\"/>\n"
+#~ "\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Account\">\n"
+#~ " <id name=\"accountId\" length=\"32\">\n"
+#~ " <generator class=\"uuid\"/>\n"
+#~ " </id>\n"
+#~ " \n"
+#~ " <many-to-one name=\"user\"\n"
+#~ " column=\"userId\"\n"
+#~ " property-ref=\"userId\"/>\n"
+#~ " \n"
+#~ " <property name=\"type\"
not-null=\"true\"/>\n"
+#~ " \n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " \n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"hilo\"/>\n"
+#~ " </id>\n"
+#~ " \n"
+#~ " <property name=\"name\"
length=\"100\"/>\n"
+#~ " \n"
+#~ " <one-to-one name=\"address\" \n"
+#~ " property-ref=\"person\"\n"
+#~ " cascade=\"all\"\n"
+#~ " fetch=\"join\"/>\n"
+#~ " \n"
+#~ " <set name=\"accounts\" \n"
+#~ " inverse=\"true\">\n"
+#~ " <key column=\"userId\"\n"
+#~ " property-ref=\"userId\"/>\n"
+#~ " <one-to-many class=\"Account\"/>\n"
+#~ " </set>\n"
+#~ " \n"
+#~ " <property name=\"userId\"
length=\"8\"/>\n"
+#~ "\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Address\">\n"
+#~ "\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"hilo\"/>\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property name=\"address\"
length=\"300\"/>\n"
+#~ " <property name=\"zip\"
length=\"5\"/>\n"
+#~ " <property name=\"country\"
length=\"25\"/>\n"
+#~ " <many-to-one name=\"person\" unique=\"true\"
not-null=\"true\"/"
+#~ ">\n"
+#~ "\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Account\">\n"
+#~ " <id name=\"accountId\"
length=\"32\">\n"
+#~ " <generator class=\"uuid\"/>\n"
+#~ " </id>\n"
+#~ " \n"
+#~ " <many-to-one name=\"user\"\n"
+#~ " column=\"userId\"\n"
+#~ " property-ref=\"userId\"/>\n"
+#~ " \n"
+#~ " <property name=\"type\"
not-null=\"true\"/>\n"
+#~ " \n"
+#~ "</class>"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_parentchild.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_parentchild.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_parentchild.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,24 +1,25 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:26\n"
+"PO-Revision-Date: 2010-01-20 15:29+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: example_parentchild.xml:29
#, no-c-format
msgid "Example: Parent/Child"
-msgstr "例:親/子供"
+msgstr "例: 親/子供"
#. Tag: para
-#: example_parentchild.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"One of the first things that new users want to do with Hibernate is to model
"
"a parent/child type relationship. There are two different approaches to "
@@ -34,50 +35,46 @@
"cascades</emphasis> to model a parent/child relationship efficiently and
"
"elegantly."
msgstr ""
-"新規ユーザがHibernateを使ってまず最初に扱うモデルの一つに、親子型のモデル化が"
-"あります。 このモデル化には二つのアプローチが存在します。とりわけ新規ユーザに"
-"とって、 さまざまな理由から最も便利だと思われるアプローチは、<literal>親</"
-"literal> から <literal>子供</literal> への
<literal><one-to-many></"
+"新規ユーザーが Hibernate を使ってまず最初に扱うモデルの一つに、親子型のモデル"
+"化があります。このモデル化には二つのアプローチが存在します。とりわけ新規ユー"
+"ザーにとって、さまざまな理由から最も便利だと思われるアプローチは、 <literal>"
+"親</literal> から <literal>子供</literal> への
<literal><one-to-many></"
"literal> 関連により <literal>親</literal> と
<literal>子供</literal> の両方を"
-"エンティティクラスとしてモデリングする方法です (もう一つの方法は、<literal>"
+"エンティティクラスとしてモデリングする方法です(もう一つの方法は、 <literal>"
"子供</literal> を
<literal><composite-element></literal> として定義する"
-"ものです)。 これで(Hibernateにおける)一対多関連のデフォルトのセマンティク"
-"スが、通常の複合要素のマッピングよりも、 親子関係のセマンティクスから遠いこと"
-"がわかります。 それでは親子関係を効率的かつエレガントにモデリングするため"
-"に、 <emphasis>カスケード操作を使った双方向一対多関連</emphasis> の扱い方を説"
-"明します。これはまったく難しいものではありません。"
+"ものです)。これで( Hibernate における)一対多関連のデフォルトのセマンティク"
+"スが、通常の複合要素のマッピングよりも、親子関係のセマンティクスから遠いこと"
+"がわかります。それでは親子関係を効率的かつエレガントにモデリングするために、 "
+"<emphasis>カスケード操作を使った双方向一対多関連</emphasis> の扱い方を説明し"
+"ます。これはまったく難しいものではありません。"
#. Tag: title
-#: example_parentchild.xml:45
#, no-c-format
msgid "A note about collections"
msgstr "コレクションに関する注意"
#. Tag: para
-#: example_parentchild.xml:47
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate collections are considered to be a logical part of their owning "
"entity and not of the contained entities. Be aware that this is a critical "
"distinction that has the following consequences:"
msgstr ""
-"Hibernateのコレクションは自身のエンティティの論理的な部分と考えられ、 決して"
-"包含するエンティティのものではありません。これは致命的な違いです! これは以下"
+"Hibernate のコレクションは自身のエンティティの論理的な部分と考えられ、決して"
+"包含するエンティティのものではありません。これは致命的な違いです。これは以下"
"のような結果になります:"
#. Tag: para
-#: example_parentchild.xml:54
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"When you remove/add an object from/to a collection, the version number of "
"the collection owner is incremented."
msgstr ""
-"オブジェクトをコレクションから削除、またはコレクションに追加するとき、 コレク"
+"オブジェクトをコレクションから削除、またはコレクションに追加するとき、コレク"
"ションのオーナーのバージョン番号はインクリメントされます。"
#. Tag: para
-#: example_parentchild.xml:60
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If an object that was removed from a collection is an instance of a value "
"type (e.g. a composite element), that object will cease to be persistent and
"
@@ -85,14 +82,13 @@
"value type instance to the collection will cause its state to be immediately
"
"persistent."
msgstr ""
-"もしコレクションから削除されたオブジェクトが値型のインスタンス (例えばコンポ"
-"ジットエレメント)だったならば、そのオブジェクトは永続的ではなくなり、 その状"
-"態はデータベースから完全に削除されます。 同じように、値型のインスタンスをコレ"
+"もしコレクションから削除されたオブジェクトが値型のインスタンス(例えばコンポ"
+"ジットエレメント) だったならば、そのオブジェクトは永続的ではなくなり、その状"
+"態はデータベースから完全に削除されます。同じように、値型のインスタンスをコレ"
"クションに追加すると、その状態はすぐに永続的になります。"
#. Tag: para
-#: example_parentchild.xml:68
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Conversely, 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 behavior is "
@@ -100,15 +96,14 @@
"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."
msgstr ""
-"一方、もしエンティティがコレクション(一対多または多対多関連)から削除されて"
-"も、 デフォルトではそれは削除されません。この動作は完全に一貫しています。 す"
-"なわち、他のエンティティの内部状態を変更しても、関連するエンティティが消滅す"
-"べきではないということです。 同様に、エンティティがコレクションに追加されて"
-"も、デフォルトではそのエンティティは永続的にはなりません。"
+"一方、もしエンティティがコレクション(一対多または多対多関連) から削除されて"
+"も、デフォルトではそれは削除されません。この動作は完全に一貫しています。すな"
+"わち、他のエンティティの内部状態を変更しても、関連するエンティティが消滅すべ"
+"きではないということです。同様に、エンティティがコレクションに追加されても、"
+"デフォルトではそのエンティティは永続的にはなりません。"
#. Tag: para
-#: example_parentchild.xml:78
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Adding an entity to a collection, by default, merely creates a link between "
"the two entities. Removing the entity will remove the link. This is "
@@ -117,19 +112,17 @@
"bound to the life cycle of the parent."
msgstr ""
"その代わりに、デフォルトの動作では、エンティティをコレクションに追加すると単"
-"に二つのエンティティ間のリンクを作成し、 一方エンティティを削除するとリンクも"
-"削除します。これはすべてのケースにおいて非常に適切です。 これが適切でないのは"
+"に二つのエンティティ間のリンクを作成し、一方エンティティを削除するとリンクも"
+"削除します。これはすべてのケースにおいて非常に適切です。これが適切でないのは"
"親/子関係の場合です。この場合子供の生存は親のライフサイクルに制限されるからで"
"す。"
#. Tag: title
-#: example_parentchild.xml:88
#, no-c-format
msgid "Bidirectional one-to-many"
msgstr "双方向一対多"
#. Tag: para
-#: example_parentchild.xml:90
#, no-c-format
msgid ""
"Suppose we start with a simple
<literal><one-to-many></literal> "
@@ -138,90 +131,52 @@
"<literal>Parent</literal> から <literal>Child</literal> への単純な
"
"<literal><one-to-many></literal> 関連から始めるとします。"
-#. Tag: programlisting
-#: example_parentchild.xml:95
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[<set name=\"children\">\n"
-" <key column=\"parent_id\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-"</set>]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:97
-#, fuzzy, no-c-format
msgid "If we were to execute the following code:"
msgstr "以下のコードを実行すると、"
-#. Tag: programlisting
-#: example_parentchild.xml:101
-#, no-c-format
-msgid ""
-"<![CDATA[Parent p = .....;\n"
-"Child c = new Child();\n"
-"p.getChildren().add(c);\n"
-"session.save(c);\n"
-"session.flush();]]>"
-msgstr ""
-
#. Tag: para
-#: example_parentchild.xml:103
#, no-c-format
msgid "Hibernate would issue two SQL statements:"
-msgstr "Hibernateは二つのSQL文を発行します:"
+msgstr "Hibernate は二つの SQL 文を発行します:"
#. Tag: para
-#: example_parentchild.xml:109
#, no-c-format
msgid ""
"an <literal>INSERT</literal> to create the record for
<literal>c</literal>"
msgstr ""
-"<literal>c</literal>に対するレコードを生成する<literal>INSERT</literal>"
+"<literal>c</literal> に対するレコードを生成する
<literal>INSERT</literal>"
#. Tag: para
-#: example_parentchild.xml:112
#, no-c-format
msgid ""
"an <literal>UPDATE</literal> to create the link from
<literal>p</literal> to "
"<literal>c</literal>"
msgstr ""
-"<literal>p</literal>から<literal>c</literal>へのリンクを作成する"
+"<literal>p</literal> から <literal>c</literal> へのリンクを作成する
"
"<literal>UPDATE</literal>"
#. Tag: para
-#: example_parentchild.xml:119
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This is not only inefficient, but also violates any <literal>NOT
NULL</"
"literal> constraint on the <literal>parent_id</literal> column. You
can fix "
"the nullability constraint violation by specifying
<literal>not-null=\"true"
"\"</literal> in the collection mapping:"
msgstr ""
-"これは非効率的なだけではなく、<literal>parent_id</literal> カラムにおいて "
-"<literal>NOT NULL</literal> 制約に違反します。 コレクションのマッピングで "
-"<literal>not-null=\"true\"</literal>
と指定することで、null制約違反を解決する"
-"ことができます:"
+"これは非効率的なだけではなく、 <literal>parent_id</literal> カラムにおいて "
+"<literal>NOT NULL</literal> 制約に違反します。コレクションのマッピングで "
+"<literal>not-null=\"true\"</literal> と指定することで、 null
制約違反を解決す"
+"ることができます:"
-#. Tag: programlisting
-#: example_parentchild.xml:125
-#, no-c-format
-msgid ""
-"<![CDATA[<set name=\"children\">\n"
-" <key column=\"parent_id\"
not-null=\"true\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-"</set>]]>"
-msgstr ""
-
#. Tag: para
-#: example_parentchild.xml:127
#, no-c-format
msgid "However, this is not the recommended solution."
msgstr "しかしこの解決策は推奨できません。"
#. Tag: para
-#: example_parentchild.xml:130
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The underlying cause of this behavior is that the link (the foreign key "
"<literal>parent_id</literal>) from <literal>p</literal> to
<literal>c</"
@@ -229,24 +184,15 @@
"object and is therefore not created in the <literal>INSERT</literal>.
The "
"solution is to make the link part of the <literal>Child</literal>
mapping."
msgstr ""
-"この動作の根本的な原因は、<literal>p</literal> から <literal>c</literal>
への"
-"リンク (外部キー <literal>parent_id</literal>)は
<literal>Child</literal> オ"
-"ブジェクトの状態の一部とは考えられず、 そのため <literal>INSERT</literal> に"
-"よってリンクが生成されないことです。 ですから、解決策はリンクをChildマッピン"
+"この動作の根本的な原因は、 <literal>p</literal> から <literal>c</literal>
へ"
+"のリンク(外部キー <literal>parent_id</literal>) は
<literal>Child</literal> "
+"オブジェクトの状態の一部とは考えられず、そのため <literal>INSERT</literal> に"
+"よってリンクが生成されないことです。ですから、解決策はリンクを Child マッピン"
"グの一部にすることです。"
-#. Tag: programlisting
-#: example_parentchild.xml:137
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<many-to-one name=\"parent\"
column=\"parent_id\" not-null=\"true\"/"
-">]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:139
-#, fuzzy, no-c-format
-msgid ""
"You also need to add the <literal>parent</literal> property to the
"
"<literal>Child</literal> class."
msgstr ""
@@ -254,101 +200,51 @@
"を追加する必要があります。)"
#. Tag: para
-#: example_parentchild.xml:143
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"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 to do this:"
msgstr ""
"それでは <literal>Child</literal> エンティティがリンクの状態を制御するように"
-"なったので、 コレクションがリンクを更新しないようにしましょう。それには "
+"なったので、コレクションがリンクを更新しないようにしましょう。それには "
"<literal>inverse</literal> 属性を使います。"
-#. Tag: programlisting
-#: example_parentchild.xml:148
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[<set name=\"children\"
inverse=\"true\">\n"
-" <key column=\"parent_id\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-"</set>]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:150
-#, fuzzy, no-c-format
msgid "The following code would be used to add a new
<literal>Child</literal>:"
msgstr ""
"以下のコードを使えば、新しい <literal>Child</literal> を追加することができま"
"す。"
-#. Tag: programlisting
-#: example_parentchild.xml:154
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
-"Child c = new Child();\n"
-"c.setParent(p);\n"
-"p.getChildren().add(c);\n"
-"session.save(c);\n"
-"session.flush();]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:156
-#, fuzzy, no-c-format
msgid "Only one SQL <literal>INSERT</literal> would now be
issued."
msgstr ""
-"これにより、SQLの <literal>INSERT</literal> 文が一つだけが発行されるようにな"
-"りました!"
+"これにより、 SQL の <literal>INSERT</literal> 文が一つだけが発行されるように"
+"なりました。"
#. Tag: para
-#: example_parentchild.xml:160
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You could also create an <literal>addChild()</literal> method of
"
"<literal>Parent</literal>."
msgstr ""
-"もう少し強化するには、<literal>Parent</literal> の
<literal>addChild()</"
+"もう少し強化するには、 <literal>Parent</literal> の
<literal>addChild()</"
"literal> メソッドを作成します。"
-#. Tag: programlisting
-#: example_parentchild.xml:165
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[public void addChild(Child c) {\n"
-" c.setParent(this);\n"
-" children.add(c);\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:167
-#, fuzzy, no-c-format
msgid "The code to add a <literal>Child</literal> looks like
this:"
msgstr "<literal>Child</literal> を追加するコードはこのようになります。"
-#. Tag: programlisting
-#: example_parentchild.xml:171
-#, no-c-format
-msgid ""
-"<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
-"Child c = new Child();\n"
-"p.addChild(c);\n"
-"session.save(c);\n"
-"session.flush();]]>"
-msgstr ""
-
#. Tag: title
-#: example_parentchild.xml:176
#, no-c-format
msgid "Cascading life cycle"
msgstr "ライフサイクルのカスケード"
#. Tag: para
-#: example_parentchild.xml:178
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can address the frustrations of the explicit call to
<literal>save()</"
"literal> by using cascades."
@@ -356,145 +252,75 @@
"明示的に <literal>save()</literal> をコールするのはまだ煩わしいものです。これ"
"をカスケードを使って対処します。"
-#. Tag: programlisting
-#: example_parentchild.xml:183
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[<set name=\"children\" inverse=\"true\"
cascade=\"all\">\n"
-" <key column=\"parent_id\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-"</set>]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:185
-#, fuzzy, no-c-format
msgid "This simplifies the code above to:"
msgstr "これにより先ほどのコードをこのように単純化します"
-#. Tag: programlisting
-#: example_parentchild.xml:189
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
-"Child c = new Child();\n"
-"p.addChild(c);\n"
-"session.flush();]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:191
-#, fuzzy, no-c-format
-msgid ""
"Similarly, we do not 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."
msgstr ""
"同様に <literal>Parent</literal> を保存または削除するときに、子供を一つ一つ取"
-"り出して扱う必要はありません。 以下のコードは <literal>p</literal> を削除し、"
+"り出して扱う必要はありません。以下のコードは <literal>p</literal> を削除し、"
"そしてデータベースからその子供をすべて削除します。"
-#. Tag: programlisting
-#: example_parentchild.xml:196
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
-"session.delete(p);\n"
-"session.flush();]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:198
-#, fuzzy, no-c-format
msgid "However, the following code:"
msgstr "しかしこのコードは"
-#. Tag: programlisting
-#: example_parentchild.xml:202
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
-"Child c = (Child) p.getChildren().iterator().next();\n"
-"p.getChildren().remove(c);\n"
-"c.setParent(null);\n"
-"session.flush();]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:204
-#, fuzzy, no-c-format
-msgid ""
"will not remove <literal>c</literal> from the database. In this case,
it "
"will only remove the link to <literal>p</literal> and cause a
<literal>NOT "
"NULL</literal> constraint violation. You need to explicitly
<literal>delete()"
"</literal> the <literal>Child</literal>."
msgstr ""
-"データベースから <literal>c</literal> を削除しません。<literal>p</literal>
へ"
-"のリンクを削除する (そしてこのケースでは <literal>NOT NULL</literal> 制約違"
+"データベースから <literal>c</literal> を削除しません。 <literal>p</literal>
"
+"へのリンクを削除する(そしてこのケースでは <literal>NOT NULL</literal> 制約違"
"反を引き起こす)だけです。 <literal>Child</literal> の
<literal>delete()</"
"literal> を明示する必要があります。"
-#. Tag: programlisting
-#: example_parentchild.xml:210
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
-"Child c = (Child) p.getChildren().iterator().next();\n"
-"p.getChildren().remove(c);\n"
-"session.delete(c);\n"
-"session.flush();]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:212
-#, fuzzy, no-c-format
-msgid ""
"In our case, a <literal>Child</literal> cannot exist without its
parent. So "
"if we remove a <literal>Child</literal> from the collection, we do want
it "
"to be deleted. To do this, we must use
<literal>cascade=\"all-delete-orphan"
"\"</literal>."
msgstr ""
"今このケースでは実際に <literal>Child</literal> が親なしでは存在できないよう"
-"になりました。 そのため、もしコレクションから <literal>Child</literal> を取り"
-"除く場合、これも削除したいです。 そのためには <literal>cascade=\"all-delete-"
-"orphan\"</literal> を使わなければなりません。"
+"になりました。そのため、もしコレクションから <literal>Child</literal> を取り"
+"除く場合、これも削除します。そのためには <literal>cascade=\"all-delete-orphan"
+"\"</literal> を使わなければなりません。"
-#. Tag: programlisting
-#: example_parentchild.xml:218
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<set name=\"children\" inverse=\"true\"
cascade=\"all-delete-orphan"
-"\">\n"
-" <key column=\"parent_id\"/>\n"
-" <one-to-many class=\"Child\"/>\n"
-"</set>]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:220
-#, fuzzy, no-c-format
-msgid ""
"Even though the collection mapping specifies
<literal>inverse=\"true\"</"
"literal>, cascades are still processed by iterating the collection elements.
"
"If you need 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>."
msgstr ""
-"注意:コレクションのマッピングで <literal>inverse=\"true\"</literal>
と指定し"
-"ても、 コレクションの要素のイテレーションによって、依然カスケードが実行されま"
-"す。 そのためもしカスケードでオブジェクトをセーブ、削除、更新する必要があるな"
-"ら、 それをコレクションに追加しなければなりません。単に <literal>setParent()"
+"注記:コレクションのマッピングで <literal>inverse=\"true\"</literal>
と指定し"
+"ても、コレクションの要素のイテレーションによって、依然カスケードが実行されま"
+"す。そのため、もしカスケードでオブジェクトをセーブ、削除、更新する必要がある"
+"なら、それをコレクションに追加しなければなりません。単に <literal>setParent()"
"</literal> を呼ぶだけでは不十分です。"
#. Tag: title
-#: example_parentchild.xml:230
#, no-c-format
msgid "Cascades and <literal>unsaved-value</literal>"
-msgstr "カスケードと <literal>unsaved-value</literal>"
+msgstr "カスケードと unsaved-value"
#. Tag: para
-#: example_parentchild.xml:232
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Suppose we loaded up a <literal>Parent</literal> in one
<literal>Session</"
"literal>, made some changes in a UI action and wanted to persist these "
@@ -506,48 +332,34 @@
"literal> have generated 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 "
+"\"objectstate-saveorupdate\" />.) <emphasis>In Hibernate3, it is
no longer "
"necessary to specify an <literal>unsaved-value</literal>
explicitly.</"
"emphasis>"
msgstr ""
-"<literal>Parent</literal> が、ある <literal>Session</literal>
でロードされ、"
-"UIのアクションで変更が加えられ、 <literal>update()</literal> を呼んでこの変更"
-"を新しいセッションで永続化したいとします。 <literal>Parent</literal> が子供の"
-"コレクションを持ち、カスケード更新が有効になっているため、 Hibernateはどの子"
-"供が新しくインスタンス化されたか、どれがデータベースの既存の行に相当するのか"
-"を知る必要があります。 <literal>Parent</literal> と
<literal>Child</literal> "
-"の両方が <literal>java.lang.Long</literal> 型の識別プロパティを生成したとしま"
-"しょう。 Hibernateはどの子供が新しいものかを決定するために識別プロパティの値"
-"を使います(versionやtimestampプロパティも使えます。 <xref linkend="
-"\"manipulatingdata-updating-detached\"/> 参照)。Hibernate3になって、
明示的"
-"に <literal>unsaved-value</literal> を指定する必要はなくなりました。"
+"<literal>Parent</literal> が、ある <literal>Session</literal>
でロードされ、 "
+"UI のアクションで変更が加えられ、 <literal>update()</literal> を呼んでこの変"
+"更を新しいセッションで永続化したいとします。 <literal>Parent</literal> が子供"
+"のコレクションを持ち、カスケード更新が有効になっているため、 Hibernate はどの"
+"子供が新しくインスタンス化されたか、どれがデータベースの既存の行に相当するの"
+"かを知る必要があります。 <literal>Parent</literal> と
<literal>Child</"
+"literal> の両方が <literal>Long</literal> 型の識別プロパティを生成したとしま"
+"しょう。 Hibernate はどの子供が新しいものかを決定するために識別プロパティの値"
+"を使います (<xref linkend=\"objectstate-saveorupdate\"/> 参照)。 "
+"<emphasis>Hibernate3 になって、明示的に <literal>unsaved-value</literal>
を指"
+"定する必要はなくなりました。</emphasis>"
#. Tag: para
-#: example_parentchild.xml:244
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following code will update <literal>parent</literal> and
<literal>child</"
"literal> and insert <literal>newChild</literal>:"
msgstr ""
"以下のコードは <literal>parent</literal> と
<literal>child</literal> を更新"
-"し、<literal>newChild</literal> を挿入します。"
+"し、 <literal>newChild</literal> を挿入します。"
-#. Tag: programlisting
-#: example_parentchild.xml:249
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[//parent and child were both loaded in a previous session\n"
-"parent.addChild(child);\n"
-"Child newChild = new Child();\n"
-"parent.addChild(newChild);\n"
-"session.update(parent);\n"
-"session.flush();]]>"
-msgstr ""
-
-#. Tag: para
-#: example_parentchild.xml:251
-#, fuzzy, no-c-format
-msgid ""
"This may be suitable for the case of a generated identifier, but what about "
"assigned identifiers and composite identifiers? This is more difficult, "
"since Hibernate cannot use the identifier property to distinguish between a "
@@ -557,34 +369,31 @@
"cache or, worst case, the database, to see if the row exists."
msgstr ""
"これらは生成された識別子の場合には非常に良いのですが、割り当てられた識別子と"
-"複合識別子の場合はどうでしょうか? これはHibernateが、(ユーザにより割り当て"
-"られた識別子を持つ)新しくインスタンス化されたオブジェクトと、 以前のSession"
-"でロードされたオブジェクトを区別できないため、より難しいです。 この場合、"
-"Hibernateはタイムスタンプかバージョンのプロパティのどちらかを使うか、二次"
-"キャッシュに問い合わせます。 最悪の場合、行が存在するかどうかデータベースを見"
-"ます。"
+"複合識別子の場合はどうでしょうか?これは Hibernate が、(ユーザーにより割り当"
+"てられた識別子を持つ)新しくインスタンス化されたオブジェクトと、以前の "
+"Session でロードされたオブジェクトを区別できないため、より難しいです。この場"
+"合、 Hibernate はタイムスタンプかバージョンのプロパティのどちらかを使うか、二"
+"次キャッシュに問い合わせます。最悪の場合、行が存在するかどうかデータベースを"
+"見ます。"
#. Tag: title
-#: example_parentchild.xml:284
#, no-c-format
msgid "Conclusion"
msgstr "結論"
#. Tag: para
-#: example_parentchild.xml:286
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The sections we have just covered can be a bit confusing. However, in "
"practice, it all works out nicely. Most Hibernate applications use the "
"parent/child pattern in many places."
msgstr ""
"ここではかなりの量を要約したので、最初の頃は混乱しているように思われるかもし"
-"れません。 しかし実際は、すべて非常に良く動作します。ほとんどのHibernateアプ"
+"れません。しかし実際は、すべて非常に良く動作します。ほとんどの Hibernate アプ"
"リケーションでは、多くの場面で親子パターンを使用します。"
#. Tag: para
-#: example_parentchild.xml:291
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"We mentioned an alternative in the first paragraph. None of the above issues
"
"exist in the case of
<literal><composite-element></literal> mappings, "
@@ -594,8 +403,200 @@
"of any entity other than the unique parent."
msgstr ""
"最初の段落で代替方法について触れました。上記のような問題は <literal><"
-"composite-element></literal> マッピングの場合は存在せず、 にもかかわらずそ"
-"れは確かに親子関係のセマンティクスを持ちます。 しかし残念ながら、複合要素クラ"
-"スには二つの大きな制限があります: 1つは複合要素はコレクションを持つことがで"
-"きないことです。もうひとつは、 ユニークな親ではないエンティティの子供となるべ"
+"composite-element></literal> マッピングの場合は存在せず、にもかかわらずそ"
+"れは確かに親子関係のセマンティクスを持ちます。しかし残念ながら、複合要素クラ"
+"スには2つの大きな制限があります: 1つは複合要素はコレクションを持つことがで"
+"きないことです。もうひとつは、ユニークな親ではないエンティティの子供となるべ"
"きではないということです"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set name=\"children\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ "</set>]]>"
+#~ msgstr ""
+#~ "<set name=\"children\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ "</set>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Parent p = .....;\n"
+#~ "Child c = new Child();\n"
+#~ "p.getChildren().add(c);\n"
+#~ "session.save(c);\n"
+#~ "session.flush();]]>"
+#~ msgstr ""
+#~ "Parent p = .....;\n"
+#~ "Child c = new Child();\n"
+#~ "p.getChildren().add(c);\n"
+#~ "session.save(c);\n"
+#~ "session.flush();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set name=\"children\">\n"
+#~ " <key column=\"parent_id\"
not-null=\"true\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ "</set>]]>"
+#~ msgstr ""
+#~ "<set name=\"children\">\n"
+#~ " <key column=\"parent_id\"
not-null=\"true\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ "</set>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"parent\"
column=\"parent_id\" not-null=\"true"
+#~ "\"/>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"parent\" column=\"parent_id\"
not-null=\"true\"/"
+#~ ">"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set name=\"children\"
inverse=\"true\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ "</set>]]>"
+#~ msgstr ""
+#~ "<set name=\"children\"
inverse=\"true\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ "</set>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "Child c = new Child();\n"
+#~ "c.setParent(p);\n"
+#~ "p.getChildren().add(c);\n"
+#~ "session.save(c);\n"
+#~ "session.flush();]]>"
+#~ msgstr ""
+#~ "Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "Child c = new Child();\n"
+#~ "c.setParent(p);\n"
+#~ "p.getChildren().add(c);\n"
+#~ "session.save(c);\n"
+#~ "session.flush();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[public void addChild(Child c) {\n"
+#~ " c.setParent(this);\n"
+#~ " children.add(c);\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "public void addChild(Child c) {\n"
+#~ " c.setParent(this);\n"
+#~ " children.add(c);\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "Child c = new Child();\n"
+#~ "p.addChild(c);\n"
+#~ "session.save(c);\n"
+#~ "session.flush();]]>"
+#~ msgstr ""
+#~ "Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "Child c = new Child();\n"
+#~ "p.addChild(c);\n"
+#~ "session.save(c);\n"
+#~ "session.flush();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set name=\"children\" inverse=\"true\"
cascade=\"all\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ "</set>]]>"
+#~ msgstr ""
+#~ "<set name=\"children\" inverse=\"true\"
cascade=\"all\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ "</set>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "Child c = new Child();\n"
+#~ "p.addChild(c);\n"
+#~ "session.flush();]]>"
+#~ msgstr ""
+#~ "Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "Child c = new Child();\n"
+#~ "p.addChild(c);\n"
+#~ "session.flush();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "session.delete(p);\n"
+#~ "session.flush();]]>"
+#~ msgstr ""
+#~ "Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "session.delete(p);\n"
+#~ "session.flush();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "Child c = (Child) p.getChildren().iterator().next();\n"
+#~ "p.getChildren().remove(c);\n"
+#~ "c.setParent(null);\n"
+#~ "session.flush();]]>"
+#~ msgstr ""
+#~ "Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "Child c = (Child) p.getChildren().iterator().next();\n"
+#~ "p.getChildren().remove(c);\n"
+#~ "c.setParent(null);\n"
+#~ "session.flush();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "Child c = (Child) p.getChildren().iterator().next();\n"
+#~ "p.getChildren().remove(c);\n"
+#~ "session.delete(c);\n"
+#~ "session.flush();]]>"
+#~ msgstr ""
+#~ "Parent p = (Parent) session.load(Parent.class, pid);\n"
+#~ "Child c = (Child) p.getChildren().iterator().next();\n"
+#~ "p.getChildren().remove(c);\n"
+#~ "session.delete(c);\n"
+#~ "session.flush();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set name=\"children\" inverse=\"true\"
cascade=\"all-delete-"
+#~ "orphan\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ "</set>]]>"
+#~ msgstr ""
+#~ "<set name=\"children\" inverse=\"true\"
cascade=\"all-delete-orphan"
+#~ "\">\n"
+#~ " <key column=\"parent_id\"/>\n"
+#~ " <one-to-many class=\"Child\"/>\n"
+#~ "</set>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[//parent and child were both loaded in a previous session\n"
+#~ "parent.addChild(child);\n"
+#~ "Child newChild = new Child();\n"
+#~ "parent.addChild(newChild);\n"
+#~ "session.update(parent);\n"
+#~ "session.flush();]]>"
+#~ msgstr ""
+#~ "//parent and child were both loaded in a previous session\n"
+#~ "parent.addChild(child);\n"
+#~ "Child newChild = new Child();\n"
+#~ "parent.addChild(newChild);\n"
+#~ "session.update(parent);\n"
+#~ "session.flush();"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_weblog.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_weblog.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/example_weblog.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,484 +1,863 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:26\n"
+"PO-Revision-Date: 2010-01-20 15:34+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: example_weblog.xml:29
#, no-c-format
msgid "Example: Weblog Application"
-msgstr "例: Weblogアプリケーション"
+msgstr "例: Weblog アプリケーション"
#. Tag: title
-#: example_weblog.xml:32
#, no-c-format
msgid "Persistent Classes"
msgstr "永続クラス"
#. Tag: para
-#: example_weblog.xml:34
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The persistent classes here 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:"
msgstr ""
-"永続クラスがウェブログと、ウェブログに掲示された項目を表しています。 それらは"
-"通常の親子関係としてモデリングされますが、 setではなく順序を持ったbagを使用す"
-"ることにします。"
+"永続クラスがウェブログと、ウェブログに掲示された項目を表しています。それらは"
+"通常の親子関係としてモデリングされますが、 set ではなく順序を持った bag を使"
+"用することにします。"
-#. Tag: programlisting
-#: example_weblog.xml:40
-#, no-c-format
-msgid ""
-"<![CDATA[package eg;\n"
-"\n"
-"import java.util.List;\n"
-"\n"
-"public class Blog {\n"
-" private Long _id;\n"
-" private String _name;\n"
-" private List _items;\n"
-"\n"
-" public Long getId() {\n"
-" return _id;\n"
-" }\n"
-" public List getItems() {\n"
-" return _items;\n"
-" }\n"
-" public String getName() {\n"
-" return _name;\n"
-" }\n"
-" public void setId(Long long1) {\n"
-" _id = long1;\n"
-" }\n"
-" public void setItems(List list) {\n"
-" _items = list;\n"
-" }\n"
-" public void setName(String string) {\n"
-" _name = string;\n"
-" }\n"
-"}]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: example_weblog.xml:42
-#, no-c-format
-msgid ""
-"<![CDATA[package eg;\n"
-"\n"
-"import java.text.DateFormat;\n"
-"import java.util.Calendar;\n"
-"\n"
-"public class BlogItem {\n"
-" private Long _id;\n"
-" private Calendar _datetime;\n"
-" private String _text;\n"
-" private String _title;\n"
-" private Blog _blog;\n"
-"\n"
-" public Blog getBlog() {\n"
-" return _blog;\n"
-" }\n"
-" public Calendar getDatetime() {\n"
-" return _datetime;\n"
-" }\n"
-" public Long getId() {\n"
-" return _id;\n"
-" }\n"
-" public String getText() {\n"
-" return _text;\n"
-" }\n"
-" public String getTitle() {\n"
-" return _title;\n"
-" }\n"
-" public void setBlog(Blog blog) {\n"
-" _blog = blog;\n"
-" }\n"
-" public void setDatetime(Calendar calendar) {\n"
-" _datetime = calendar;\n"
-" }\n"
-" public void setId(Long long1) {\n"
-" _id = long1;\n"
-" }\n"
-" public void setText(String string) {\n"
-" _text = string;\n"
-" }\n"
-" public void setTitle(String string) {\n"
-" _title = string;\n"
-" }\n"
-"}]]>"
-msgstr ""
-
#. Tag: title
-#: example_weblog.xml:47
#, no-c-format
msgid "Hibernate Mappings"
-msgstr "Hibernateのマッピング"
+msgstr "Hibernate のマッピング"
#. Tag: para
-#: example_weblog.xml:49
-#, fuzzy, no-c-format
+#, no-c-format
msgid "The XML mappings are now straightforward. For example:"
-msgstr "XMLマッピングは、今ではとても簡単なはずです。"
+msgstr "XML マッピングは、今ではとても簡単なはずです。"
-#. Tag: programlisting
-#: example_weblog.xml:53
-#, no-c-format
-msgid ""
-"<![CDATA[<?xml version=\"1.0\"?>\n"
-"<!DOCTYPE hibernate-mapping PUBLIC\n"
-" \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
-"
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
-"\n"
-"<hibernate-mapping package=\"eg\">\n"
-"\n"
-" <class\n"
-" name=\"Blog\"\n"
-" table=\"BLOGS\">\n"
-"\n"
-" <id\n"
-" name=\"id\"\n"
-" column=\"BLOG_ID\">\n"
-"\n"
-" <generator class=\"native\"/>\n"
-"\n"
-" </id>\n"
-"\n"
-" <property\n"
-" name=\"name\"\n"
-" column=\"NAME\"\n"
-" not-null=\"true\"\n"
-" unique=\"true\"/>\n"
-"\n"
-" <bag\n"
-" name=\"items\"\n"
-" inverse=\"true\"\n"
-" order-by=\"DATE_TIME\"\n"
-" cascade=\"all\">\n"
-"\n"
-" <key column=\"BLOG_ID\"/>\n"
-" <one-to-many class=\"BlogItem\"/>\n"
-"\n"
-" </bag>\n"
-"\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: example_weblog.xml:55
-#, no-c-format
-msgid ""
-"<![CDATA[<?xml version=\"1.0\"?>\n"
-"<!DOCTYPE hibernate-mapping PUBLIC\n"
-" \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
-"
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
-"\n"
-"<hibernate-mapping package=\"eg\">\n"
-"\n"
-" <class\n"
-" name=\"BlogItem\"\n"
-" table=\"BLOG_ITEMS\"\n"
-" dynamic-update=\"true\">\n"
-"\n"
-" <id\n"
-" name=\"id\"\n"
-" column=\"BLOG_ITEM_ID\">\n"
-"\n"
-" <generator class=\"native\"/>\n"
-"\n"
-" </id>\n"
-"\n"
-" <property\n"
-" name=\"title\"\n"
-" column=\"TITLE\"\n"
-" not-null=\"true\"/>\n"
-"\n"
-" <property\n"
-" name=\"text\"\n"
-" column=\"TEXT\"\n"
-" not-null=\"true\"/>\n"
-"\n"
-" <property\n"
-" name=\"datetime\"\n"
-" column=\"DATE_TIME\"\n"
-" not-null=\"true\"/>\n"
-"\n"
-" <many-to-one\n"
-" name=\"blog\"\n"
-" column=\"BLOG_ID\"\n"
-" not-null=\"true\"/>\n"
-"\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
#. Tag: title
-#: example_weblog.xml:60
#, no-c-format
msgid "Hibernate Code"
-msgstr "Hibernateのコード"
+msgstr "Hibernate のコード"
#. Tag: para
-#: example_weblog.xml:62
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following class demonstrates some of the kinds of things we can do with "
"these classes using Hibernate:"
msgstr ""
-"以下のクラスは、 Hibernateでこれらのクラスを使ってできることをいくつか示して"
-"います。"
+"以下のクラスは、 Hibernate でこれらのクラスを使ってできるいくつかのことを示し"
+"ています。"
-#. Tag: programlisting
-#: example_weblog.xml:67
-#, no-c-format
-msgid ""
-"<![CDATA[package eg;\n"
-"\n"
-"import java.util.ArrayList;\n"
-"import java.util.Calendar;\n"
-"import java.util.Iterator;\n"
-"import java.util.List;\n"
-"\n"
-"import org.hibernate.HibernateException;\n"
-"import org.hibernate.Query;\n"
-"import org.hibernate.Session;\n"
-"import org.hibernate.SessionFactory;\n"
-"import org.hibernate.Transaction;\n"
-"import org.hibernate.cfg.Configuration;\n"
-"import org.hibernate.tool.hbm2ddl.SchemaExport;\n"
-"\n"
-"public class BlogMain {\n"
-" \n"
-" private SessionFactory _sessions;\n"
-" \n"
-" public void configure() throws HibernateException {\n"
-" _sessions = new Configuration()\n"
-" .addClass(Blog.class)\n"
-" .addClass(BlogItem.class)\n"
-" .buildSessionFactory();\n"
-" }\n"
-" \n"
-" public void exportTables() throws HibernateException {\n"
-" Configuration cfg = new Configuration()\n"
-" .addClass(Blog.class)\n"
-" .addClass(BlogItem.class);\n"
-" new SchemaExport(cfg).create(true, true);\n"
-" }\n"
-" \n"
-" public Blog createBlog(String name) throws HibernateException {\n"
-" \n"
-" Blog blog = new Blog();\n"
-" blog.setName(name);\n"
-" blog.setItems( new ArrayList() );\n"
-" \n"
-" Session session = _sessions.openSession();\n"
-" Transaction tx = null;\n"
-" try {\n"
-" tx = session.beginTransaction();\n"
-" session.persist(blog);\n"
-" tx.commit();\n"
-" }\n"
-" catch (HibernateException he) {\n"
-" if (tx!=null) tx.rollback();\n"
-" throw he;\n"
-" }\n"
-" finally {\n"
-" session.close();\n"
-" }\n"
-" return blog;\n"
-" }\n"
-" \n"
-" public BlogItem createBlogItem(Blog blog, String title, String text)\n"
-" throws HibernateException {\n"
-" \n"
-" BlogItem item = new BlogItem();\n"
-" item.setTitle(title);\n"
-" item.setText(text);\n"
-" item.setBlog(blog);\n"
-" item.setDatetime( Calendar.getInstance() );\n"
-" blog.getItems().add(item);\n"
-" \n"
-" Session session = _sessions.openSession();\n"
-" Transaction tx = null;\n"
-" try {\n"
-" tx = session.beginTransaction();\n"
-" session.update(blog);\n"
-" tx.commit();\n"
-" }\n"
-" catch (HibernateException he) {\n"
-" if (tx!=null) tx.rollback();\n"
-" throw he;\n"
-" }\n"
-" finally {\n"
-" session.close();\n"
-" }\n"
-" return item;\n"
-" }\n"
-" \n"
-" public BlogItem createBlogItem(Long blogid, String title, String text)\n"
-" throws HibernateException {\n"
-" \n"
-" BlogItem item = new BlogItem();\n"
-" item.setTitle(title);\n"
-" item.setText(text);\n"
-" item.setDatetime( Calendar.getInstance() );\n"
-" \n"
-" Session session = _sessions.openSession();\n"
-" Transaction tx = null;\n"
-" try {\n"
-" tx = session.beginTransaction();\n"
-" Blog blog = (Blog) session.load(Blog.class, blogid);\n"
-" item.setBlog(blog);\n"
-" blog.getItems().add(item);\n"
-" tx.commit();\n"
-" }\n"
-" catch (HibernateException he) {\n"
-" if (tx!=null) tx.rollback();\n"
-" throw he;\n"
-" }\n"
-" finally {\n"
-" session.close();\n"
-" }\n"
-" return item;\n"
-" }\n"
-" \n"
-" public void updateBlogItem(BlogItem item, String text)\n"
-" throws HibernateException {\n"
-" \n"
-" item.setText(text);\n"
-" \n"
-" Session session = _sessions.openSession();\n"
-" Transaction tx = null;\n"
-" try {\n"
-" tx = session.beginTransaction();\n"
-" session.update(item);\n"
-" tx.commit();\n"
-" }\n"
-" catch (HibernateException he) {\n"
-" if (tx!=null) tx.rollback();\n"
-" throw he;\n"
-" }\n"
-" finally {\n"
-" session.close();\n"
-" }\n"
-" }\n"
-" \n"
-" public void updateBlogItem(Long itemid, String text)\n"
-" throws HibernateException {\n"
-" \n"
-" Session session = _sessions.openSession();\n"
-" Transaction tx = null;\n"
-" try {\n"
-" tx = session.beginTransaction();\n"
-" BlogItem item = (BlogItem) session.load(BlogItem.class, "
-"itemid);\n"
-" item.setText(text);\n"
-" tx.commit();\n"
-" }\n"
-" catch (HibernateException he) {\n"
-" if (tx!=null) tx.rollback();\n"
-" throw he;\n"
-" }\n"
-" finally {\n"
-" session.close();\n"
-" }\n"
-" }\n"
-" \n"
-" public List listAllBlogNamesAndItemCounts(int max)\n"
-" throws HibernateException {\n"
-" \n"
-" Session session = _sessions.openSession();\n"
-" Transaction tx = null;\n"
-" List result = null;\n"
-" try {\n"
-" tx = session.beginTransaction();\n"
-" Query q = session.createQuery(\n"
-" \"select blog.id, blog.name, count(blogItem) \"
+\n"
-" \"from Blog as blog \" +\n"
-" \"left outer join blog.items as blogItem \" +\n"
-" \"group by blog.name, blog.id \" +\n"
-" \"order by max(blogItem.datetime)\"\n"
-" );\n"
-" q.setMaxResults(max);\n"
-" result = q.list();\n"
-" tx.commit();\n"
-" }\n"
-" catch (HibernateException he) {\n"
-" if (tx!=null) tx.rollback();\n"
-" throw he;\n"
-" }\n"
-" finally {\n"
-" session.close();\n"
-" }\n"
-" return result;\n"
-" }\n"
-" \n"
-" public Blog getBlogAndAllItems(Long blogid)\n"
-" throws HibernateException {\n"
-" \n"
-" Session session = _sessions.openSession();\n"
-" Transaction tx = null;\n"
-" Blog blog = null;\n"
-" try {\n"
-" tx = session.beginTransaction();\n"
-" Query q = session.createQuery(\n"
-" \"from Blog as blog \" +\n"
-" \"left outer join fetch blog.items \" +\n"
-" \"where blog.id = :blogid\"\n"
-" );\n"
-" q.setParameter(\"blogid\", blogid);\n"
-" blog = (Blog) q.uniqueResult();\n"
-" tx.commit();\n"
-" }\n"
-" catch (HibernateException he) {\n"
-" if (tx!=null) tx.rollback();\n"
-" throw he;\n"
-" }\n"
-" finally {\n"
-" session.close();\n"
-" }\n"
-" return blog;\n"
-" }\n"
-" \n"
-" public List listBlogsAndRecentItems() throws HibernateException {\n"
-" \n"
-" Session session = _sessions.openSession();\n"
-" Transaction tx = null;\n"
-" List result = null;\n"
-" try {\n"
-" tx = session.beginTransaction();\n"
-" Query q = session.createQuery(\n"
-" \"from Blog as blog \" +\n"
-" \"inner join blog.items as blogItem \" +\n"
-" \"where blogItem.datetime > :minDate\"\n"
-" );\n"
-"\n"
-" Calendar cal = Calendar.getInstance();\n"
-" cal.roll(Calendar.MONTH, false);\n"
-" q.setCalendar(\"minDate\", cal);\n"
-" \n"
-" result = q.list();\n"
-" tx.commit();\n"
-" }\n"
-" catch (HibernateException he) {\n"
-" if (tx!=null) tx.rollback();\n"
-" throw he;\n"
-" }\n"
-" finally {\n"
-" session.close();\n"
-" }\n"
-" return result;\n"
-" }\n"
-"}]]>"
-msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[package eg;\n"
+#~ "\n"
+#~ "import java.util.List;\n"
+#~ "\n"
+#~ "public class Blog {\n"
+#~ " private Long _id;\n"
+#~ " private String _name;\n"
+#~ " private List _items;\n"
+#~ "\n"
+#~ " public Long getId() {\n"
+#~ " return _id;\n"
+#~ " }\n"
+#~ " public List getItems() {\n"
+#~ " return _items;\n"
+#~ " }\n"
+#~ " public String getName() {\n"
+#~ " return _name;\n"
+#~ " }\n"
+#~ " public void setId(Long long1) {\n"
+#~ " _id = long1;\n"
+#~ " }\n"
+#~ " public void setItems(List list) {\n"
+#~ " _items = list;\n"
+#~ " }\n"
+#~ " public void setName(String string) {\n"
+#~ " _name = string;\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "package eg;\n"
+#~ "\n"
+#~ "import java.util.List;\n"
+#~ "\n"
+#~ "public class Blog {\n"
+#~ " private Long _id;\n"
+#~ " private String _name;\n"
+#~ " private List _items;\n"
+#~ "\n"
+#~ " public Long getId() {\n"
+#~ " return _id;\n"
+#~ " }\n"
+#~ " public List getItems() {\n"
+#~ " return _items;\n"
+#~ " }\n"
+#~ " public String getName() {\n"
+#~ " return _name;\n"
+#~ " }\n"
+#~ " public void setId(Long long1) {\n"
+#~ " _id = long1;\n"
+#~ " }\n"
+#~ " public void setItems(List list) {\n"
+#~ " _items = list;\n"
+#~ " }\n"
+#~ " public void setName(String string) {\n"
+#~ " _name = string;\n"
+#~ " }\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[package eg;\n"
+#~ "\n"
+#~ "import java.text.DateFormat;\n"
+#~ "import java.util.Calendar;\n"
+#~ "\n"
+#~ "public class BlogItem {\n"
+#~ " private Long _id;\n"
+#~ " private Calendar _datetime;\n"
+#~ " private String _text;\n"
+#~ " private String _title;\n"
+#~ " private Blog _blog;\n"
+#~ "\n"
+#~ " public Blog getBlog() {\n"
+#~ " return _blog;\n"
+#~ " }\n"
+#~ " public Calendar getDatetime() {\n"
+#~ " return _datetime;\n"
+#~ " }\n"
+#~ " public Long getId() {\n"
+#~ " return _id;\n"
+#~ " }\n"
+#~ " public String getText() {\n"
+#~ " return _text;\n"
+#~ " }\n"
+#~ " public String getTitle() {\n"
+#~ " return _title;\n"
+#~ " }\n"
+#~ " public void setBlog(Blog blog) {\n"
+#~ " _blog = blog;\n"
+#~ " }\n"
+#~ " public void setDatetime(Calendar calendar) {\n"
+#~ " _datetime = calendar;\n"
+#~ " }\n"
+#~ " public void setId(Long long1) {\n"
+#~ " _id = long1;\n"
+#~ " }\n"
+#~ " public void setText(String string) {\n"
+#~ " _text = string;\n"
+#~ " }\n"
+#~ " public void setTitle(String string) {\n"
+#~ " _title = string;\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "package eg;\n"
+#~ "\n"
+#~ "import java.text.DateFormat;\n"
+#~ "import java.util.Calendar;\n"
+#~ "\n"
+#~ "public class BlogItem {\n"
+#~ " private Long _id;\n"
+#~ " private Calendar _datetime;\n"
+#~ " private String _text;\n"
+#~ " private String _title;\n"
+#~ " private Blog _blog;\n"
+#~ "\n"
+#~ " public Blog getBlog() {\n"
+#~ " return _blog;\n"
+#~ " }\n"
+#~ " public Calendar getDatetime() {\n"
+#~ " return _datetime;\n"
+#~ " }\n"
+#~ " public Long getId() {\n"
+#~ " return _id;\n"
+#~ " }\n"
+#~ " public String getText() {\n"
+#~ " return _text;\n"
+#~ " }\n"
+#~ " public String getTitle() {\n"
+#~ " return _title;\n"
+#~ " }\n"
+#~ " public void setBlog(Blog blog) {\n"
+#~ " _blog = blog;\n"
+#~ " }\n"
+#~ " public void setDatetime(Calendar calendar) {\n"
+#~ " _datetime = calendar;\n"
+#~ " }\n"
+#~ " public void setId(Long long1) {\n"
+#~ " _id = long1;\n"
+#~ " }\n"
+#~ " public void setText(String string) {\n"
+#~ " _text = string;\n"
+#~ " }\n"
+#~ " public void setTitle(String string) {\n"
+#~ " _title = string;\n"
+#~ " }\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
+#~ "\n"
+#~ "<hibernate-mapping package=\"eg\">\n"
+#~ "\n"
+#~ " <class\n"
+#~ " name=\"Blog\"\n"
+#~ " table=\"BLOGS\">\n"
+#~ "\n"
+#~ " <id\n"
+#~ " name=\"id\"\n"
+#~ " column=\"BLOG_ID\">\n"
+#~ "\n"
+#~ " <generator class=\"native\"/>\n"
+#~ "\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property\n"
+#~ " name=\"name\"\n"
+#~ " column=\"NAME\"\n"
+#~ " not-null=\"true\"\n"
+#~ " unique=\"true\"/>\n"
+#~ "\n"
+#~ " <bag\n"
+#~ " name=\"items\"\n"
+#~ " inverse=\"true\"\n"
+#~ " order-by=\"DATE_TIME\"\n"
+#~ " cascade=\"all\">\n"
+#~ "\n"
+#~ " <key column=\"BLOG_ID\"/>\n"
+#~ " <one-to-many class=\"BlogItem\"/>\n"
+#~ "\n"
+#~ " </bag>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
+#~ "\n"
+#~ "<hibernate-mapping package=\"eg\">\n"
+#~ "\n"
+#~ " <class\n"
+#~ " name=\"Blog\"\n"
+#~ " table=\"BLOGS\">\n"
+#~ "\n"
+#~ " <id\n"
+#~ " name=\"id\"\n"
+#~ " column=\"BLOG_ID\">\n"
+#~ "\n"
+#~ " <generator class=\"native\"/>\n"
+#~ "\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property\n"
+#~ " name=\"name\"\n"
+#~ " column=\"NAME\"\n"
+#~ " not-null=\"true\"\n"
+#~ " unique=\"true\"/>\n"
+#~ "\n"
+#~ " <bag\n"
+#~ " name=\"items\"\n"
+#~ " inverse=\"true\"\n"
+#~ " order-by=\"DATE_TIME\"\n"
+#~ " cascade=\"all\">\n"
+#~ "\n"
+#~ " <key column=\"BLOG_ID\"/>\n"
+#~ " <one-to-many class=\"BlogItem\"/>\n"
+#~ "\n"
+#~ " </bag>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
+#~ "\n"
+#~ "<hibernate-mapping package=\"eg\">\n"
+#~ "\n"
+#~ " <class\n"
+#~ " name=\"BlogItem\"\n"
+#~ " table=\"BLOG_ITEMS\"\n"
+#~ " dynamic-update=\"true\">\n"
+#~ "\n"
+#~ " <id\n"
+#~ " name=\"id\"\n"
+#~ " column=\"BLOG_ITEM_ID\">\n"
+#~ "\n"
+#~ " <generator class=\"native\"/>\n"
+#~ "\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property\n"
+#~ " name=\"title\"\n"
+#~ " column=\"TITLE\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "\n"
+#~ " <property\n"
+#~ " name=\"text\"\n"
+#~ " column=\"TEXT\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "\n"
+#~ " <property\n"
+#~ " name=\"datetime\"\n"
+#~ " column=\"DATE_TIME\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "\n"
+#~ " <many-to-one\n"
+#~ " name=\"blog\"\n"
+#~ " column=\"BLOG_ID\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
+#~ "\n"
+#~ "<hibernate-mapping package=\"eg\">\n"
+#~ "\n"
+#~ " <class\n"
+#~ " name=\"BlogItem\"\n"
+#~ " table=\"BLOG_ITEMS\"\n"
+#~ " dynamic-update=\"true\">\n"
+#~ "\n"
+#~ " <id\n"
+#~ " name=\"id\"\n"
+#~ " column=\"BLOG_ITEM_ID\">\n"
+#~ "\n"
+#~ " <generator class=\"native\"/>\n"
+#~ "\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property\n"
+#~ " name=\"title\"\n"
+#~ " column=\"TITLE\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "\n"
+#~ " <property\n"
+#~ " name=\"text\"\n"
+#~ " column=\"TEXT\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "\n"
+#~ " <property\n"
+#~ " name=\"datetime\"\n"
+#~ " column=\"DATE_TIME\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "\n"
+#~ " <many-to-one\n"
+#~ " name=\"blog\"\n"
+#~ " column=\"BLOG_ID\"\n"
+#~ " not-null=\"true\"/>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[package eg;\n"
+#~ "\n"
+#~ "import java.util.ArrayList;\n"
+#~ "import java.util.Calendar;\n"
+#~ "import java.util.Iterator;\n"
+#~ "import java.util.List;\n"
+#~ "\n"
+#~ "import org.hibernate.HibernateException;\n"
+#~ "import org.hibernate.Query;\n"
+#~ "import org.hibernate.Session;\n"
+#~ "import org.hibernate.SessionFactory;\n"
+#~ "import org.hibernate.Transaction;\n"
+#~ "import org.hibernate.cfg.Configuration;\n"
+#~ "import org.hibernate.tool.hbm2ddl.SchemaExport;\n"
+#~ "\n"
+#~ "public class BlogMain {\n"
+#~ " \n"
+#~ " private SessionFactory _sessions;\n"
+#~ " \n"
+#~ " public void configure() throws HibernateException {\n"
+#~ " _sessions = new Configuration()\n"
+#~ " .addClass(Blog.class)\n"
+#~ " .addClass(BlogItem.class)\n"
+#~ " .buildSessionFactory();\n"
+#~ " }\n"
+#~ " \n"
+#~ " public void exportTables() throws HibernateException {\n"
+#~ " Configuration cfg = new Configuration()\n"
+#~ " .addClass(Blog.class)\n"
+#~ " .addClass(BlogItem.class);\n"
+#~ " new SchemaExport(cfg).create(true, true);\n"
+#~ " }\n"
+#~ " \n"
+#~ " public Blog createBlog(String name) throws HibernateException {\n"
+#~ " \n"
+#~ " Blog blog = new Blog();\n"
+#~ " blog.setName(name);\n"
+#~ " blog.setItems( new ArrayList() );\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " session.persist(blog);\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return blog;\n"
+#~ " }\n"
+#~ " \n"
+#~ " public BlogItem createBlogItem(Blog blog, String title, String
text)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " BlogItem item = new BlogItem();\n"
+#~ " item.setTitle(title);\n"
+#~ " item.setText(text);\n"
+#~ " item.setBlog(blog);\n"
+#~ " item.setDatetime( Calendar.getInstance() );\n"
+#~ " blog.getItems().add(item);\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " session.update(blog);\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return item;\n"
+#~ " }\n"
+#~ " \n"
+#~ " public BlogItem createBlogItem(Long blogid, String title, String "
+#~ "text)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " BlogItem item = new BlogItem();\n"
+#~ " item.setTitle(title);\n"
+#~ " item.setText(text);\n"
+#~ " item.setDatetime( Calendar.getInstance() );\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " Blog blog = (Blog) session.load(Blog.class, blogid);\n"
+#~ " item.setBlog(blog);\n"
+#~ " blog.getItems().add(item);\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return item;\n"
+#~ " }\n"
+#~ " \n"
+#~ " public void updateBlogItem(BlogItem item, String text)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " item.setText(text);\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " session.update(item);\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " }\n"
+#~ " \n"
+#~ " public void updateBlogItem(Long itemid, String text)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " BlogItem item = (BlogItem) session.load(BlogItem.class, "
+#~ "itemid);\n"
+#~ " item.setText(text);\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " }\n"
+#~ " \n"
+#~ " public List listAllBlogNamesAndItemCounts(int max)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " List result = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " Query q = session.createQuery(\n"
+#~ " \"select blog.id, blog.name, count(blogItem) \"
+\n"
+#~ " \"from Blog as blog \" +\n"
+#~ " \"left outer join blog.items as blogItem \" +\n"
+#~ " \"group by blog.name, blog.id \" +\n"
+#~ " \"order by max(blogItem.datetime)\"\n"
+#~ " );\n"
+#~ " q.setMaxResults(max);\n"
+#~ " result = q.list();\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return result;\n"
+#~ " }\n"
+#~ " \n"
+#~ " public Blog getBlogAndAllItems(Long blogid)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " Blog blog = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " Query q = session.createQuery(\n"
+#~ " \"from Blog as blog \" +\n"
+#~ " \"left outer join fetch blog.items \" +\n"
+#~ " \"where blog.id = :blogid\"\n"
+#~ " );\n"
+#~ " q.setParameter(\"blogid\", blogid);\n"
+#~ " blog = (Blog) q.uniqueResult();\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return blog;\n"
+#~ " }\n"
+#~ " \n"
+#~ " public List listBlogsAndRecentItems() throws HibernateException {\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " List result = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " Query q = session.createQuery(\n"
+#~ " \"from Blog as blog \" +\n"
+#~ " \"inner join blog.items as blogItem \" +\n"
+#~ " \"where blogItem.datetime > :minDate\"\n"
+#~ " );\n"
+#~ "\n"
+#~ " Calendar cal = Calendar.getInstance();\n"
+#~ " cal.roll(Calendar.MONTH, false);\n"
+#~ " q.setCalendar(\"minDate\", cal);\n"
+#~ " \n"
+#~ " result = q.list();\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return result;\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "package eg;\n"
+#~ "\n"
+#~ "import java.util.ArrayList;\n"
+#~ "import java.util.Calendar;\n"
+#~ "import java.util.Iterator;\n"
+#~ "import java.util.List;\n"
+#~ "\n"
+#~ "import org.hibernate.HibernateException;\n"
+#~ "import org.hibernate.Query;\n"
+#~ "import org.hibernate.Session;\n"
+#~ "import org.hibernate.SessionFactory;\n"
+#~ "import org.hibernate.Transaction;\n"
+#~ "import org.hibernate.cfg.Configuration;\n"
+#~ "import org.hibernate.tool.hbm2ddl.SchemaExport;\n"
+#~ "\n"
+#~ "public class BlogMain {\n"
+#~ " \n"
+#~ " private SessionFactory _sessions;\n"
+#~ " \n"
+#~ " public void configure() throws HibernateException {\n"
+#~ " _sessions = new Configuration()\n"
+#~ " .addClass(Blog.class)\n"
+#~ " .addClass(BlogItem.class)\n"
+#~ " .buildSessionFactory();\n"
+#~ " }\n"
+#~ " \n"
+#~ " public void exportTables() throws HibernateException {\n"
+#~ " Configuration cfg = new Configuration()\n"
+#~ " .addClass(Blog.class)\n"
+#~ " .addClass(BlogItem.class);\n"
+#~ " new SchemaExport(cfg).create(true, true);\n"
+#~ " }\n"
+#~ " \n"
+#~ " public Blog createBlog(String name) throws HibernateException {\n"
+#~ " \n"
+#~ " Blog blog = new Blog();\n"
+#~ " blog.setName(name);\n"
+#~ " blog.setItems( new ArrayList() );\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " session.persist(blog);\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return blog;\n"
+#~ " }\n"
+#~ " \n"
+#~ " public BlogItem createBlogItem(Blog blog, String title, String
text)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " BlogItem item = new BlogItem();\n"
+#~ " item.setTitle(title);\n"
+#~ " item.setText(text);\n"
+#~ " item.setBlog(blog);\n"
+#~ " item.setDatetime( Calendar.getInstance() );\n"
+#~ " blog.getItems().add(item);\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " session.update(blog);\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return item;\n"
+#~ " }\n"
+#~ " \n"
+#~ " public BlogItem createBlogItem(Long blogid, String title, String "
+#~ "text)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " BlogItem item = new BlogItem();\n"
+#~ " item.setTitle(title);\n"
+#~ " item.setText(text);\n"
+#~ " item.setDatetime( Calendar.getInstance() );\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " Blog blog = (Blog) session.load(Blog.class, blogid);\n"
+#~ " item.setBlog(blog);\n"
+#~ " blog.getItems().add(item);\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return item;\n"
+#~ " }\n"
+#~ " \n"
+#~ " public void updateBlogItem(BlogItem item, String text)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " item.setText(text);\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " session.update(item);\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " }\n"
+#~ " \n"
+#~ " public void updateBlogItem(Long itemid, String text)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " BlogItem item = (BlogItem) session.load(BlogItem.class, "
+#~ "itemid);\n"
+#~ " item.setText(text);\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " }\n"
+#~ " \n"
+#~ " public List listAllBlogNamesAndItemCounts(int max)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " List result = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " Query q = session.createQuery(\n"
+#~ " \"select blog.id, blog.name, count(blogItem) \"
+\n"
+#~ " \"from Blog as blog \" +\n"
+#~ " \"left outer join blog.items as blogItem \" +\n"
+#~ " \"group by blog.name, blog.id \" +\n"
+#~ " \"order by max(blogItem.datetime)\"\n"
+#~ " );\n"
+#~ " q.setMaxResults(max);\n"
+#~ " result = q.list();\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return result;\n"
+#~ " }\n"
+#~ " \n"
+#~ " public Blog getBlogAndAllItems(Long blogid)\n"
+#~ " throws HibernateException {\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " Blog blog = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " Query q = session.createQuery(\n"
+#~ " \"from Blog as blog \" +\n"
+#~ " \"left outer join fetch blog.items \" +\n"
+#~ " \"where blog.id = :blogid\"\n"
+#~ " );\n"
+#~ " q.setParameter(\"blogid\", blogid);\n"
+#~ " blog = (Blog) q.uniqueResult();\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return blog;\n"
+#~ " }\n"
+#~ " \n"
+#~ " public List listBlogsAndRecentItems() throws HibernateException {\n"
+#~ " \n"
+#~ " Session session = _sessions.openSession();\n"
+#~ " Transaction tx = null;\n"
+#~ " List result = null;\n"
+#~ " try {\n"
+#~ " tx = session.beginTransaction();\n"
+#~ " Query q = session.createQuery(\n"
+#~ " \"from Blog as blog \" +\n"
+#~ " \"inner join blog.items as blogItem \" +\n"
+#~ " \"where blogItem.datetime > :minDate\"\n"
+#~ " );\n"
+#~ "\n"
+#~ " Calendar cal = Calendar.getInstance();\n"
+#~ " cal.roll(Calendar.MONTH, false);\n"
+#~ " q.setCalendar(\"minDate\", cal);\n"
+#~ " \n"
+#~ " result = q.list();\n"
+#~ " tx.commit();\n"
+#~ " }\n"
+#~ " catch (HibernateException he) {\n"
+#~ " if (tx!=null) tx.rollback();\n"
+#~ " throw he;\n"
+#~ " }\n"
+#~ " finally {\n"
+#~ " session.close();\n"
+#~ " }\n"
+#~ " return result;\n"
+#~ " }\n"
+#~ "}"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/filters.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/filters.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/filters.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,44 +1,43 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:26\n"
+"PO-Revision-Date: 2010-01-18 15:28+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: filters.xml:29
#, no-c-format
msgid "Filtering data"
msgstr "データのフィルタリング"
#. Tag: para
-#: filters.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate3 provides an innovative new approach to handling data with "
"\"visibility\" rules. A <emphasis>Hibernate filter</emphasis>
is a global, "
"named, parameterized filter that can be enabled or disabled for a particular
"
"Hibernate session."
msgstr ""
-"Hibernate3では「可視性」ルールに基づいてデータを扱うための画期的な方法を用意"
+"Hibernate3 では「可視性」ルールに基づいてデータを扱うための画期的な方法を用意"
"しています。 <emphasis>Hibernate filter</emphasis> はグローバルで、名前付き"
-"で、パラメータ化されたフィルタです。 これはHibernateセッションごとに有効無効"
+"で、パラメータ化されたフィルタです。これは Hibernate セッションごとに有効無効"
"を切り替えられます。"
#. Tag: title
-#: filters.xml:38
#, no-c-format
msgid "Hibernate filters"
-msgstr "Hibernateのフィルタ"
+msgstr "Hibernate のフィルタ"
#. Tag: para
-#: filters.xml:40
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate3 has the ability to pre-define filter criteria and attach those "
"filters at both a class level and a collection level. A filter criteria "
@@ -49,17 +48,15 @@
"parameter values should be. Filters can be used like database views, but "
"they are parameterized inside the application."
msgstr ""
-"Hibernate3はフィルタクライテリアをあらかじめ定義し、 これらのフィルタをクラス"
-"やコレクションレベルに加える機能を加えました。 フィルタクライテリアは制約節を"
-"定義する機能です。 これらのフィルタ条件はパラメータ化できるということを除"
-"き、 クラスやさまざまなコレクション要素で利用可能な「where」句に非常によく似て"
-"います。 アプリケーションは、与えられたフィルタを可能にすべきか、 そしてその"
-"パラメータ値を何にすべきかを実行時に決定することができます。 フィルタはデータ"
-"ベースビューのように使用されますが、アプリケーション内ではパラメータ化されま"
-"す。"
+"Hibernate3 はフィルタクライテリアをあらかじめ定義し、これらのフィルタをクラス"
+"やコレクションレベルに加える機能を加えました。フィルタクライテリアは制約節を"
+"定義する機能です。これらのフィルタ条件はパラメータ化できるということを除き、"
+"クラスやさまざまなコレクション要素で利用可能な 「where」 句に非常によく似ていま"
+"す。アプリケーションは、与えられたフィルタを可能にすべきか、そしてそのパラ"
+"メータ値を何にすべきかを実行時に決定することができます。フィルタはデータベー"
+"スビューのように使用されますが、アプリケーション内ではパラメータ化されます。"
#. Tag: para
-#: filters.xml:50
#, no-c-format
msgid ""
"In order to use filters, they must first be defined and then attached to the
"
@@ -68,60 +65,26 @@
"></literal> element:"
msgstr ""
"フィルタを使うためにはまず、適切なマッピング要素に定義、追加しなくてはなりま"
-"せん。 フィルタを定義するためには、 <literal><hibernate-mapping/></"
-"literal> 要素内で <literal><filter-def/></literal>
要素を使用します。:"
+"せん。フィルタを定義するためには、 <literal><hibernate-mapping/></"
+"literal> 要素内で <literal><filter-def/></literal>
要素を使用します:"
-#. Tag: programlisting
-#: filters.xml:56
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[<filter-def name=\"myFilter\">\n"
-" <filter-param name=\"myFilterParam\"
type=\"string\"/>\n"
-"</filter-def>]]>"
-msgstr ""
+msgid "This filter can then be attached to a class:"
+msgstr "そうしてフィルタはクラスへと結び付けられます:"
#. Tag: para
-#: filters.xml:58
-#, fuzzy, no-c-format
-msgid "This filter can then be attached to a class:"
-msgstr "そうしてフィルタはクラスへと結び付けられます。:"
-
-#. Tag: programlisting
-#: filters.xml:62
#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"myClass\" ...>\n"
-" ...\n"
-" <filter name=\"myFilter\" condition=\":myFilterParam =
MY_FILTERED_COLUMN"
-"\"/>\n"
-"</class>]]>"
-msgstr ""
+msgid "Or, to a collection:"
+msgstr "また、コレクションに対しては次のようになります:"
#. Tag: para
-#: filters.xml:64
-#, fuzzy, no-c-format
-msgid "Or, to a collection:"
-msgstr "また、コレクションに対しては次のようになります。:"
-
-#. Tag: programlisting
-#: filters.xml:68
#, no-c-format
-msgid ""
-"<![CDATA[<set ...>\n"
-" <filter name=\"myFilter\" condition=\":myFilterParam =
MY_FILTERED_COLUMN"
-"\"/>\n"
-"</set>]]>"
-msgstr ""
-
-#. Tag: para
-#: filters.xml:70
-#, fuzzy, no-c-format
msgid "Or, to both or multiples of each at the same time."
-msgstr "どちらに対しても(また、それぞれを複数)同時に設定することもできます。"
+msgstr "どちらに対しても (また、それぞれを複数) 同時に設定することもできます。"
#. Tag: para
-#: filters.xml:74
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The methods on <literal>Session</literal> are:
<literal>enableFilter(String "
"filterName)</literal>, <literal>getEnabledFilter(String
filterName)</"
@@ -133,150 +96,78 @@
"this:"
msgstr ""
"<literal>Session</literal> 上のメソッドは <literal>enableFilter(String
"
-"filterName)</literal>, <literal>getEnabledFilter(String
filterName)</"
-"literal>, <literal>disableFilter(String filterName)</literal> です。
デフォル"
+"filterName)</literal>、 <literal>getEnabledFilter(String
filterName)</"
+"literal>、 <literal>disableFilter(String filterName)</literal>
です。デフォル"
"トでは、フィルタは与えられたセッションに対して使用 <emphasis>できません</"
"emphasis> 。 <literal>Filter</literal> インスタンスを返り値とする "
-"<literal>Session.enableFilter()</literal> メソッドを使うことで、 フィルタは明"
-"示的に使用可能となります。 上で定義した単純なフィルタの使用は、このようになり"
-"ます。:"
+"<literal>Session.enabledFilter()</literal> メソッドを使うことで、フィルタは明"
+"示的に使用可能となります。上で定義した単純なフィルタの使用は、このようになり"
+"ます:"
-#. Tag: programlisting
-#: filters.xml:83
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[session.enableFilter(\"myFilter\").setParameter(\"myFilterParam\",
"
-"\"some-value\");]]>"
-msgstr ""
-
-#. Tag: para
-#: filters.xml:85
-#, fuzzy, no-c-format
-msgid ""
"Methods on the org.hibernate.Filter interface do allow the method-chaining "
"common to much of Hibernate."
msgstr ""
-"org.hibernate.Filterインターフェイスのメソッドは、 Hibernateの多くに共通して"
-"いるメソッド連鎖を許していることに注意してください。"
+"org.hibernate.Filter インターフェースのメソッドは、 Hibernate の多くに共通し"
+"ているメソッド連鎖を許していることに注意してください。"
#. Tag: para
-#: filters.xml:89
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following is a full example, using temporal data with an effective "
"record date pattern:"
msgstr "有効なレコードデータパターンを持つ一時データを使った完全な例です:"
-#. Tag: programlisting
-#: filters.xml:93
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<filter-def name=\"effectiveDate\">\n"
-" <filter-param name=\"asOfDate\"
type=\"date\"/>\n"
-"</filter-def>\n"
-"\n"
-"<class name=\"Employee\" ...>\n"
-"...\n"
-" <many-to-one name=\"department\" column=\"dept_id\"
class=\"Department\"/"
-">\n"
-" <property name=\"effectiveStartDate\" type=\"date\"
column=\"eff_start_dt"
-"\"/>\n"
-" <property name=\"effectiveEndDate\" type=\"date\"
column=\"eff_end_dt\"/"
-">\n"
-"...\n"
-" <!--\n"
-" Note that this assumes non-terminal records have an eff_end_dt set "
-"to\n"
-" a max db date for simplicity-sake\n"
-" -->\n"
-" <filter name=\"effectiveDate\"\n"
-" condition=\":asOfDate BETWEEN eff_start_dt and
eff_end_dt\"/>\n"
-"</class>\n"
-"\n"
-"<class name=\"Department\" ...>\n"
-"...\n"
-" <set name=\"employees\" lazy=\"true\">\n"
-" <key column=\"dept_id\"/>\n"
-" <one-to-many class=\"Employee\"/>\n"
-" <filter name=\"effectiveDate\"\n"
-" condition=\":asOfDate BETWEEN eff_start_dt and
eff_end_dt\"/"
-">\n"
-" </set>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: filters.xml:95
-#, fuzzy, no-c-format
-msgid ""
"In order to ensure that you are provided with currently effective records, "
"enable the filter on the session prior to retrieving employee data:"
msgstr ""
-"常に現在の有効レコードを返却することを保証するために、 単純に、社員データの検"
-"索より前にセッション上のフィルタを有効にします。"
+"常に現在の有効レコードを返却することを保証するために、単純に、社員データの検"
+"索より前にセッション上のフィルタを有効にします:"
-#. Tag: programlisting
-#: filters.xml:100
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Session session = ...;\n"
-"session.enableFilter(\"effectiveDate\").setParameter(\"asOfDate\",
new Date"
-"());\n"
-"List results = session.createQuery(\"from Employee as e where e.salary >
:"
-"targetSalary\")\n"
-" .setLong(\"targetSalary\", new Long(1000000))\n"
-" .list();\n"
-"]]>"
-msgstr ""
-
-#. Tag: para
-#: filters.xml:102
-#, fuzzy, no-c-format
-msgid ""
"Even though a salary constraint was mentioned explicitly on the results in "
"the above HQL, because of the enabled filter, the query will return only "
"currently active employees who have a salary greater than one million "
"dollars."
msgstr ""
-"上記のHQLでは、結果の給料の制約について明示的に触れただけですが、 有効になっ"
+"上記の HQL では、結果の給料の制約について明示的に触れただけですが、有効になっ"
"ているフィルタのおかげで、このクエリは給料が100万ドル以上の現役の社員だけを返"
"します。"
#. Tag: para
-#: filters.xml:108
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you want to use filters with outer joining, either through HQL or load "
"fetching, be careful of the direction of the condition expression. It is "
"safest to set this up for left outer joining. Place the parameter first "
"followed by the column name(s) after the operator."
msgstr ""
-"(HQLかロードフェッチで)外部結合を持つフィルタを使うつもりなら、 条件式の方向"
-"に注意してください。 これは左外部結合のために設定するのが最も安全です。 一般"
-"的に、演算子の後カラム名に続けて最初のパラメータを配置してください。"
+"注記: (HQL かロードフェッチで)外部結合を持つフィルタを使うつもりなら、条件"
+"式の方向に注意してください。これは左外部結合のために設定するのが最も安全で"
+"す。一般的に、演算子の後カラム名に続けて最初のパラメータを配置してください。"
#. Tag: para
-#: filters.xml:115
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"After being defined, a filter might be attached to multiple entities and/or "
"collections each with its own condition. This can be problematic when the "
"conditions are the same each time. Using
<literal><filter-def/></"
"literal> allows you to definine a default condition, either as an attribute
"
"or CDATA:"
-msgstr "translator-credits"
-
-#. Tag: programlisting
-#: filters.xml:122
-#, no-c-format
-msgid ""
-"<![CDATA[<filter-def name=\"myFilter\" condition=\"abc >
xyz\">...</filter-"
-"def>\n"
-"<filter-def
name=\"myOtherFilter\">abc=xyz</filter-def>]]>"
msgstr ""
+"定義したあと、フィルタは、それぞれ独自のコンディションを持つ複数のエンティ"
+"ティやコレクションにアタッチされます。コンディションがいつも同じ場合、それは"
+"面倒かもしれません。従って、 <literal><filter-def/></literal>
は、属性"
+"または CDATA としてデフォルトコンディションを定義することが可能になります:"
#. Tag: para
-#: filters.xml:124
#, no-c-format
msgid ""
"This default condition will be used whenever the filter is attached to "
@@ -284,3 +175,150 @@
"condition as part of the attachment of the filter that overrides the default
"
"condition in that particular case."
msgstr ""
+"このデフォルトのコンディションは、コンディションを指定せずに何かにアタッチさ"
+"れる場合いつでも使われます。これは、特定のケースにおいてデフォルトのコンディ"
+"ションをオーバーライドするフィルターのアタッチメントの一部として、特定のコン"
+"ディションを与えることができることを意味します。"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<filter-def name=\"myFilter\">\n"
+#~ " <filter-param name=\"myFilterParam\"
type=\"string\"/>\n"
+#~ "</filter-def>]]>"
+#~ msgstr ""
+#~ "<filter-def name=\"myFilter\">\n"
+#~ " <filter-param name=\"myFilterParam\"
type=\"string\"/>\n"
+#~ "</filter-def>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"myClass\" ...>\n"
+#~ " ...\n"
+#~ " <filter name=\"myFilter\" condition=\":myFilterParam =
"
+#~ "MY_FILTERED_COLUMN\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"myClass\" ...>\n"
+#~ " ...\n"
+#~ " <filter name=\"myFilter\" condition=\":myFilterParam =
"
+#~ "MY_FILTERED_COLUMN\"/>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set ...>\n"
+#~ " <filter name=\"myFilter\" condition=\":myFilterParam =
"
+#~ "MY_FILTERED_COLUMN\"/>\n"
+#~ "</set>]]>"
+#~ msgstr ""
+#~ "<set ...>\n"
+#~ " <filter name=\"myFilter\" condition=\":myFilterParam =
"
+#~ "MY_FILTERED_COLUMN\"/>\n"
+#~ "</set>"
+
+#, fuzzy
+#~ msgid ""
+#~
"<![CDATA[session.enableFilter(\"myFilter\").setParameter(\"myFilterParam"
+#~ "\", \"some-value\");]]>"
+#~ msgstr ""
+#~
"session.enableFilter(\"myFilter\").setParameter(\"myFilterParam\",
\"some-"
+#~ "value\");"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<filter-def name=\"effectiveDate\">\n"
+#~ " <filter-param name=\"asOfDate\"
type=\"date\"/>\n"
+#~ "</filter-def>\n"
+#~ "\n"
+#~ "<class name=\"Employee\" ...>\n"
+#~ "...\n"
+#~ " <many-to-one name=\"department\" column=\"dept_id\"
class=\"Department"
+#~ "\"/>\n"
+#~ " <property name=\"effectiveStartDate\" type=\"date\"
column="
+#~ "\"eff_start_dt\"/>\n"
+#~ " <property name=\"effectiveEndDate\" type=\"date\"
column=\"eff_end_dt"
+#~ "\"/>\n"
+#~ "...\n"
+#~ " <!--\n"
+#~ " Note that this assumes non-terminal records have an eff_end_dt "
+#~ "set to\n"
+#~ " a max db date for simplicity-sake\n"
+#~ " -->\n"
+#~ " <filter name=\"effectiveDate\"\n"
+#~ " condition=\":asOfDate BETWEEN eff_start_dt and
eff_end_dt\"/"
+#~ ">\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Department\" ...>\n"
+#~ "...\n"
+#~ " <set name=\"employees\" lazy=\"true\">\n"
+#~ " <key column=\"dept_id\"/>\n"
+#~ " <one-to-many class=\"Employee\"/>\n"
+#~ " <filter name=\"effectiveDate\"\n"
+#~ " condition=\":asOfDate BETWEEN eff_start_dt and
eff_end_dt"
+#~ "\"/>\n"
+#~ " </set>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<filter-def name=\"effectiveDate\">\n"
+#~ " <filter-param name=\"asOfDate\"
type=\"date\"/>\n"
+#~ "</filter-def>\n"
+#~ "\n"
+#~ "<class name=\"Employee\" ...>\n"
+#~ "...\n"
+#~ " <many-to-one name=\"department\"
column=\"dept_id\" class="
+#~ "\"Department\"/>\n"
+#~ " <property name=\"effectiveStartDate\"
type=\"date\" column="
+#~ "\"eff_start_dt\"/>\n"
+#~ " <property name=\"effectiveEndDate\" type=\"date\"
column="
+#~ "\"eff_end_dt\"/>\n"
+#~ "...\n"
+#~ " <!--\n"
+#~ " Note that this assumes non-terminal records have an eff_end_dt "
+#~ "set to\n"
+#~ " a max db date for simplicity-sake\n"
+#~ " -->\n"
+#~ " <filter name=\"effectiveDate\"\n"
+#~ " condition=\":asOfDate BETWEEN eff_start_dt and
eff_end_dt\"/"
+#~ ">\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"Department\" ...>\n"
+#~ "...\n"
+#~ " <set name=\"employees\"
lazy=\"true\">\n"
+#~ " <key column=\"dept_id\"/>\n"
+#~ " <one-to-many class=\"Employee\"/>\n"
+#~ " <filter name=\"effectiveDate\"\n"
+#~ " condition=\":asOfDate BETWEEN eff_start_dt and
eff_end_dt"
+#~ "\"/>\n"
+#~ " </set>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = ...;\n"
+#~
"session.enableFilter(\"effectiveDate\").setParameter(\"asOfDate\",
new "
+#~ "Date());\n"
+#~ "List results = session.createQuery(\"from Employee as e where e.salary >
:"
+#~ "targetSalary\")\n"
+#~ " .setLong(\"targetSalary\", new Long(1000000))\n"
+#~ " .list();\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "Session session = ...;\n"
+#~
"session.enabledFilter(\"effectiveDate\").setParameter(\"asOfDate\",
new "
+#~ "Date());\n"
+#~ "List results = session.createQuery(\"from Employee as e where e.salary
"
+#~ "> :targetSalary\")\n"
+#~ " .setLong(\"targetSalary\", new Long(1000000))\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<filter-def name=\"myFilter\" condition=\"abc >
xyz\">...</"
+#~ "filter-def>\n"
+#~ "<filter-def
name=\"myOtherFilter\">abc=xyz</filter-def>]]>"
+#~ msgstr ""
+#~ "<filter-def name=\"myFilter\" condition=\"abc >
xyz\">...</"
+#~ "filter-def>\n"
+#~ "<filter-def
name=\"myOtherFilter\">abc=xyz</filter-def>"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/inheritance_mapping.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/inheritance_mapping.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/inheritance_mapping.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,74 +1,64 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-16 18:47+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-09T04:05:51\n"
+"PO-Revision-Date: 2010-01-07 09:59+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: inheritance_mapping.xml:29
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Inheritance mapping"
msgstr "継承マッピング"
#. Tag: title
-#: inheritance_mapping.xml:32
-#, fuzzy, no-c-format
+#, no-c-format
msgid "The three strategies"
msgstr "3つの戦略"
#. Tag: para
-#: inheritance_mapping.xml:34
#, no-c-format
msgid "Hibernate supports the three basic inheritance mapping strategies:"
-msgstr "Hibernateは3つの基本的な継承のマッピング戦略をサポートします。"
+msgstr "Hibernate は3つの基本的な継承のマッピング戦略をサポートします。"
#. Tag: para
-#: inheritance_mapping.xml:40
#, no-c-format
msgid "table per class hierarchy"
-msgstr "クラス階層ごとのテーブル(table-per-class-hierarchy)"
+msgstr "クラス階層ごとのテーブル (table-per-class-hierarchy)"
#. Tag: para
-#: inheritance_mapping.xml:45
-#, fuzzy, no-c-format
-msgid "<para>table per subclass</para>"
-msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"サブクラスごとのテーブル(table-per-subclass)\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"table per subclass"
+#, no-c-format
+msgid "table per subclass"
+msgstr "サブクラスごとのテーブル (table-per-subclass)"
#. Tag: para
-#: inheritance_mapping.xml:50
#, no-c-format
msgid "table per concrete class"
-msgstr "具象クラスごとのテーブル(table-per-concrete-class)"
+msgstr "具象クラスごとのテーブル (table-per-concrete-class)"
#. Tag: para
-#: inheritance_mapping.xml:56
#, no-c-format
msgid ""
"In addition, Hibernate supports a fourth, slightly different kind of "
"polymorphism:"
msgstr ""
-"加えて4つ目に、Hibernateはわずかに異なる性質を持ったポリモーフィズムをサポー"
-"トします。"
+"加えて4つ目に、 Hibernate はわずかに異なる性質を持ったポリモーフィズムをサ"
+"ポートします。"
#. Tag: para
-#: inheritance_mapping.xml:63
#, no-c-format
msgid "implicit polymorphism"
msgstr "暗黙的ポリモーフィズム"
#. Tag: para
-#: inheritance_mapping.xml:69
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is possible to use different mapping strategies for different branches of
"
"the same inheritance hierarchy. You can then make use of implicit "
@@ -82,19 +72,18 @@
"<literal><join></literal> elements (see below for an
example)."
msgstr ""
"同一の継承階層の異なるブランチに対して異なるマッピング戦略を使うことができま"
-"す。 その場合には全体の階層に渡るポリモーフィズムを実現するために暗黙的ポリ"
-"モーフィズムを使用します。 しかし、Hibernateは同じルート <literal><"
-"class></literal> 要素内で
<literal><subclass></literal> マッピング、"
-"<literal><joined-subclass></literal> マッピング、
<literal><union-"
-"subclass></literal> マッピングの同時使用をサポートしていません。 "
+"す。その場合には全体の階層に渡るポリモーフィズムを実現するために暗黙的ポリ"
+"モーフィズムを使用します。しかし、 Hibernate は同じルート <literal><"
+"class></literal> 要素内で
<literal><subclass></literal> マッピン"
+"グ、 <literal><joined-subclass></literal> マッピング、
<literal><"
+"union-subclass></literal> マッピングの同時使用をサポートしていません。 "
"<literal><subclass></literal> 要素と
<literal><join></literal> 要"
-"素を組み合わせることで、 同一 <literal><class></literal> 要素内での "
+"素を組み合わせることで、同一 <literal><class></literal> 要素内での "
"table-per-hierarchy 戦略と table-per-subclass 戦略の同時使用は可能です。次の"
"例を見てください。"
#. Tag: para
-#: inheritance_mapping.xml:83
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is possible to define <literal>subclass</literal>,
<literal>union-"
"subclass</literal>, and <literal>joined-subclass</literal>
mappings in "
@@ -107,145 +96,74 @@
"extends keyword. The ordering inside a single mapping file still needs to be
"
"defined as superclasses before subclasses."
msgstr ""
-"<literal>subclass</literal>,
<literal>union-subclass</literal> と "
+"<literal>subclass</literal>、
<literal>union-subclass</literal> と "
"<literal>joined-subclass</literal> マッピングを複数のマッピングドキュメントに"
"定義することが出来、 <literal>hibernate-mapping</literal> の直下に配置しま"
-"す。 これは新しいマッピングファイルを追加するだけで、クラス階層を拡張できると"
-"いうことです。 あらかじめマップしたスーパークラスを指定して、サブクラスマッピ"
-"ングに <literal>extends</literal> 属性を記述しなければなりません。 注意:この"
-"特徴により、以前はマッピング・ドキュメントの順番が重要でした。 Hibernate3から"
-"は、extendsキーワードを使う場合、マッピングドキュメントの順番は問題になりませ"
-"ん。 1つのマッピングファイル内で順番付けを行うときは、 依然として、サブクラ"
+"す。これは新しいマッピングファイルを追加するだけで、クラス階層を拡張できると"
+"いうことです。あらかじめマップしたスーパークラスを指定して、サブクラスマッピ"
+"ングに <literal>extends</literal> 属性を記述しなければなりません。注記:この"
+"特徴により、以前はマッピングドキュメントの順番が重要でした。 Hibernate3 から"
+"は、 extends キーワードを使う場合、マッピングドキュメントの順番は問題になりま"
+"せん。1つのマッピングファイル内で順番付けを行うときは、依然として、サブクラ"
"スを定義する前にスーパークラスを定義する必要があります。)"
-#. Tag: programlisting
-#: inheritance_mapping.xml:94
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-" <hibernate-mapping>\n"
-" <subclass name=\"DomesticCat\" extends=\"Cat\"
discriminator-value=\"D"
-"\">\n"
-" <property name=\"name\"
type=\"string\"/>\n"
-" </subclass>\n"
-" </hibernate-mapping>]]>"
-msgstr ""
-
#. Tag: title
-#: inheritance_mapping.xml:98
#, no-c-format
msgid "Table per class hierarchy"
msgstr "クラス階層ごとのテーブル(table-per-class-hierarchy)"
#. Tag: para
-#: inheritance_mapping.xml:100
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Suppose we have an interface <literal>Payment</literal> with the
"
"implementors <literal>CreditCardPayment</literal>,
<literal>CashPayment</"
"literal>, and <literal>ChequePayment</literal>. The table per
hierarchy "
"mapping would display in the following way:"
msgstr ""
-"例えば、インターフェイス <literal>Payment</literal> と、それを実装した "
-"<literal>CreditCardPayment</literal>、<literal>CashPayment</literal>、
"
+"例えば、インターフェース <literal>Payment</literal> と、それを実装した "
+"<literal>CreditCardPayment</literal>、
<literal>CashPayment</literal>、 "
"<literal>ChequePayment</literal> があるとします。階層ごとのテーブルマッピング"
-"は 以下のようになります。"
+"は以下のようになります:"
-#. Tag: programlisting
-#: inheritance_mapping.xml:107
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Payment\"
table=\"PAYMENT\">\n"
-" <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <discriminator column=\"PAYMENT_TYPE\"
type=\"string\"/>\n"
-" <property name=\"amount\"
column=\"AMOUNT\"/>\n"
-" ...\n"
-" <subclass name=\"CreditCardPayment\"
discriminator-value=\"CREDIT\">\n"
-" <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
-" ...\n"
-" </subclass>\n"
-" <subclass name=\"CashPayment\"
discriminator-value=\"CASH\">\n"
-" ...\n"
-" </subclass>\n"
-" <subclass name=\"ChequePayment\"
discriminator-value=\"CHEQUE\">\n"
-" ...\n"
-" </subclass>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: inheritance_mapping.xml:109
-#, fuzzy, no-c-format
-msgid ""
"Exactly one table is required. There is a limitation of this mapping "
"strategy: columns declared by the subclasses, such as
<literal>CCTYPE</"
"literal>, cannot have <literal>NOT NULL</literal>
constraints."
msgstr ""
-"ちょうど一つのテーブルが必要です。 このマッピング戦略には一つ大きな制限があり"
+"ちょうど一つのテーブルが必要です。このマッピング戦略には一つ大きな制限があり"
"ます。 <literal>CCTYPE</literal> のような、サブクラスで宣言されたカラムは "
"<literal>NOT NULL</literal> 制約を持てません。"
#. Tag: title
-#: inheritance_mapping.xml:118
#, no-c-format
msgid "Table per subclass"
-msgstr "サブクラスごとのテーブル(table-per-subclass)"
+msgstr "サブクラスごとのテーブル (table-per-subclass)"
#. Tag: para
-#: inheritance_mapping.xml:120
-#, fuzzy, no-c-format
+#, no-c-format
msgid "A table per subclass mapping looks like this:"
-msgstr "table-per-subclass マッピングは以下のようになります。"
+msgstr "table-per-subclass マッピングは以下のようになります:"
-#. Tag: programlisting
-#: inheritance_mapping.xml:124
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Payment\"
table=\"PAYMENT\">\n"
-" <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"amount\"
column=\"AMOUNT\"/>\n"
-" ...\n"
-" <joined-subclass name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT\">\n"
-" <key column=\"PAYMENT_ID\"/>\n"
-" <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
-" ...\n"
-" </joined-subclass>\n"
-" <joined-subclass name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
-" <key column=\"PAYMENT_ID\"/>\n"
-" ...\n"
-" </joined-subclass>\n"
-" <joined-subclass name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT\">\n"
-" <key column=\"PAYMENT_ID\"/>\n"
-" ...\n"
-" </joined-subclass>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: inheritance_mapping.xml:126
-#, fuzzy, no-c-format
-msgid ""
"Four tables are required. The three subclass tables have primary key "
"associations to the superclass table so the relational model is actually a "
"one-to-one association."
msgstr ""
-"このマッピングには4つのテーブルが必要です。3つのサブクラステーブルは スーパー"
+"このマッピングには4つのテーブルが必要です。3つのサブクラステーブルはスーパー"
"クラステーブルとの関連を示す主キーを持っています (実際、関係モデル上は一対一"
"関連です)。"
#. Tag: title
-#: inheritance_mapping.xml:135
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Table per subclass: using a discriminator"
-msgstr "弁別子を用いた table-per-subclass"
+msgstr "discriminator を用いた table-per-subclass"
#. Tag: para
-#: inheritance_mapping.xml:137
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate's implementation of table per subclass does not require a "
"discriminator column. Other object/relational mappers use a different "
@@ -256,103 +174,40 @@
"strategy, you can combine the use of
<literal><subclass></literal> and "
"<literal><join></literal>, as follows:"
msgstr ""
-"Hibernateの table-per-subclass 実装は、discriminatorカラムを必要としないこと"
-"を覚えておいてください。 Hibernate以外のO/Rマッパーは、table-per-subclass に"
-"異なる実装を用います。 それは、スーパークラスのテーブルにタイプdiscriminator"
-"カラムを必要とします。 このアプローチは実装が困難になりますが、関係の視点から"
-"見ると、より正確なものです。 table-per-subclass 戦略でdiscriminatorカラムを使"
-"いたければ、 <literal><subclass></literal> と
<literal><join></"
-"literal> を以下のように組み合わせて使ってください。"
+"Hibernate の table-per-subclass 実装は、 discriminator カラムを必要としないこ"
+"とを覚えておいてください。 Hibernate 以外の O/R マッパーは、 table-per-"
+"subclass に異なる実装を用います。それは、スーパークラスのテーブルにタイプ "
+"discriminator カラムを必要とします。このアプローチは実装が困難になりますが、"
+"関係の視点から見ると、より正確なものです。 table-per-subclass 戦略で "
+"discriminator カラムを使いたければ、 <literal><subclass></literal> と
"
+"<literal><join></literal> を以下のように組み合わせて使ってください。"
-#. Tag: programlisting
-#: inheritance_mapping.xml:149
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Payment\"
table=\"PAYMENT\">\n"
-" <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <discriminator column=\"PAYMENT_TYPE\"
type=\"string\"/>\n"
-" <property name=\"amount\"
column=\"AMOUNT\"/>\n"
-" ...\n"
-" <subclass name=\"CreditCardPayment\"
discriminator-value=\"CREDIT\">\n"
-" <join table=\"CREDIT_PAYMENT\">\n"
-" <key column=\"PAYMENT_ID\"/>\n"
-" <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
-" ...\n"
-" </join>\n"
-" </subclass>\n"
-" <subclass name=\"CashPayment\"
discriminator-value=\"CASH\">\n"
-" <join table=\"CASH_PAYMENT\">\n"
-" <key column=\"PAYMENT_ID\"/>\n"
-" ...\n"
-" </join>\n"
-" </subclass>\n"
-" <subclass name=\"ChequePayment\"
discriminator-value=\"CHEQUE\">\n"
-" <join table=\"CHEQUE_PAYMENT\"
fetch=\"select\">\n"
-" <key column=\"PAYMENT_ID\"/>\n"
-" ...\n"
-" </join>\n"
-" </subclass>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: inheritance_mapping.xml:151
#, no-c-format
msgid ""
"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."
msgstr ""
-"オプションの <literal>fetch=\"select\"</literal> 宣言は、
スーパークラスのク"
-"エリ実行時に外部結合を使って、 サブクラスの <literal>ChequePayment</literal> "
+"オプションの <literal>fetch=\"select\"</literal>
宣言は、スーパークラスのクエ"
+"リ実行時に外部結合を使って、サブクラスの <literal>ChequePayment</literal> "
"データを取得しないように指定するためのものです。"
#. Tag: title
-#: inheritance_mapping.xml:160
#, no-c-format
msgid "Mixing table per class hierarchy with table per subclass"
msgstr "table-per-subclass と table-per-class-hierarchy の混合"
#. Tag: para
-#: inheritance_mapping.xml:162
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can even mix the table per hierarchy and table per subclass strategies "
"using the following approach:"
msgstr ""
-"このアプローチを使用すると、table-per-hierarchy と table-per-subclass 戦略を "
+"このアプローチを使用すると、 table-per-hierarchy と table-per-subclass 戦略を"
"組み合わせる事も可能です。"
-#. Tag: programlisting
-#: inheritance_mapping.xml:167
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Payment\"
table=\"PAYMENT\">\n"
-" <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <discriminator column=\"PAYMENT_TYPE\"
type=\"string\"/>\n"
-" <property name=\"amount\"
column=\"AMOUNT\"/>\n"
-" ...\n"
-" <subclass name=\"CreditCardPayment\"
discriminator-value=\"CREDIT\">\n"
-" <join table=\"CREDIT_PAYMENT\">\n"
-" <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
-" ...\n"
-" </join>\n"
-" </subclass>\n"
-" <subclass name=\"CashPayment\"
discriminator-value=\"CASH\">\n"
-" ...\n"
-" </subclass>\n"
-" <subclass name=\"ChequePayment\"
discriminator-value=\"CHEQUE\">\n"
-" ...\n"
-" </subclass>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: inheritance_mapping.xml:169
#, no-c-format
msgid ""
"For any of these mapping strategies, a polymorphic association to the root "
@@ -360,68 +215,33 @@
"</literal>."
msgstr ""
"いずれのマッピング戦略であっても、ルートである <literal>Payment</literal> ク"
-"ラスへの ポリモーフィックな関連は <literal><many-to-one></literal>
を"
+"ラスへのポリモーフィックな関連は <literal><many-to-one></literal>
を"
"使ってマッピングします。"
-#. Tag: programlisting
-#: inheritance_mapping.xml:175
-#, no-c-format
-msgid ""
-"<![CDATA[<many-to-one name=\"payment\"
column=\"PAYMENT_ID\" class=\"Payment"
-"\"/>]]>"
-msgstr ""
-
#. Tag: title
-#: inheritance_mapping.xml:180
#, no-c-format
msgid "Table per concrete class"
msgstr "具象クラスごとのテーブル(table-per-concrete-class)"
#. Tag: para
-#: inheritance_mapping.xml:182
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There are two ways we can map the table per concrete class strategy. First, "
"you can use <literal><union-subclass></literal>."
msgstr ""
-"table-per-concrete-class 戦略のマッピングに対するアプローチは、2つあります。 "
-"1つ目は <literal><union-subclass></literal>
を利用する方法です。"
+"table-per-concrete-class 戦略のマッピングに対するアプローチは、2つあります。1"
+"つ目は <literal><union-subclass></literal> を利用する方法です。"
-#. Tag: programlisting
-#: inheritance_mapping.xml:187
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Payment\">\n"
-" <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-" <property name=\"amount\"
column=\"AMOUNT\"/>\n"
-" ...\n"
-" <union-subclass name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT\">\n"
-" <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
-" ...\n"
-" </union-subclass>\n"
-" <union-subclass name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
-" ...\n"
-" </union-subclass>\n"
-" <union-subclass name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT\">\n"
-" ...\n"
-" </union-subclass>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: inheritance_mapping.xml:189
#, no-c-format
msgid ""
"Three tables are involved for the subclasses. Each table defines columns for
"
"all properties of the class, including inherited properties."
msgstr ""
"サブクラスごとに3つのテーブルが必要です。それぞれのテーブルは、継承プロパティ"
-"を含んだ、 クラスの全てのプロパティに対するカラムを定義します。"
+"を含んだ、クラスの全てのプロパティに対するカラムを定義します。"
#. Tag: para
-#: inheritance_mapping.xml:194
#, fuzzy, no-c-format
msgid ""
"The limitation of this approach is that if a property is mapped on the "
@@ -430,129 +250,78 @@
"The primary key seed has to be shared across all unioned subclasses of a "
"hierarchy."
msgstr ""
-"このアプローチには制限があります。 それは、プロパティがスーパークラスにマッピ"
-"ングされていた場合、 全てのサブクラスにおいてカラム名が同じでなければならない"
-"というものです。 (Hibernateの今後のリリースで緩和されるかもしれません)。 "
-"<union-subclass> を使った table-per-concrete-class 戦略では識別子生成戦"
-"略を使用できません。 主キーを生成するためのシードは、全ての union subclass の"
-"階層内で共有する必要があるからです。"
+"このアプローチには制限があります。それは、プロパティがスーパークラスにマッピ"
+"ングされていた場合、全てのサブクラスにおいてカラム名が同じでなければならない"
+"というものです。(Hibernate の今後のリリースで緩和されるかもしれません)。 "
+"union subclass 継承では識別子生成戦略を使用できません。主キーを生成するための"
+"シードは、全ての union subclass の階層内で共有する必要があるからです。"
#. Tag: para
-#: inheritance_mapping.xml:203
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If your superclass is abstract, map it with
<literal>abstract=\"true\"</"
"literal>. If it is not abstract, an additional table (it defaults to "
"<literal>PAYMENT</literal> in the example above), is needed to hold
"
"instances of the superclass."
msgstr ""
-"もしスーパークラスが抽象クラスなら、<literal>abstract=\"true\"</literal>と"
-"マッピングします。 もちろん、スーパークラスが抽象クラスでないなら、スーパーク"
-"ラスのインスタンスを 保持するためのテーブルの追加が必要となります(上の例での"
+"もしスーパークラスが抽象クラスなら、 <literal>abstract=\"true\"</literal>
と"
+"マッピングします。もちろん、スーパークラスが抽象クラスでないなら、スーパーク"
+"ラスのインスタンスを保持するためのテーブルの追加が必要となります (上の例での"
"デフォルトは <literal>PAYMENT</literal> )。"
#. Tag: title
-#: inheritance_mapping.xml:213
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Table per concrete class using implicit polymorphism"
msgstr "暗黙的ポリモーフィズムを用いた table-per-concrete-class"
#. Tag: para
-#: inheritance_mapping.xml:215
#, no-c-format
msgid "An alternative approach is to make use of implicit polymorphism:"
-msgstr "もう一つのアプローチは暗黙的ポリモーフィズムの使用です。"
+msgstr "もう一つのアプローチは暗黙的ポリモーフィズムの使用です:"
-#. Tag: programlisting
-#: inheritance_mapping.xml:219
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT\">\n"
-" <id name=\"id\" type=\"long\"
column=\"CREDIT_PAYMENT_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"amount\"
column=\"CREDIT_AMOUNT\"/>\n"
-" ...\n"
-"</class>\n"
-"\n"
-"<class name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
-" <id name=\"id\" type=\"long\"
column=\"CASH_PAYMENT_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"amount\"
column=\"CASH_AMOUNT\"/>\n"
-" ...\n"
-"</class>\n"
-"\n"
-"<class name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT\">\n"
-" <id name=\"id\" type=\"long\"
column=\"CHEQUE_PAYMENT_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"amount\"
column=\"CHEQUE_AMOUNT\"/>\n"
-" ...\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: inheritance_mapping.xml:221
-#, fuzzy, no-c-format
-msgid ""
"Notice that the <literal>Payment</literal> interface is not mentioned
"
"explicitly. Also notice that properties of <literal>Payment</literal>
are "
"mapped in each of the subclasses. If you want to avoid duplication, consider
"
"using XML entities (for example, <literal>[ <!ENTITY allproperties
SYSTEM "
"\"allproperties.xml\"> ]</literal> in the
<literal>DOCTYPE</literal> "
-"declaration and <literal>&allproperties;</literal> in the
mapping)."
+"declaration and <literal>&allproperties;</literal> in
the mapping)."
msgstr ""
-"<literal>Payment</literal> インターフェイスがどこにも明示的に示されていないこ"
-"とに注意してください。 そして、<literal>Payment</literal> プロパティがそれぞ"
-"れのサブクラスにマッピングされていることにも注意してください。 もし重複を避け"
-"たいのであれば、XMLエンティティの利用を考えてください。 (例: "
+"<literal>Payment</literal> インターフェースがどこにも明示的に示されていないこ"
+"とに注意してください。そして、 <literal>Payment</literal> プロパティがそれぞ"
+"れのサブクラスにマッピングされていることにも注意してください。もし重複を避け"
+"たいのであれば、 XML エンティティの利用を考えてください。 (例: "
"<literal>DOCTYPE</literal> 宣言における <literal>[ <!ENTITY
allproperties "
"SYSTEM \"allproperties.xml\"> ]</literal> と、マッピングにおける
"
-"<literal>&allproperties;</literal>)"
+"<literal>&allproperties;</literal>)。"
#. Tag: para
-#: inheritance_mapping.xml:231
#, no-c-format
msgid ""
"The disadvantage of this approach is that Hibernate does not generate SQL "
"<literal>UNION</literal>s when performing polymorphic queries."
msgstr ""
-"このアプローチの欠点は、Hibernateがポリモーフィックなクエリの実行時にSQL "
+"このアプローチの欠点は、 Hibernate がポリモーフィックなクエリの実行時に SQL "
"<literal>UNION</literal> を生成しない点です。"
#. Tag: para
-#: inheritance_mapping.xml:236
#, no-c-format
msgid ""
"For this mapping strategy, a polymorphic association to
<literal>Payment</"
"literal> is usually mapped using
<literal><any></literal>."
msgstr ""
-"このマッピング戦略に対しては、<literal>Payment</literal> へのポリモーフィック"
-"な関連は 通常、<literal><any></literal> を使ってマッピングされます。"
+"このマッピング戦略に対しては、 <literal>Payment</literal> へのポリモーフィッ"
+"クな関連は常に、 <literal><any></literal> を使ってマッピングされます。"
-#. Tag: programlisting
-#: inheritance_mapping.xml:241
-#, no-c-format
-msgid ""
-"<![CDATA[<any name=\"payment\" meta-type=\"string\"
id-type=\"long\">\n"
-" <meta-value value=\"CREDIT\"
class=\"CreditCardPayment\"/>\n"
-" <meta-value value=\"CASH\"
class=\"CashPayment\"/>\n"
-" <meta-value value=\"CHEQUE\"
class=\"ChequePayment\"/>\n"
-" <column name=\"PAYMENT_CLASS\"/>\n"
-" <column name=\"PAYMENT_ID\"/>\n"
-"</any>]]>"
-msgstr ""
-
#. Tag: title
-#: inheritance_mapping.xml:246
#, no-c-format
msgid "Mixing implicit polymorphism with other inheritance mappings"
msgstr "他の継承マッピングと暗黙的ポリモーフィズムの組み合わせ"
#. Tag: para
-#: inheritance_mapping.xml:248
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Since the subclasses are each mapped in their own
<literal><class></"
"literal> element, and since <literal>Payment</literal> is just an
"
@@ -560,50 +329,16 @@
"inheritance hierarchy. You can still use polymorphic queries against the "
"<literal>Payment</literal> interface."
msgstr ""
-"このマッピングについての更なる注意点があります。 サブクラスが自身を "
-"<literal><class></literal> 要素としてマッピングしているので、 (かつ "
-"<literal>Payment</literal> は単なるインターフェイスなので)、 それぞれのサブ"
-"クラスは簡単にその他の継承階層の一部となります。 (しかも、今までどおり "
-"<literal>Payment</literal> インターフェイスに対するポリモーフィックなクエリ "
-"を使用することができます)"
+"このマッピングについての更なる注意点があります。サブクラスが自身を "
+"<literal><class></literal> 要素としてマッピングしているので、(かつ "
+"<literal>Payment</literal> は単なるインターフェースなので)、それぞれのサブク"
+"ラスは簡単にその他の継承階層の一部となります。(しかも、今までどおり "
+"<literal>Payment</literal> インターフェースに対するポリモーフィックなクエリを"
+"使用することができます)"
-#. Tag: programlisting
-#: inheritance_mapping.xml:256
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT\">\n"
-" <id name=\"id\" type=\"long\"
column=\"CREDIT_PAYMENT_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <discriminator column=\"CREDIT_CARD\"
type=\"string\"/>\n"
-" <property name=\"amount\"
column=\"CREDIT_AMOUNT\"/>\n"
-" ...\n"
-" <subclass name=\"MasterCardPayment\"
discriminator-value=\"MDC\"/>\n"
-" <subclass name=\"VisaPayment\"
discriminator-value=\"VISA\"/>\n"
-"</class>\n"
-"\n"
-"<class name=\"NonelectronicTransaction\"
table=\"NONELECTRONIC_TXN\">\n"
-" <id name=\"id\" type=\"long\"
column=\"TXN_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" ...\n"
-" <joined-subclass name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
-" <key column=\"PAYMENT_ID\"/>\n"
-" <property name=\"amount\"
column=\"CASH_AMOUNT\"/>\n"
-" ...\n"
-" </joined-subclass>\n"
-" <joined-subclass name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT\">\n"
-" <key column=\"PAYMENT_ID\"/>\n"
-" <property name=\"amount\"
column=\"CHEQUE_AMOUNT\"/>\n"
-" ...\n"
-" </joined-subclass>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: inheritance_mapping.xml:258
-#, fuzzy, no-c-format
-msgid ""
"Once again, <literal>Payment</literal> is not mentioned explicitly. If
we "
"execute a query against the <literal>Payment</literal> interface, for
"
"example <literal>from Payment</literal>, Hibernate automatically
returns "
@@ -612,229 +347,572 @@
"literal> and <literal>ChequePayment</literal>, but not instances of
"
"<literal>NonelectronicTransaction</literal>."
msgstr ""
-"もう一度述べますが、<literal>Payment</literal> は明示的に定義されません。 も"
-"し、<literal>Payment</literal> インターフェイスに対してクエリを実行するなら "
-"(例えば <literal>from Payment</literal> 節を使って)、 Hibernateは自動的に "
-"<literal>CreditCardPayment</literal> (とCreditCardPaymentのサブクラス、"
-"<literal>Payment</literal> の実装であるため)、 および、"
-"<literal>CashPayment</literal>
、<literal>ChequePayment</literal> のインスタ"
+"もう一度述べますが、 <literal>Payment</literal> は明示的に定義されません。も"
+"し、 <literal>Payment</literal> インターフェースに対してクエリを実行するなら "
+"(例えば <literal>from Payment</literal> 節を使って)、 Hibernate は自動的に "
+"<literal>CreditCardPayment</literal> (と CreditCardPayment のサブクラス、
"
+"<literal>Payment</literal> の実装であるため)、および、 "
+"<literal>CashPayment</literal> 、
<literal>ChequePayment</literal> のインスタ"
"ンスを返します。 <literal>NonelectronicTransaction</literal> インスタンスは返"
"しません。"
#. Tag: title
-#: inheritance_mapping.xml:273
#, no-c-format
msgid "Limitations"
msgstr "制限"
#. Tag: para
-#: inheritance_mapping.xml:275
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There are limitations to the \"implicit polymorphism\" approach to the
table "
"per concrete-class mapping strategy. There are somewhat less restrictive "
"limitations to <literal><union-subclass></literal>
mappings."
msgstr ""
"table-per-concrete-class マッピング戦略への「暗黙的ポリモーフィズム」アプロー"
-"チには いくつかの制限があります。<literal><union-subclass></literal>
"
-"マッピングに対しても 少し弱めの制限があります。"
+"チにはいくつかの制限があります。 <literal><union-subclass></literal>
"
+"マッピングに対しても少し弱めの制限があります。"
#. Tag: para
-#: inheritance_mapping.xml:282
#, no-c-format
msgid ""
-"The following table shows the limitations of table per concrete-class "
+"The following list shows the limitations of table per concrete-class "
"mappings, and of implicit polymorphism, in Hibernate."
msgstr ""
-"次のテーブルに、Hibernateにおけるtable-per-concrete-classマッピングの 制限や"
-"暗黙的ポリモーフィズムの制限を示します。"
+"次のテーブルに、 Hibernate における table-per-concrete-class マッピングの制限"
+"や暗黙的ポリモーフィズムの制限を示します。"
-#. Tag: title
-#: inheritance_mapping.xml:288
-#, no-c-format
-msgid "Features of inheritance mappings"
-msgstr "継承マッピングの機能"
+#. Tag: term
+#, fuzzy, no-c-format
+msgid "table per class-heirarchy"
+msgstr "table per class-hierarchy"
-#. Tag: entry
-#: inheritance_mapping.xml:301
+#. Tag: para
#, no-c-format
-msgid "Inheritance strategy"
-msgstr "継承戦略"
+msgid "Polymorphic many-to-one:
<code><many-to-one></code>"
+msgstr ""
-#. Tag: entry
-#: inheritance_mapping.xml:302
+#. Tag: para
#, no-c-format
-msgid "Polymorphic many-to-one"
-msgstr "多対一のポリモーフィズム"
+msgid "Polymorphic one-to-one:
<code><one-to-one></code>"
+msgstr ""
-#. Tag: entry
-#: inheritance_mapping.xml:303
+#. Tag: para
#, no-c-format
-msgid "Polymorphic one-to-one"
-msgstr "一対一のポリモーフィズム"
+msgid "Polymorphic one-to-many:
<code><one-to-many></code>"
+msgstr ""
-#. Tag: entry
-#: inheritance_mapping.xml:304
+#. Tag: para
#, no-c-format
-msgid "Polymorphic one-to-many"
-msgstr "一対多のポリモーフィズム"
+msgid "Polymorphic many-to-many:
<code><many-to-many></code>"
+msgstr ""
-#. Tag: entry
-#: inheritance_mapping.xml:305
+#. Tag: para
#, no-c-format
-msgid "Polymorphic many-to-many"
-msgstr "多対多のポリモーフィズム"
+msgid ""
+"Polymorphic <literal>load()</literal> or
<literal>get()</literal>: <code>s."
+"get(Payment.class, id)</code>"
+msgstr ""
-#. Tag: entry
-#: inheritance_mapping.xml:306
+#. Tag: para
#, no-c-format
-msgid "Polymorphic <literal>load()/get()</literal>"
+msgid "Polymorphic queries: <code>from Payment p</code>"
msgstr ""
-#. Tag: entry
-#: inheritance_mapping.xml:307
+#. Tag: para
#, no-c-format
-msgid "Polymorphic queries"
-msgstr "ポリモーフィズムを使ったクエリ"
+msgid "Polymorphic joins: <code>from Order o join o.payment
p</code>"
+msgstr ""
-#. Tag: entry
-#: inheritance_mapping.xml:308
-#, no-c-format
-msgid "Polymorphic joins"
-msgstr "ポリモーフィズムを使った結合"
-
-#. Tag: entry
-#: inheritance_mapping.xml:309
-#, no-c-format
-msgid "Outer join fetching"
+#. Tag: para
+#, fuzzy, no-c-format
+msgid "Outer join fetching is supported."
msgstr "外部結合によるフェッチ"
-#. Tag: entry
-#: inheritance_mapping.xml:314
+#. Tag: term
#, no-c-format
-msgid "table per class-hierarchy"
-msgstr "table per class-hierarchy"
+msgid "table per concrete-class (union-subclass)"
+msgstr "table per concrete-class (union-subclass)"
-#. Tag: literal
-#: inheritance_mapping.xml:315 inheritance_mapping.xml:326
-#: inheritance_mapping.xml:337
-#, no-c-format
-msgid "<many-to-one>"
-msgstr "<many-to-one>"
+#. Tag: para
+#, fuzzy, no-c-format
+msgid ""
+"Polymorphic one-to-many: <code><one-to-many></code> (for
<code>inverse="
+"\"true\"</code> only)"
+msgstr ""
+"<literal><one-to-many></literal> (
<literal>inverse=\"true\"</literal> "
+"のために限られる)"
-#. Tag: literal
-#: inheritance_mapping.xml:316 inheritance_mapping.xml:327
-#: inheritance_mapping.xml:338
-#, no-c-format
-msgid "<one-to-one>"
-msgstr "<one-to-one>"
+#. Tag: term
+#, fuzzy, no-c-format
+msgid "table per concrete class (implicit polymorphism"
+msgstr "table per concrete class (implicit polymorphism)"
-#. Tag: literal
-#: inheritance_mapping.xml:317 inheritance_mapping.xml:328
-#, no-c-format
-msgid "<one-to-many>"
-msgstr "<one-to-many>"
+#. Tag: para
+#, fuzzy, no-c-format
+msgid "Polymorphic many-to-one: <code><any></code>"
+msgstr "多対一のポリモーフィズム"
-#. Tag: literal
-#: inheritance_mapping.xml:318 inheritance_mapping.xml:329
-#: inheritance_mapping.xml:340
-#, no-c-format
-msgid "<many-to-many>"
-msgstr "<many-to-many>"
+#. Tag: para
+#, fuzzy, no-c-format
+msgid ""
+"Polymorphic <literal>load()</literal> or
<literal>get()</literal>: <code>s."
+"createCriteria(Payment.class).add( Restrictions.idEq(id)
).uniqueResult()</"
+"code>"
+msgstr ""
+"s.createCriteria(Payment.class).add( Restrictions.idEq(id) ).uniqueResult()"
-#. Tag: literal
-#: inheritance_mapping.xml:319 inheritance_mapping.xml:330
-#: inheritance_mapping.xml:341
+#. Tag: para
#, no-c-format
-msgid "s.get(Payment.class, id)"
-msgstr "s.get(Payment.class, id)"
+msgid ""
+"Polymorphic one-to-one, polymorphic one-to-many, polymorphic joins, and "
+"outer join fetching are not supported."
+msgstr ""
-#. Tag: literal
-#: inheritance_mapping.xml:320 inheritance_mapping.xml:331
-#: inheritance_mapping.xml:342 inheritance_mapping.xml:353
-#, no-c-format
-msgid "from Payment p"
-msgstr "from Payment p"
+#~ msgid "<para>table per subclass</para>"
+#~ msgstr "<para>サブクラスごとのテーブル (table-per-subclass) </para>"
-#. Tag: literal
-#: inheritance_mapping.xml:321 inheritance_mapping.xml:332
-#: inheritance_mapping.xml:343
-#, no-c-format
-msgid "from Order o join o.payment p"
-msgstr "from Order o join o.payment p"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ " <hibernate-mapping>\n"
+#~ " <subclass name=\"DomesticCat\" extends=\"Cat\"
discriminator-value="
+#~ "\"D\">\n"
+#~ " <property name=\"name\"
type=\"string\"/>\n"
+#~ " </subclass>\n"
+#~ " </hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ " <subclass name=\"DomesticCat\" extends=\"Cat\"
discriminator-"
+#~ "value=\"D\">\n"
+#~ " <property name=\"name\"
type=\"string\"/>\n"
+#~ " </subclass>\n"
+#~ " </hibernate-mapping>"
-#. Tag: emphasis
-#: inheritance_mapping.xml:322 inheritance_mapping.xml:333
-#: inheritance_mapping.xml:344
-#, no-c-format
-msgid "supported"
-msgstr "サポート"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Payment\"
table=\"PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <discriminator column=\"PAYMENT_TYPE\"
type=\"string\"/>\n"
+#~ " <property name=\"amount\"
column=\"AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <subclass name=\"CreditCardPayment\"
discriminator-value=\"CREDIT\">\n"
+#~ " <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
+#~ " ...\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"CashPayment\"
discriminator-value=\"CASH\">\n"
+#~ " ...\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"ChequePayment\"
discriminator-value=\"CHEQUE\">\n"
+#~ " ...\n"
+#~ " </subclass>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Payment\"
table=\"PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <discriminator column=\"PAYMENT_TYPE\"
type=\"string\"/>\n"
+#~ " <property name=\"amount\"
column=\"AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <subclass name=\"CreditCardPayment\"
discriminator-value=\"CREDIT"
+#~ "\">\n"
+#~ " <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
+#~ " ...\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"CashPayment\"
discriminator-value=\"CASH\">\n"
+#~ " ...\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"ChequePayment\"
discriminator-value=\"CHEQUE"
+#~ "\">\n"
+#~ " ...\n"
+#~ " </subclass>\n"
+#~ "</class>"
-#. Tag: entry
-#: inheritance_mapping.xml:325
-#, fuzzy, no-c-format
-msgid "<entry>table per subclass</entry>"
-msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"サブクラスごとのテーブル(table-per-subclass)\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"table per subclass"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Payment\"
table=\"PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"amount\"
column=\"AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <joined-subclass name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT"
+#~ "\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
+#~ " ...\n"
+#~ " </joined-subclass>\n"
+#~ " <joined-subclass name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " ...\n"
+#~ " </joined-subclass>\n"
+#~ " <joined-subclass name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " ...\n"
+#~ " </joined-subclass>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Payment\"
table=\"PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"amount\"
column=\"AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <joined-subclass name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT"
+#~ "\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
+#~ " ...\n"
+#~ " </joined-subclass>\n"
+#~ " <joined-subclass name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " ...\n"
+#~ " </joined-subclass>\n"
+#~ " <joined-subclass name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT"
+#~ "\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " ...\n"
+#~ " </joined-subclass>\n"
+#~ "</class>"
-#. Tag: entry
-#: inheritance_mapping.xml:336
-#, no-c-format
-msgid "table per concrete-class (union-subclass)"
-msgstr "table per concrete-class (union-subclass)"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Payment\"
table=\"PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <discriminator column=\"PAYMENT_TYPE\"
type=\"string\"/>\n"
+#~ " <property name=\"amount\"
column=\"AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <subclass name=\"CreditCardPayment\"
discriminator-value=\"CREDIT\">\n"
+#~ " <join table=\"CREDIT_PAYMENT\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
+#~ " ...\n"
+#~ " </join>\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"CashPayment\"
discriminator-value=\"CASH\">\n"
+#~ " <join table=\"CASH_PAYMENT\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " ...\n"
+#~ " </join>\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"ChequePayment\"
discriminator-value=\"CHEQUE\">\n"
+#~ " <join table=\"CHEQUE_PAYMENT\"
fetch=\"select\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " ...\n"
+#~ " </join>\n"
+#~ " </subclass>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Payment\"
table=\"PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <discriminator column=\"PAYMENT_TYPE\"
type=\"string\"/>\n"
+#~ " <property name=\"amount\"
column=\"AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <subclass name=\"CreditCardPayment\"
discriminator-value=\"CREDIT"
+#~ "\">\n"
+#~ " <join table=\"CREDIT_PAYMENT\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
+#~ " ...\n"
+#~ " </join>\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"CashPayment\"
discriminator-value=\"CASH\">\n"
+#~ " <join table=\"CASH_PAYMENT\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " ...\n"
+#~ " </join>\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"ChequePayment\"
discriminator-value=\"CHEQUE"
+#~ "\">\n"
+#~ " <join table=\"CHEQUE_PAYMENT\"
fetch=\"select\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " ...\n"
+#~ " </join>\n"
+#~ " </subclass>\n"
+#~ "</class>"
-#. Tag: entry
-#: inheritance_mapping.xml:339
-#, no-c-format
-msgid ""
-"<literal><one-to-many></literal> (for
<literal>inverse=\"true\"</"
-"literal> only)"
-msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Payment\"
table=\"PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <discriminator column=\"PAYMENT_TYPE\"
type=\"string\"/>\n"
+#~ " <property name=\"amount\"
column=\"AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <subclass name=\"CreditCardPayment\"
discriminator-value=\"CREDIT\">\n"
+#~ " <join table=\"CREDIT_PAYMENT\">\n"
+#~ " <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
+#~ " ...\n"
+#~ " </join>\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"CashPayment\"
discriminator-value=\"CASH\">\n"
+#~ " ...\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"ChequePayment\"
discriminator-value=\"CHEQUE\">\n"
+#~ " ...\n"
+#~ " </subclass>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Payment\"
table=\"PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <discriminator column=\"PAYMENT_TYPE\"
type=\"string\"/>\n"
+#~ " <property name=\"amount\"
column=\"AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <subclass name=\"CreditCardPayment\"
discriminator-value=\"CREDIT"
+#~ "\">\n"
+#~ " <join table=\"CREDIT_PAYMENT\">\n"
+#~ " <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
+#~ " ...\n"
+#~ " </join>\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"CashPayment\"
discriminator-value=\"CASH\">\n"
+#~ " ...\n"
+#~ " </subclass>\n"
+#~ " <subclass name=\"ChequePayment\"
discriminator-value=\"CHEQUE"
+#~ "\">\n"
+#~ " ...\n"
+#~ " </subclass>\n"
+#~ "</class>"
-#. Tag: entry
-#: inheritance_mapping.xml:347
-#, no-c-format
-msgid "table per concrete class (implicit polymorphism)"
-msgstr "table per concrete class (implicit polymorphism)"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"payment\"
column=\"PAYMENT_ID\" class="
+#~ "\"Payment\"/>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"payment\" column=\"PAYMENT_ID\"
class=\"Payment\"/"
+#~ ">"
-#. Tag: literal
-#: inheritance_mapping.xml:348
-#, no-c-format
-msgid "<any>"
-msgstr "<any>"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Payment\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"amount\"
column=\"AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <union-subclass name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT\">\n"
+#~ " <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
+#~ " ...\n"
+#~ " </union-subclass>\n"
+#~ " <union-subclass name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
+#~ " ...\n"
+#~ " </union-subclass>\n"
+#~ " <union-subclass name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT\">\n"
+#~ " ...\n"
+#~ " </union-subclass>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Payment\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"PAYMENT_ID\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"amount\"
column=\"AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <union-subclass name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT"
+#~ "\">\n"
+#~ " <property name=\"creditCardType\"
column=\"CCTYPE\"/>\n"
+#~ " ...\n"
+#~ " </union-subclass>\n"
+#~ " <union-subclass name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
+#~ " ...\n"
+#~ " </union-subclass>\n"
+#~ " <union-subclass name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT"
+#~ "\">\n"
+#~ " ...\n"
+#~ " </union-subclass>\n"
+#~ "</class>"
-#. Tag: emphasis
-#: inheritance_mapping.xml:349 inheritance_mapping.xml:350
-#: inheritance_mapping.xml:354 inheritance_mapping.xml:355
-#, no-c-format
-msgid "not supported"
-msgstr "サポートしていません"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"CREDIT_PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"amount\"
column=\"CREDIT_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"CASH_PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"amount\"
column=\"CASH_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"CHEQUE_PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"amount\"
column=\"CHEQUE_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"CREDIT_PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"amount\"
column=\"CREDIT_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"CASH_PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"amount\"
column=\"CASH_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"CHEQUE_PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"amount\"
column=\"CHEQUE_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ "</class>"
-#. Tag: literal
-#: inheritance_mapping.xml:351
-#, no-c-format
-msgid "<many-to-any>"
-msgstr "<many-to-any>"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<any name=\"payment\" meta-type=\"string\"
id-type=\"long\">\n"
+#~ " <meta-value value=\"CREDIT\"
class=\"CreditCardPayment\"/>\n"
+#~ " <meta-value value=\"CASH\"
class=\"CashPayment\"/>\n"
+#~ " <meta-value value=\"CHEQUE\"
class=\"ChequePayment\"/>\n"
+#~ " <column name=\"PAYMENT_CLASS\"/>\n"
+#~ " <column name=\"PAYMENT_ID\"/>\n"
+#~ "</any>]]>"
+#~ msgstr ""
+#~ "<any name=\"payment\" meta-type=\"string\"
id-type=\"long\">\n"
+#~ " <meta-value value=\"CREDIT\"
class=\"CreditCardPayment\"/>\n"
+#~ " <meta-value value=\"CASH\"
class=\"CashPayment\"/>\n"
+#~ " <meta-value value=\"CHEQUE\"
class=\"ChequePayment\"/>\n"
+#~ " <column name=\"PAYMENT_CLASS\"/>\n"
+#~ " <column name=\"PAYMENT_ID\"/>\n"
+#~ "</any>"
-#. Tag: literal
-#: inheritance_mapping.xml:352
-#, no-c-format
-msgid ""
-"s.createCriteria(Payment.class).add( Restrictions.idEq(id) ).uniqueResult()"
-msgstr ""
-"s.createCriteria(Payment.class).add( Restrictions.idEq(id) ).uniqueResult()"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"CREDIT_PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <discriminator column=\"CREDIT_CARD\"
type=\"string\"/>\n"
+#~ " <property name=\"amount\"
column=\"CREDIT_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <subclass name=\"MasterCardPayment\"
discriminator-value=\"MDC\"/>\n"
+#~ " <subclass name=\"VisaPayment\"
discriminator-value=\"VISA\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"NonelectronicTransaction\"
table=\"NONELECTRONIC_TXN\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"TXN_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " ...\n"
+#~ " <joined-subclass name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " <property name=\"amount\"
column=\"CASH_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " </joined-subclass>\n"
+#~ " <joined-subclass name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " <property name=\"amount\"
column=\"CHEQUE_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " </joined-subclass>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"CreditCardPayment\"
table=\"CREDIT_PAYMENT\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"CREDIT_PAYMENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <discriminator column=\"CREDIT_CARD\"
type=\"string\"/>\n"
+#~ " <property name=\"amount\"
column=\"CREDIT_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " <subclass name=\"MasterCardPayment\"
discriminator-value=\"MDC\"/"
+#~ ">\n"
+#~ " <subclass name=\"VisaPayment\"
discriminator-value=\"VISA\"/>\n"
+#~ "</class>\n"
+#~ "\n"
+#~ "<class name=\"NonelectronicTransaction\"
table=\"NONELECTRONIC_TXN"
+#~ "\">\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"TXN_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " ...\n"
+#~ " <joined-subclass name=\"CashPayment\"
table=\"CASH_PAYMENT\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " <property name=\"amount\"
column=\"CASH_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " </joined-subclass>\n"
+#~ " <joined-subclass name=\"ChequePayment\"
table=\"CHEQUE_PAYMENT"
+#~ "\">\n"
+#~ " <key column=\"PAYMENT_ID\"/>\n"
+#~ " <property name=\"amount\"
column=\"CHEQUE_AMOUNT\"/>\n"
+#~ " ...\n"
+#~ " </joined-subclass>\n"
+#~ "</class>"
-#~ msgid "load()/get()"
-#~ msgstr "load()/get()"
+#~ msgid "Features of inheritance mappings"
+#~ msgstr "継承マッピングの機能"
-#~ msgid "Polymorphic <placeholder-1/>"
-#~ msgstr "ポリモーフィズムを使った<placeholder-1/>"
+#~ msgid "Inheritance strategy"
+#~ msgstr "継承戦略"
-#~ msgid "inverse=\"true\""
-#~ msgstr "inverse=\"true\""
+#~ msgid "Polymorphic one-to-one"
+#~ msgstr "一対一のポリモーフィズム"
-#~ msgid "<placeholder-1/> (for <placeholder-2/> only)"
-#~ msgstr "<placeholder-1/> (for <placeholder-2/> only)"
+#~ msgid "Polymorphic one-to-many"
+#~ msgstr "一対多のポリモーフィズム"
+
+#~ msgid "Polymorphic many-to-many"
+#~ msgstr "多対多のポリモーフィズム"
+
+#~ msgid "Polymorphic <literal>load()/get()</literal>"
+#~ msgstr "ポリモーフィックな <literal>load()/get()</literal>"
+
+#~ msgid "Polymorphic queries"
+#~ msgstr "ポリモーフィズムを使ったクエリ"
+
+#~ msgid "Polymorphic joins"
+#~ msgstr "ポリモーフィズムを使った結合"
+
+#~ msgid "<many-to-one>"
+#~ msgstr "<many-to-one>"
+
+#~ msgid "<one-to-one>"
+#~ msgstr "<one-to-one>"
+
+#~ msgid "<one-to-many>"
+#~ msgstr "<one-to-many>"
+
+#~ msgid "<many-to-many>"
+#~ msgstr "<many-to-many>"
+
+#~ msgid "s.get(Payment.class, id)"
+#~ msgstr "s.get(Payment.class, id)"
+
+#~ msgid "from Payment p"
+#~ msgstr "from Payment p"
+
+#~ msgid "supported"
+#~ msgstr "サポート"
+
+#~ msgid "<entry>table per subclass</entry>"
+#~ msgstr "<entry>table per subclass</entry>"
+
+#~ msgid "<any>"
+#~ msgstr "<any>"
+
+#~ msgid "not supported"
+#~ msgstr "サポートしていません"
+
+#~ msgid "<many-to-any>"
+#~ msgstr "<many-to-any>"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/performance.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/performance.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/performance.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,30 +1,30 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:26\n"
+"PO-Revision-Date: 2010-01-20 14:25+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: performance.xml:29
#, no-c-format
msgid "Improving performance"
msgstr "パフォーマンスの改善"
#. Tag: title
-#: performance.xml:32
#, no-c-format
msgid "Fetching strategies"
msgstr "フェッチ戦略"
#. Tag: para
-#: performance.xml:34
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate uses a <emphasis>fetching strategy</emphasis> to retrieve
"
"associated objects if the application needs to navigate the association. "
@@ -32,31 +32,28 @@
"by a particular HQL or <literal>Criteria</literal> query."
msgstr ""
"<emphasis>フェッチ戦略</emphasis> は、アプリケーションが関連をナビゲートする"
-"必要がある ときに、Hibernateが関連オブジェクトを復元するために使用する戦略で"
-"す。フェッチ戦略はO/Rマッピングの メタデータに宣言するか、特定のHQL、 "
+"必要があるときに、 Hibernate が関連オブジェクトを復元するために使用する戦略で"
+"す。フェッチ戦略は O/R マッピングのメタデータに宣言するか、特定の HQL 、 "
"<literal>Criteria</literal> クエリでオーバーライドします。"
#. Tag: para
-#: performance.xml:41
#, no-c-format
msgid "Hibernate3 defines the following fetching strategies:"
-msgstr "Hibernate3は次に示すフェッチ戦略を定義しています。"
+msgstr "Hibernate3 は次に示すフェッチ戦略を定義しています:"
#. Tag: para
-#: performance.xml:47
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Join fetching</emphasis>: Hibernate retrieves the associated
"
"instance or collection in the same <literal>SELECT</literal>, using an
"
"<literal>OUTER JOIN</literal>."
msgstr ""
-"<emphasis>結合フェッチ</emphasis> - Hibernateは <literal>OUTER
JOIN</"
-"literal> を使って、 関連するインスタンスやコレクションを1つの "
+"<emphasis>結合フェッチ</emphasis> - Hibernate は <literal>OUTER
JOIN</"
+"literal> を使って、関連するインスタンスやコレクションを1つの "
"<literal>SELECT</literal> で復元します。"
#. Tag: para
-#: performance.xml:54
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Select fetching</emphasis>: a second
<literal>SELECT</literal> is "
"used to retrieve the associated entity or collection. Unless you explicitly "
@@ -65,12 +62,11 @@
msgstr ""
"<emphasis>セレクトフェッチ</emphasis> - 2回目の
<literal>SELECT</literal> で"
"関連するエンティティやコレクションを復元します。 <literal>lazy=\"false\"</"
-"literal> で明示的に遅延フェッチを無効にしなければ、この2回目のselectは実際に "
-"関連にアクセスしたときのみ実行されるでしょう。"
+"literal> で明示的に遅延フェッチを無効にしなければ、この2回目の select は実際"
+"に関連にアクセスしたときのみ実行されるでしょう。"
#. Tag: para
-#: performance.xml:63
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Subselect fetching</emphasis>: a second
<literal>SELECT</literal> "
"is used to retrieve the associated collections for all entities retrieved in
"
@@ -80,13 +76,12 @@
msgstr ""
"<emphasis>サブセレクトフェッチ</emphasis> - 2回目の
<literal>SELECT</"
"literal> で、直前のクエリやフェッチで復元したすべての要素に関連するコレクショ"
-"ンを 復元します。 <literal>lazy=\"false\"</literal>
で明示的に遅延フェッチを"
-"無効にしなければ、この2回目のselectは実際に 関連にアクセスしたときのみ実行さ"
-"れるでしょう。"
+"ンを復元します。 <literal>lazy=\"false\"</literal>
で明示的に遅延フェッチを無"
+"効にしなければ、この2回目の select は実際に関連にアクセスしたときのみ実行され"
+"るでしょう。"
#. Tag: para
-#: performance.xml:72
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Batch fetching</emphasis>: an optimization strategy for
select "
"fetching. Hibernate retrieves a batch of entity instances or collections in "
@@ -94,66 +89,60 @@
"foreign keys."
msgstr ""
"<emphasis>バッチフェッチ</emphasis> - セレクトフェッチのための最適化された戦"
-"略 - Hibernateはエンティティのインスタンスやコレクションの一群を1回の "
+"略 - Hibernate はエンティティのインスタンスやコレクションの一群を1回の "
"<literal>SELECT</literal> で復元します。これは主キーや外部キーのリストを指定"
-"することに により行います。"
+"することにより行います。"
#. Tag: para
-#: performance.xml:81
#, no-c-format
msgid "Hibernate also distinguishes between:"
-msgstr "Hibernateは次に示す戦略とも区別をします。"
+msgstr "Hibernate は次に示す戦略とも区別をします: "
#. Tag: para
-#: performance.xml:87
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Immediate fetching</emphasis>: an association, collection or
"
"attribute is fetched immediately when the owner is loaded."
msgstr ""
"<emphasis>即時フェッチ</emphasis> - 所有者のオブジェクトがロードされたとき"
-"に、 関連、コレクションは即時にフェッチされます。"
+"に、関連、コレクションは即時にフェッチされます。"
#. Tag: para
-#: performance.xml:93
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Lazy collection fetching</emphasis>: a collection is fetched
when "
"the application invokes an operation upon that collection. This is the "
"default for collections."
msgstr ""
"<emphasis>遅延コレクションフェッチ</emphasis> - アプリケーションがコレクショ"
-"ンに 対して操作を行ったときにコレクションをフェッチします。 (これはコレクショ"
-"ンに対するデフォルトの動作です)"
+"ンに対して操作を行ったときにコレクションをフェッチします。(これはコレクション"
+"に対するデフォルトの動作です)"
#. Tag: para
-#: performance.xml:100
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>\"Extra-lazy\" collection fetching</emphasis>:
individual elements "
"of the collection are accessed from the database as needed. Hibernate tries "
"not to fetch the whole collection into memory unless absolutely needed. It "
"is suitable for large collections."
msgstr ""
-"<emphasis>\"特別な遅延\"コレクションフェッチ</emphasis> - コレクションの要素 "
-"1つ1つが独立して、必要なときにデータベースから取得されます。 Hibernateは必"
-"要ないならば、コレクション全体をメモリにフェッチすることは 避けます(とても大"
+"<emphasis>「特別な遅延」コレクションフェッチ</emphasis> - コレクションの要素"
+"1つ1つが独立して、必要なときにデータベースから取得されます。 Hibernate は必"
+"要ないならば、コレクション全体をメモリにフェッチすることは避けます(とても大"
"きなコレクションに適しています)。"
#. Tag: para
-#: performance.xml:108
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Proxy fetching</emphasis>: a single-valued association is
fetched "
"when a method other than the identifier getter is invoked upon the "
"associated object."
msgstr ""
-"<emphasis>プロキシフェッチ</emphasis> - 単一値関連は、識別子のgetter以外の メ"
-"ソッドが関連オブジェクトで呼び出されるときにフェッチされます。"
+"<emphasis>プロキシフェッチ</emphasis> - 単一値関連は、識別子の getter 以外の"
+"メソッドが関連オブジェクトで呼び出されるときにフェッチされます。"
#. Tag: para
-#: performance.xml:115
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>\"No-proxy\" fetching</emphasis>: a single-valued
association is "
"fetched when the instance variable is accessed. Compared to proxy fetching, "
@@ -162,28 +151,26 @@
"visible to the application. This approach requires buildtime bytecode "
"instrumentation and is rarely necessary."
msgstr ""
-"<emphasis>\"プロキシなし\"フェッチ</emphasis> - 単一値関連は、インスタンス変"
-"数に アクセスされたときにフェッチされます。プロキシフェッチと比較すると、この"
-"方法は 遅延の度合いが少ない(関連は識別子にアクセスしただけでもフェッチされま"
-"す) ですが、より透過的で、アプリケーションにプロキシが存在しないように見せま"
-"す。 この方法はビルド時のバイトコード組み込みが必要になり、使う場面はまれで"
+"<emphasis>「プロキシなし」フェッチ</emphasis> - 単一値関連は、インスタンス変"
+"数にアクセスされたときにフェッチされます。プロキシフェッチと比較すると、この"
+"方法は遅延の度合いが少ない(関連は識別子にアクセスしただけでもフェッチされま"
+"す)ですが、より透過的で、アプリケーションにプロキシが存在しないように見せま"
+"す。この方法はビルド時のバイトコード組み込みが必要になり、使う場面はまれで"
"す。"
#. Tag: para
-#: performance.xml:125
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Lazy attribute fetching</emphasis>: an attribute or single
valued "
"association is fetched when the instance variable is accessed. This approach
"
"requires buildtime bytecode instrumentation and is rarely necessary."
msgstr ""
"<emphasis>遅延属性フェッチ</emphasis> - 属性や単一値関連は、インスタンス変数"
-"にアクセスした ときにフェッチされます。この方法はビルド時のバイトコード組み込"
-"みが必要になり、 使う場面はまれです。"
+"にアクセスしたときにフェッチされます。この方法はビルド時のバイトコード組み込"
+"みが必要になり、使う場面はまれです。"
#. Tag: para
-#: performance.xml:134
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"We have two orthogonal notions here: <emphasis>when</emphasis> is the
"
"association fetched and <emphasis>how</emphasis> is it fetched. It is
"
@@ -193,89 +180,67 @@
"class."
msgstr ""
"二つの直行する概念があります: <emphasis>いつ</emphasis> 関連をフェッチする"
-"か、 そして、 <emphasis>どうやって</emphasis> フェッチするか(どんなSQLを使っ"
-"て)。 これらを混同しないでください! <literal>fetch</literal> はパフォーマン"
-"スチューニングに使います。 <literal>lazy</literal> はあるクラスの分離されたイ"
-"ンスタンスのうち、どのデータを常に 使用可能にするかの取り決めを定義します。"
+"か、そして、 <emphasis>どうやって</emphasis> フェッチするか(どんな SQL を"
+"使って)。これらを混同しないでください。 <literal>fetch</literal> はパフォー"
+"マンスチューニングに使います。 <literal>lazy</literal> はあるクラスの分離され"
+"たインスタンスのうち、どのデータを常に使用可能にするかの取り決めを定義しま"
+"す。"
#. Tag: title
-#: performance.xml:143
#, no-c-format
msgid "Working with lazy associations"
msgstr "遅延関連の働き"
#. Tag: para
-#: performance.xml:145
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"By default, Hibernate3 uses lazy select fetching for collections and lazy "
"proxy fetching for single-valued associations. These defaults make sense for
"
"most associations in the majority of applications."
msgstr ""
-"デフォルトでは、Hibernate3はコレクションに対しては遅延セレクトフェッチを使"
-"い、 単一値関連には遅延プロキシフェッチを使います。これらのデフォルト動作はほ"
-"ぼすべての アプリケーションのほぼすべての関連で意味があります。"
+"デフォルトでは、 Hibernate3 はコレクションに対しては遅延セレクトフェッチを使"
+"い、単一値関連には遅延プロキシフェッチを使います。これらのデフォルト動作はほ"
+"ぼすべてのアプリケーションのほぼすべての関連で意味があります。"
#. Tag: para
-#: performance.xml:151
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you set <literal>hibernate.default_batch_fetch_size</literal>,
Hibernate "
"will use the batch fetch optimization for lazy fetching. This optimization "
"can also be enabled at a more granular level."
msgstr ""
"<emphasis>注:</emphasis><literal>hibernate.default_batch_fetch_size</"
-"literal> をセットしたときは、Hibernateは 遅延フェッチのためのバッチフェッチ最"
-"適化を使うでしょう (この最適化はより細かいレベルで有効にすることも出来ま"
+"literal> をセットしたときは、 Hibernate は遅延フェッチのためのバッチフェッチ"
+"最適化を使うでしょう(この最適化はより細かいレベルで有効にすることも出来ま"
"す)。"
#. Tag: para
-#: performance.xml:158
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Please be aware that access to a lazy association outside of the context of "
"an open Hibernate session will result in an exception. For example:"
msgstr ""
"しかし、遅延フェッチは知っておかなければならない一つの問題があります。 "
-"Hibernateのsessionをオープンしているコンテキストの外から遅延関連にアクセスす"
-"ると、 例外が発生します。例:"
+"Hibernate の session をオープンしているコンテキストの外から遅延関連にアクセス"
+"すると、例外が発生します。例:"
-#. Tag: programlisting
-#: performance.xml:164
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[s = sessions.openSession();\n"
-"Transaction tx = s.beginTransaction();\n"
-" \n"
-"User u = (User) s.createQuery(\"from User u where
u.name=:userName\")\n"
-" .setString(\"userName\", userName).uniqueResult();\n"
-"Map permissions = u.getPermissions();\n"
-"\n"
-"tx.commit();\n"
-"s.close();\n"
-"\n"
-"Integer accessLevel = (Integer) permissions.get(\"accounts\"); //
Error!]]>"
-msgstr ""
-
-#. Tag: para
-#: performance.xml:166
-#, fuzzy, no-c-format
-msgid ""
"Since the permissions collection was not initialized when the "
"<literal>Session</literal> was closed, the collection will not be able
to "
"load its state. <emphasis>Hibernate does not support lazy initialization for
"
"detached objects</emphasis>. This can be fixed by moving the code that reads
"
"from the collection to just before the transaction is committed."
msgstr ""
-"<literal>Session</literal> がクローズされたとき、permissionsコレクションは 初"
-"期化されていないため、このコレクションは自身の状態をロードできません。 "
-"<emphasis>Hibernateは切り離されたオブジェクトの遅延初期化はサポート していま"
-"せん</emphasis> 。修正方法として、コレクションから読み込みを行うコードを トラ"
+"<literal>Session</literal> がクローズされたとき、 permissions コレクションは"
+"初期化されていないため、このコレクションは自身の状態をロードできません。 "
+"<emphasis>Hibernate は切り離されたオブジェクトの遅延初期化はサポートしていま"
+"せん</emphasis> 。修正方法として、コレクションから読み込みを行うコードをトラ"
"ンザクションをコミットする直前に移動させます。"
#. Tag: para
-#: performance.xml:174
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Alternatively, you can use a non-lazy collection or association, by "
"specifying <literal>lazy=\"false\"</literal> for the
association mapping. "
@@ -284,16 +249,15 @@
"in your object model, Hibernate will fetch the entire database into memory "
"in every transaction."
msgstr ""
-"一方で、 <literal>lazy=\"false\"</literal> を関連マッピングに指定すること"
-"で、 遅延処理をしないコレクションや関連を使うことが出来ます。 しかしながら、"
-"遅延初期化はほぼすべてのコレクションや関連で使われることを 意図しています。も"
-"しあなたのオブジェクトモデルの中に遅延処理をしない関連を 多く定義してしまう"
-"と、Hibernateは最終的にはトランザクション毎に ほぼ完全なデータベースをメモリ"
-"の中にフェッチすることになるでしょう!"
+"一方で、 <literal>lazy=\"false\"</literal>
を関連マッピングに指定することで、"
+"遅延処理をしないコレクションや関連を使うことが出来ます。しかしながら、遅延初"
+"期化はほぼすべてのコレクションや関連で使われることを意図しています。もしあな"
+"たのオブジェクトモデルの中に遅延処理をしない関連を多く定義してしまうと、 "
+"Hibernate は最終的にはトランザクション毎にほぼ完全なデータベースをメモリの中"
+"にフェッチすることになるでしょう。"
#. Tag: para
-#: performance.xml:183
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"On the other hand, you can use join fetching, which is non-lazy by nature, "
"instead of select fetching in a particular transaction. We will now explain "
@@ -301,93 +265,67 @@
"choosing a fetch strategy are identical for single-valued associations and "
"collections."
msgstr ""
-"他方では、特定のトランザクションにおいてセレクトフェッチの代わりに 結合フェッ"
-"チ(当然これは遅延処理ではなくなります)を選択したいことが 時々あります。これ"
-"からフェッチ戦略をカスタマイズする方法をお見せします。 Hibernate3では、フェッ"
-"チ戦略を選択する仕組みは単一値関連とコレクションで 変わりはありません。"
+"他方では、特定のトランザクションにおいてセレクトフェッチの代わりに結合フェッ"
+"チ(当然これは遅延処理ではなくなります)を選択したいことが時々あります。これ"
+"からフェッチ戦略をカスタマイズする方法をお見せします。 Hibernate3 では、"
+"フェッチ戦略を選択する仕組みは単一値関連とコレクションで変わりはありません。"
#. Tag: title
-#: performance.xml:194
#, no-c-format
msgid "Tuning fetch strategies"
msgstr "フェッチ戦略のチューニング"
#. Tag: para
-#: performance.xml:196
#, no-c-format
msgid ""
"Select fetching (the default) is extremely vulnerable to N+1 selects "
"problems, so we might want to enable join fetching in the mapping document:"
msgstr ""
-"セレクトフェッチ(デフォルト)はN+1セレクト問題という大きな弱点があるため、 "
-"マッピング定義で結合フェッチを有効にすることができます。"
+"セレクトフェッチ(デフォルト)は N+1 セレクト問題という大きな弱点があるため、"
+"マッピング定義で結合フェッチを有効にすることができます:"
-#. Tag: programlisting
-#: performance.xml:201
-#, no-c-format
-msgid ""
-"<![CDATA[<set name=\"permissions\" \n"
-" fetch=\"join\">\n"
-" <key column=\"userId\"/>\n"
-" <one-to-many class=\"Permission\"/>\n"
-"</set]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: performance.xml:203
-#, no-c-format
-msgid "<![CDATA[<many-to-one name=\"mother\" class=\"Cat\"
fetch=\"join\"/>]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:205
#, no-c-format
msgid ""
"The <literal>fetch</literal> strategy defined in the mapping document
"
"affects:"
msgstr ""
"マッピング定義で定義した <literal>フェッチ</literal> 戦略は次のものに影響しま"
-"す。"
+"す:"
#. Tag: para
-#: performance.xml:211
#, no-c-format
msgid "retrieval via <literal>get()</literal> or
<literal>load()</literal>"
msgstr "<literal>get()</literal> や <literal>load()</literal>
による復元"
#. Tag: para
-#: performance.xml:216
#, no-c-format
msgid "retrieval that happens implicitly when an association is navigated"
msgstr "関連にナビゲートしたときに発生する暗黙的な復元"
#. Tag: para
-#: performance.xml:221
#, no-c-format
msgid "<literal>Criteria</literal> queries"
msgstr "<literal>Criteria</literal> クエリ"
#. Tag: para
-#: performance.xml:226
#, no-c-format
msgid "HQL queries if <literal>subselect</literal> fetching is
used"
-msgstr "<literal>サブセレクト</literal> フェッチを使うHQLクエリ"
+msgstr "<literal>サブセレクト</literal> フェッチを使う HQL クエリ"
#. Tag: para
-#: performance.xml:232
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Irrespective of the fetching strategy you use, the defined non-lazy graph is
"
"guaranteed to be loaded into memory. This might, however, result in several "
"immediate selects being used to execute a particular HQL query."
msgstr ""
"たとえどんなフェッチ戦略を使ったとしても、遅延ではないグラフはメモリに読み込"
-"まれることが 保証されます。つまり、特定のHQLクエリを実行するためにいくつかの"
-"SELECT文が即時実行される ことがあるので注意してください。"
+"まれることが保証されます。つまり、特定の HQL クエリを実行するためにいくつか"
+"の SELECT 文が即時実行されることがあるので注意してください。"
#. Tag: para
-#: performance.xml:238
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Usually, the mapping document is not used to customize fetching. Instead, we
"
"keep the default behavior, and override it for a particular transaction, "
@@ -396,64 +334,49 @@
"the <literal>Criteria</literal> query API, you would use "
"<literal>setFetchMode(FetchMode.JOIN)</literal>."
msgstr ""
-"通常は、マッピング定義でフェッチのカスタマイズは行いません。 代わりに、デフォ"
-"ルトの動作のままにしておいて、HQLで <literal>left join fetch</literal> を 指"
-"定することで特定のトランザクションで動作をオーバーライドします。 これは"
-"Hibernateに初回のセレクトで外部結合を使って関連を先にフェッチするように指定し"
-"ています。 <literal>Criteria</literal> クエリのAPIでは、 "
+"通常は、マッピング定義でフェッチのカスタマイズは行いません。代わりに、デフォ"
+"ルトの動作のままにしておいて、 HQL で <literal>left join fetch</literal> を指"
+"定することで特定のトランザクションで動作をオーバーライドします。これは "
+"Hibernate に初回のセレクトで外部結合を使って関連を先にフェッチするように指定"
+"しています。 <literal>Criteria</literal> クエリの API では、 "
"<literal>setFetchMode(FetchMode.JOIN)</literal> を使うことが出来ます。"
#. Tag: para
-#: performance.xml:247
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you want to change the fetching strategy used by
<literal>get()</literal> "
"or <literal>load()</literal>, you can use a
<literal>Criteria</literal> "
"query. For example:"
msgstr ""
-"もし <literal>get()</literal> や <literal>load()</literal>
で使われる フェッ"
-"チ戦略を変えたいと感じたときには、単純に <literal>Criteria</literal> クエリを"
+"もし <literal>get()</literal> や <literal>load()</literal>
で使われるフェッチ"
+"戦略を変えたいと感じたときには、単純に <literal>Criteria</literal> クエリを"
"使ってください。例:"
-#. Tag: programlisting
-#: performance.xml:253
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[User user = (User) session.createCriteria(User.class)\n"
-" .setFetchMode(\"permissions\", FetchMode.JOIN)\n"
-" .add( Restrictions.idEq(userId) )\n"
-" .uniqueResult();]]>"
-msgstr ""
-
-#. Tag: para
-#: performance.xml:255
-#, fuzzy, no-c-format
-msgid ""
"This is Hibernate's equivalent of what some ORM solutions call a \"fetch
plan"
"\"."
msgstr ""
-"(これはいくつかのORMソリューションが\"fetch plan\"と呼んでいるものと同じで"
-"す。)"
+"(これはいくつかの ORM ソリューションが \"fetch plan\" と呼んでいるものと同じ"
+"です。)"
#. Tag: para
-#: performance.xml:259
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A completely different approach to problems with N+1 selects is to use the "
"second-level cache."
msgstr ""
-"N+1セレクト問題を避けるためのまったく違う方法は、第2レベルキャッシュを使うこ"
+"N+1 セレクト問題を避けるためのまったく違う方法は、第2レベルキャッシュを使うこ"
"とです。"
#. Tag: title
-#: performance.xml:267
#, no-c-format
msgid "Single-ended association proxies"
msgstr "単一端関連プロキシ"
#. Tag: para
-#: performance.xml:269
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Lazy fetching for collections is implemented using Hibernate's own "
"implementation of persistent collections. However, a different mechanism is "
@@ -462,27 +385,25 @@
"proxies for persistent objects using runtime bytecode enhancement which is "
"accessed via the CGLIB library."
msgstr ""
-"コレクションの遅延フェッチは、Hibernate自身の実装による永続コレクションを使っ"
-"て 実現しています。しかし、単一端関連における遅延処理では、違う仕組みが 必要"
-"です。対象の関連エンティティはプロキシでなければなりません。Hibernateは (す"
-"ばらしいCGLIBライブラリによる)実行時のバイトコード拡張を 使って永続オブジェ"
-"クトの遅延初期化プロキシを実現しています。"
+"コレクションの遅延フェッチは、 Hibernate 自身の実装による永続コレクションを"
+"使って実現しています。しかし、単一端関連における遅延処理では、違う仕組みが必"
+"要です。対象の関連エンティティはプロキシでなければなりません。 Hibernate は"
+"(すばらしい CGLIB ライブラリによる)実行時のバイトコード拡張を使って永続オブ"
+"ジェクトの遅延初期化プロキシを実現しています。"
#. Tag: para
-#: performance.xml:277
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"At startup, Hibernate3 generates proxies by default for all persistent "
"classes and uses them to enable lazy fetching of
<literal>many-to-one</"
"literal> and <literal>one-to-one</literal> associations."
msgstr ""
-"デフォルトでは、Hibernate3は(開始時に)すべての永続クラスのプロキシを生成"
-"し、 それらを使って、 <literal>many-to-one</literal> や
<literal>one-to-one</"
-"literal> 関連の 遅延フェッチを可能にしています。"
+"デフォルトでは、 Hibernate3 は(開始時に)すべての永続クラスのプロキシを生成"
+"し、それらを使って、 <literal>many-to-one</literal> や
<literal>one-to-one</"
+"literal> 関連の遅延フェッチを可能にしています。"
#. Tag: para
-#: performance.xml:283
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The mapping file may declare an interface to use as the proxy interface for "
"that class, with the <literal>proxy</literal> attribute. By default,
"
@@ -491,36 +412,22 @@
"constructor is recommended for all persistent classes</emphasis>."
msgstr ""
"マッピングファイルで <literal>proxy</literal> 属性によって、クラスのプロキシ"
-"インターフェイスとして 使うインターフェイスを宣言できます。デフォルトでは、"
-"Hibernateはそのクラスのサブクラスを使います。 <emphasis>プロキシクラスは少な"
-"くともパッケージ可視でデフォルトコンストラクタを実装しなければ ならないことに"
-"注意してください。すべての永続クラスにこのコンストラクタを推奨します!</"
+"インターフェースとして使うインターフェースを宣言できます。デフォルトでは、 "
+"Hibernate はそのクラスのサブクラスを使います。 <emphasis>プロキシクラスは少な"
+"くともパッケージ可視でデフォルトコンストラクタを実装しなければならないことに"
+"注意してください。すべての永続クラスにこのコンストラクタを推奨します。</"
"emphasis>"
#. Tag: para
-#: performance.xml:290
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There are potential problems to note when extending this approach to "
"polymorphic classes.For example:"
msgstr ""
"ポリモーフィズムのクラスに対してこの方法を適用するときにいくつか考慮すること"
-"があります。 例:"
+"があります。例:"
-#. Tag: programlisting
-#: performance.xml:294
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Cat\" proxy=\"Cat\">\n"
-" ......\n"
-" <subclass name=\"DomesticCat\">\n"
-" .....\n"
-" </subclass>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:296
#, no-c-format
msgid ""
"Firstly, instances of <literal>Cat</literal> will never be castable to
"
@@ -529,41 +436,14 @@
msgstr ""
"第一に、 <literal>Cat</literal> のインスタンスは
<literal>DomesticCat</"
"literal> にキャストできません。たとえ基となるインスタンスが "
-"<literal>DomesticCat</literal> であったとしてもです。"
+"<literal>DomesticCat</literal> であったとしてもです:"
-#. Tag: programlisting
-#: performance.xml:302
-#, no-c-format
-msgid ""
-"<![CDATA[Cat cat = (Cat) session.load(Cat.class, id); // instantiate a "
-"proxy (does not hit the db)\n"
-"if ( cat.isDomesticCat() ) { // hit the db to initialize "
-"the proxy\n"
-" DomesticCat dc = (DomesticCat) cat; // Error!\n"
-" ....\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:304
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Secondly, it is possible to break proxy
<literal>==</literal>:"
msgstr "第二に、プロキシの <literal>==</literal> は成立しないことがあります。"
-#. Tag: programlisting
-#: performance.xml:308
-#, no-c-format
-msgid ""
-"<![CDATA[Cat cat = (Cat) session.load(Cat.class, id); // "
-"instantiate a Cat proxy\n"
-"DomesticCat dc = \n"
-" (DomesticCat) session.load(DomesticCat.class, id); // acquire new "
-"DomesticCat proxy!\n"
-"System.out.println(cat==dc); // false]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:310
#, no-c-format
msgid ""
"However, the situation is not quite as bad as it looks. Even though we now "
@@ -571,44 +451,33 @@
"still be the same object:"
msgstr ""
"しかし、これは見かけほど悪い状況というわけではありません。たとえ異なったプロ"
-"キシオブジェクトへの 二つの参照があったとしても、基となるインスタンスは同じオ"
-"ブジェクトです。"
+"キシオブジェクトへの二つの参照があったとしても、基となるインスタンスは同じオ"
+"ブジェクトです:"
-#. Tag: programlisting
-#: performance.xml:315
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[cat.setWeight(11.0); // hit the db to initialize the proxy\n"
-"System.out.println( dc.getWeight() ); // 11.0]]>"
-msgstr ""
-
-#. Tag: para
-#: performance.xml:317
-#, fuzzy, no-c-format
-msgid ""
"Third, you cannot use a CGLIB proxy for a <literal>final</literal>
class or "
"a class with any <literal>final</literal> methods."
msgstr ""
"第三に、 <literal>final</literal> クラスや <literal>final</literal>
メソッド"
-"を持つクラスに CGLIBプロキシを使えません。"
+"を持つクラスに CGLIB プロキシを使えません。"
#. Tag: para
-#: performance.xml:322
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Finally, if your persistent object acquires any resources upon instantiation
"
"(e.g. in initializers or default constructor), then those resources will "
"also be acquired by the proxy. The proxy class is an actual subclass of the "
"persistent class."
msgstr ""
-"最後に、もし永続オブジェクトのインスタンス化時(例えば、初期化処理やデフォルト"
-"コンストラクタの中で) になんらかのリソースが必要となるなら、そのリソースもま"
-"たプロキシを通して取得されます。 実際には、プロキシクラスは永続クラスのサブク"
-"ラスです。"
+"最後に、もし永続オブジェクトのインスタンス化時 (例えば、初期化処理やデフォル"
+"トコンストラクタの中で) になんらかのリソースが必要となるなら、そのリソースも"
+"またプロキシを通して取得されます。実際には、プロキシクラスは永続クラスのサブ"
+"クラスです。"
#. Tag: para
-#: performance.xml:328
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"These problems are all due to fundamental limitations in Java's single "
"inheritance model. To avoid these problems your persistent classes must each
"
@@ -618,25 +487,12 @@
"<literal>DomesticCatImpl</literal> implements the interface "
"<literal>DomesticCat</literal>. For example:"
msgstr ""
-"これらの問題はJavaの単一継承モデルの原理上の制限のためです。もしこれらの問題"
-"を避けたいのなら、 ビジネスメソッドを宣言したインターフェイスをそれぞれ永続ク"
-"ラスで実装しなければなりません。 マッピングファイルでこれらのインターフェイス"
-"を指定する必要があります。例:"
+"これらの問題は Java の単一継承モデルの原理上の制限のためです。もしこれらの問"
+"題を避けたいのなら、ビジネスメソッドを宣言したインターフェースをそれぞれ永続"
+"クラスで実装しなければなりません。マッピングファイルでこれらのインターフェー"
+"スを指定する必要があります。例:"
-#. Tag: programlisting
-#: performance.xml:336
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"CatImpl\"
proxy=\"Cat\">\n"
-" ......\n"
-" <subclass name=\"DomesticCatImpl\"
proxy=\"DomesticCat\">\n"
-" .....\n"
-" </subclass>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:338
#, fuzzy, no-c-format
msgid ""
"Then proxies for instances of <literal>Cat</literal> and "
@@ -645,32 +501,19 @@
msgstr ""
"第一に、 <literal>Cat</literal> のインスタンスは
<literal>DomesticCat</"
"literal> にキャストできません。たとえ基となるインスタンスが "
-"<literal>DomesticCat</literal> であったとしてもです。"
+"<literal>DomesticCat</literal> であったとしてもです:"
-#. Tag: programlisting
-#: performance.xml:343
-#, no-c-format
-msgid ""
-"<![CDATA[Cat cat = (Cat) session.load(CatImpl.class, catid);\n"
-"Iterator iter = session.createQuery(\"from CatImpl as cat where cat."
-"name='fritz'\").iterate();\n"
-"Cat fritz = (Cat) iter.next();]]>"
-msgstr ""
-
#. Tag: title
-#: performance.xml:346
#, no-c-format
msgid "Note"
msgstr ""
#. Tag: para
-#: performance.xml:347
#, fuzzy, no-c-format
msgid "<literal>list()</literal> does not usually return proxies."
-msgstr "<literal>Criteria</literal> クエリ"
+msgstr "<literal>full join</literal> (たいていの場合使いづらい)"
#. Tag: para
-#: performance.xml:352
#, no-c-format
msgid ""
"Relationships are also lazily initialized. This means you must declare any "
@@ -678,56 +521,50 @@
"literal>."
msgstr ""
"関連も遅延初期化されます。これはプロパティを <literal>Cat</literal> 型で宣言"
-"しなければ ならないことを意味します。 <literal>CatImpl</literal> ではありませ"
+"しなければならないことを意味します。 <literal>CatImpl</literal> ではありませ"
"ん。"
#. Tag: para
-#: performance.xml:357
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Certain operations do <emphasis>not</emphasis> require proxy
initialization:"
msgstr ""
"プロキシの初期化を <emphasis>必要としない</emphasis> 操作も存在します。"
#. Tag: para
-#: performance.xml:363
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>equals()</literal>: if the persistent class does not override
"
"<literal>equals()</literal>"
msgstr ""
-"<literal>equals()</literal> (永続クラスが
<literal>equals()</literal> を "
-"オーバーライドしないとき)"
+"<literal>equals()</literal> (永続クラスが
<literal>equals()</literal> をオー"
+"バーライドしないとき)"
#. Tag: para
-#: performance.xml:369
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>hashCode()</literal>: if the persistent class does not
override "
"<literal>hashCode()</literal>"
msgstr ""
-"<literal>hashCode()</literal> (永続クラスが
<literal>hashCode()</literal> "
-"を オーバーライドしないとき)"
+"<literal>hashCode()</literal> (永続クラスが
<literal>hashCode()</literal> を"
+"オーバーライドしないとき)"
#. Tag: para
-#: performance.xml:375
#, no-c-format
msgid "The identifier getter method"
-msgstr "識別子のgetterメソッド"
+msgstr "識別子の getter メソッド"
#. Tag: para
-#: performance.xml:381
#, no-c-format
msgid ""
"Hibernate will detect persistent classes that override
<literal>equals()</"
"literal> or <literal>hashCode()</literal>."
msgstr ""
-"Hibernateは <literal>equals()</literal> や
<literal>hashCode()</literal> を"
-"オーバーライドした 永続クラスを検出します。"
+"Hibernate は <literal>equals()</literal> や
<literal>hashCode()</literal> を"
+"オーバーライドした永続クラスを検出します。"
#. Tag: para
-#: performance.xml:386
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"By choosing <literal>lazy=\"no-proxy\"</literal> instead of
the default "
"<literal>lazy=\"proxy\"</literal>, you can avoid problems
associated with "
@@ -735,19 +572,17 @@
"all operations will result in immediate proxy initialization."
msgstr ""
"デフォルトの <literal>lazy=\"proxy\"</literal> の代わりに、
<literal>lazy="
-"\"no-proxy\"</literal> を 選んだことで、型変換に関連する問題を回避することが"
-"出来ます。 しかし、ビルド時のバイトコード組み込みが必要になり、どのような操作"
-"であっても、 ただちにプロキシの初期化を行うことになるでしょう。"
+"\"no-proxy\"</literal> を選んだことで、型変換に関連する問題を回避することが出"
+"来ます。しかし、ビルド時のバイトコード組み込みが必要になり、どのような操作で"
+"あっても、ただちにプロキシの初期化を行うことになるでしょう。"
#. Tag: title
-#: performance.xml:396
#, no-c-format
msgid "Initializing collections and proxies"
msgstr "コレクションとプロキシの初期化"
#. Tag: para
-#: performance.xml:398
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <literal>LazyInitializationException</literal> will be thrown by
Hibernate "
"if an uninitialized collection or proxy is accessed outside of the scope of "
@@ -755,13 +590,12 @@
"or having the reference to the proxy is in the detached state."
msgstr ""
"<literal>LazyInitializationException</literal> は、
<literal>Session</"
-"literal> のスコープ外から 初期化していないコレクションやプロキシにアクセスさ"
-"れたときに、Hibernateによってスローされます。 すなわち、コレクションやプロキ"
-"シへの参照を持つエンティティが分離された状態の時です。"
+"literal> のスコープ外から初期化していないコレクションやプロキシにアクセスされ"
+"たときに、 Hibernate によってスローされます。すなわち、コレクションやプロキシ"
+"への参照を持つエンティティが分離された状態の時です。"
#. Tag: para
-#: performance.xml:404
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Sometimes a proxy or collection needs to be initialized before closing the "
"<literal>Session</literal>. You can force initialization by calling
"
@@ -770,14 +604,13 @@
"and it is not convenient for generic code."
msgstr ""
"<literal>Session</literal> をクローズする前にプロキシやコレクションの初期化を"
-"確実に 行いたいときがあります。もちろん、 <literal>cat.getSex()</literal> や "
+"確実に行いたいときがあります。もちろん、 <literal>cat.getSex()</literal> や "
"<literal>cat.getKittens().size()</literal> などを常に呼び出すことで初期化を強"
-"制することはできます。 しかしこれはコードを読む人を混乱させ、汎用的なコードと"
+"制することはできます。しかしこれはコードを読む人を混乱させ、汎用的なコードと"
"いう点からも不便です。"
#. Tag: para
-#: performance.xml:411
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The static methods <literal>Hibernate.initialize()</literal> and
"
"<literal>Hibernate.isInitialized()</literal>, provide the application
with a "
@@ -787,17 +620,16 @@
"literal> is still open. <literal>Hibernate.initialize( cat.getKittens()
)</"
"literal> has a similar effect for the collection of kittens."
msgstr ""
-"staticメソッドの <literal>Hibernate.initialize()</literal> や "
+"static メソッドの <literal>Hibernate.initialize()</literal> や "
"<literal>Hibernate.isInitialized()</literal> は遅延初期化のコレクションやプロ"
"キシを扱うときに便利な方法をアプリケーションに提供します。 "
"<literal>Hibernate.initialize(cat)</literal> は、
<literal>Session</literal> "
"がオープンしている限りは <literal>cat</literal> プロキシを強制的に初期化しま"
-"す。 <literal>Hibernate.initialize( cat.getKittens() )</literal>
はkittensコ"
-"レクションに対して同様の 効果があります。"
+"す。 <literal>Hibernate.initialize( cat.getKittens() )</literal> は
kittens "
+"コレクションに対して同様の効果があります。"
#. Tag: para
-#: performance.xml:420
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Another option is to keep the <literal>Session</literal> open until all
"
"required collections and proxies have been loaded. In some application "
@@ -809,15 +641,14 @@
msgstr ""
"別の選択肢として、必要なすべてのコレクションやプロキシがロードされるまで "
"<literal>Session</literal> をオープンにしておく方法があります。いくつかのアプ"
-"リケーションの アーキテクチャでは、特にHibernateによるデータアクセスを行う"
-"コードと、それを使う コードが異なるアプリケーションのレイヤーや、物理的に異な"
-"るプロセッサのときには、 コレクションが初期化されるときに <literal>Session</"
-"literal> がオープンしていることを 保証する問題があります。この問題に対しては2"
-"つの基本的な方法があります。"
+"リケーションのアーキテクチャでは、特に Hibernate によるデータアクセスを行う"
+"コードと、それを使うコードが異なるアプリケーションのレイヤーや、物理的に異な"
+"るプロセッサのときには、コレクションが初期化されるときに <literal>Session</"
+"literal> がオープンしていることを保証する問題があります。この問題に対しては2"
+"つの基本的な方法があります:"
#. Tag: para
-#: performance.xml:431
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In a web-based application, a servlet filter can be used to close the "
"<literal>Session</literal> only at the end of a user request, once the
"
@@ -829,18 +660,17 @@
"rendering of the view. See the Hibernate Wiki for examples of this \"Open
"
"Session in View\" pattern."
msgstr ""
-"Webベースのアプリケーションでは、 ビューのレンダリングが完了し、リクエストが"
+"Web ベースのアプリケーションでは、ビューのレンダリングが完了し、リクエストが"
"終わる一番最後で <literal>Session</literal> をクローズするために、サーブレッ"
"トフィルタを使うことができます( <emphasis>Open Session in View</emphasis> パ"
"ターンです)。もちろん、アプリケーション基盤の例外処理の正確性が非常に重要に"
-"なります。 ビューのレンダリング中に例外が発生したときでさえ、ユーザに処理が戻"
-"る前に <literal>Session</literal> のクローズとトランザクションの終了を行う こ"
-"とが不可欠になります。 HibernateのWikiに載っている\"Open Session in View\"パ"
-"ターンの例を参照してください。"
+"なります。ビューのレンダリング中に例外が発生したときでさえ、ユーザーに処理が"
+"戻る前に <literal>Session</literal> のクローズとトランザクションの終了を行う"
+"ことが不可欠になります。 Hibernate の Wiki に載っている \"Open Session in "
+"View\" パターンの例を参照してください。"
#. Tag: para
-#: performance.xml:444
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In an application with a separate business tier, the business logic must "
"\"prepare\" all collections that the web tier needs before returning.
This "
@@ -854,21 +684,20 @@
"literal>. This is usually easier if you adopt the
<emphasis>Command</"
"emphasis> pattern instead of a <emphasis>Session
Facade</emphasis>."
msgstr ""
-"ビジネス層が分離しているアプリケーションでは、ビジネスロジックは Web層で必要"
-"になるすべてのコレクションを事前に\"準備\"する必要があります。 これは特定の"
-"ユースケースで必要となるプレゼンテーション/Web層に対し、 ビジネス層がすべての"
-"データをロードし、すべてのデータを初期化して返すべきと いうことを意味していま"
-"す。通常は、アプリケーションはWeb層で必要なコレクション それぞれに対して "
-"<literal>Hibernate.initialize()</literal> を呼び出すか (この呼び出しはセッ"
-"ションをクローズする前に行う必要があります)、 Hibernateクエリの "
+"ビジネス層が分離しているアプリケーションでは、ビジネスロジックは Web 層で必要"
+"になるすべてのコレクションを事前に「準備」する必要があります。これは特定の"
+"ユースケースで必要となるプレゼンテーション/ Web 層に対し、ビジネス層がすべて"
+"のデータをロードし、すべてのデータを初期化して返すべきということを意味してい"
+"ます。通常は、アプリケーションは Web 層で必要なコレクションそれぞれに対して "
+"<literal>Hibernate.initialize()</literal> を呼び出すか(この呼び出しはセッ"
+"ションをクローズする前に行う必要があります)、 Hibernate クエリの "
"<literal>FETCH</literal> 節や <literal>Criteria</literal> の
"
-"<literal>FetchMode.JOIN</literal> を使ってコレクションを先に復元します。 普通"
+"<literal>FetchMode.JOIN</literal> を使ってコレクションを先に復元します。普通"
"は <emphasis>Session Facade</emphasis> パターンの代わりに
<emphasis>Command</"
"emphasis> パターンを採用するほうがより簡単です。"
#. Tag: para
-#: performance.xml:459
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also attach a previously loaded object to a new
<literal>Session</"
"literal> with <literal>merge()</literal> or
<literal>lock()</literal> before "
@@ -879,41 +708,30 @@
"初期化されていないコレクション(もしくは他のプロキシ)にアクセスする前に、 "
"<literal>merge()</literal> や <literal>lock()</literal>
を使って新しい "
"<literal>Session</literal> に以前にロードされたオブジェクトを追加することも出"
-"来ます。 アドホックなトランザクションのセマンティクスを導入したので、"
-"Hibernateは これを自動的に行わず、 <emphasis>行うべきでもありません</"
-"emphasis> !"
+"来ます。アドホックなトランザクションのセマンティクスを導入したので、 "
+"Hibernate はこれを自動的に行わず、 <emphasis>行うべきでもありません</"
+"emphasis> 。"
#. Tag: para
-#: performance.xml:469
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Sometimes you do not want to initialize a large collection, but still need "
"some information about it, like its size, for example, or a subset of the "
"data."
msgstr ""
"大きなコレクションを初期化したくはないが、コレクションについてのなんらかの情"
-"報(サイズのような) やデータのサブセットを必要とすることがあります。"
+"報(サイズのような)やデータのサブセットを必要とすることがあります。"
#. Tag: para
-#: performance.xml:474
#, no-c-format
msgid ""
"You can use a collection filter to get the size of a collection without "
"initializing it:"
msgstr ""
"コレクションフィルタを使うことで、初期化せずにコレクションのサイズを取得する"
-"ことが出来ます。"
+"ことが出来ます:"
-#. Tag: programlisting
-#: performance.xml:478
-#, no-c-format
-msgid ""
-"<![CDATA[( (Integer) s.createFilter( collection, \"select count(*)\"
).list"
-"().get(0) ).intValue()]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:480
#, no-c-format
msgid ""
"The <literal>createFilter()</literal> method is also used to
efficiently "
@@ -921,40 +739,29 @@
"collection:"
msgstr ""
"<literal>createFilter()</literal> メソッドは、コレクション全体を初期化する必"
-"要なしに、コレクションの サブセットを復元するために効果的に使えます。"
+"要なしに、コレクションのサブセットを復元するために効果的に使えます:"
-#. Tag: programlisting
-#: performance.xml:485
-#, no-c-format
-msgid ""
-"<![CDATA[s.createFilter( lazyCollection,
\"\").setFirstResult(0)."
-"setMaxResults(10).list();]]>"
-msgstr ""
-
#. Tag: title
-#: performance.xml:490
#, no-c-format
msgid "Using batch fetching"
msgstr "バッチフェッチの使用"
#. Tag: para
-#: performance.xml:492
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Using batch fetching, Hibernate can load several uninitialized proxies if "
"one proxy is accessed. Batch fetching is an optimization of the lazy select "
"fetching strategy. There are two ways you can configure batch fetching: on "
"the class level and the collection level."
msgstr ""
-"Hibernateはバッチフェッチを効率的に使用できます。一つのプロキシ(もしくはコレ"
-"クション)がアクセス されると、Hibernateはいくつかの初期化していないプロキシ"
-"をロードすることができます。バッチフェッチは 遅延セレクトフェッチ戦略に対する"
-"最適化です。バッチフェッチの調整には2つの方法があります。 クラスレベルとコレ"
-"クションレベルです。"
+"Hibernate はバッチフェッチを効率的に使用できます。一つのプロキシ(もしくはコ"
+"レクション)がアクセスされると、 Hibernate はいくつかの初期化していないプロキ"
+"シをロードすることができます。バッチフェッチは遅延セレクトフェッチ戦略に対す"
+"る最適化です。バッチフェッチの調整には2つの方法があります。クラスレベルとコ"
+"レクションレベルです。"
#. Tag: para
-#: performance.xml:498
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Batch fetching for classes/entities is easier to understand. Consider the "
"following example: at runtime you have 25 <literal>Cat</literal>
instances "
@@ -969,33 +776,25 @@
msgstr ""
"クラス、要素のバッチフェッチは理解が簡単です。実行時の次の場面を想像してくだ"
"さい。 <literal>Session</literal> にロードされた25個の
<literal>Cat</"
-"literal> インスタンスが存在し、 それぞれの <literal>Cat</literal> は "
+"literal> インスタンスが存在し、それぞれの <literal>Cat</literal> は "
"<literal>owner</literal> である <literal>Person</literal>
への関連を持ちま"
"す。 <literal>Person</literal> クラスは
<literal>lazy=\"true\"</literal> のプ"
-"ロキシでマッピングされています。 もし今すべてのCatに対して繰り返し "
-"<literal>getOwner()</literal> を呼び出すと、Hibernateは デフォルトでは25回の "
-"<literal>SELECT</literal> を実行し、ownerプロキシの復元をします。 この振る舞"
-"いを <literal>Person</literal> のマッピングの
<literal>batch-size</literal> "
-"の指定で調整できます。"
+"ロキシでマッピングされています。もし今すべての Cat に対して繰り返し "
+"<literal>getOwner()</literal> を呼び出すと、 Hibernate はデフォルトでは25回"
+"の <literal>SELECT</literal> を実し、 owner プロキシの復元をします。この振る"
+"舞いを <literal>Person</literal> のマッピングの
<literal>batch-size</"
+"literal> の指定で調整できます。"
-#. Tag: programlisting
-#: performance.xml:508
-#, no-c-format
-msgid "<![CDATA[<class name=\"Person\"
batch-size=\"10\">...</class>]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:510
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate will now execute only three queries: the pattern is 10, 10, 5."
msgstr ""
-"Hibernateはクエリを3回だけを実行するようになります。パターンは10, 10, 5で"
+"Hibernate はクエリを3回だけを実行するようになります。パターンは 10, 10, 5 で"
"す。"
#. Tag: para
-#: performance.xml:514
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also enable batch fetching of collections. For example, if each "
"<literal>Person</literal> has a lazy collection of
<literal>Cat</literal>s, "
@@ -1007,25 +806,14 @@
msgstr ""
"コレクションのバッチフェッチも有効にすることが出来ます。例として、それぞれの "
"<literal>Person</literal> が <literal>Cat</literal>
の遅延コレクションを持っ"
-"ており、 10個のPersonが <literal>Sesssion</literal> にロードされたとすると、"
-"すべてのPersonに 対して繰り返し <literal>getCats()</literal> を呼び出すこと"
-"で、計10回の <literal>SELECT</literal> が発生します。もし
<literal>Person</"
-"literal> のマッピングで <literal>cats</literal> コレクションのバッチフェッチ"
-"を有効にすれば、Hibernateはコレクションの事前フェッチが出来ます。"
+"ており、 10 個の Person が <literal>Sesssion</literal> にロードされたとする"
+"と、すべての Person に対して繰り返し <literal>getCats()</literal> を呼び出す"
+"ことで、計10回の <literal>SELECT</literal> が発生します。もし "
+"<literal>Person</literal> のマッピングで <literal>cats</literal>
コレクション"
+"のバッチフェッチを有効にすれば、 Hibernate はコレクションの事前フェッチが出来"
+"ます。"
-#. Tag: programlisting
-#: performance.xml:523
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <set name=\"cats\" batch-size=\"3\">\n"
-" ...\n"
-" </set>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:525
#, no-c-format
msgid ""
"With a <literal>batch-size</literal> of 3, Hibernate will load 3, 3, 3,
1 "
@@ -1033,53 +821,48 @@
"attribute depends on the expected number of uninitialized collections in a "
"particular <literal>Session</literal>."
msgstr ""
-"<literal>batch-size</literal> が3なので、Hibernateは4回の
<literal>SELECT</"
-"literal> で3個、3個、3個、1個をロードします。繰り返すと、属性の値は特定の "
-"<literal>Session</literal> の中の初期化されていないコレクションの期待数に依存"
-"します。"
+"<literal>batch-size</literal> が 3 なので、 Hibernate は 4 回の "
+"<literal>SELECT</literal> で 3 個、 3 個、 3 個、 1 個をロードします。繰り返"
+"すと、属性の値は特定の <literal>Session</literal> の中の初期化されていないコ"
+"レクションの期待数に依存します。"
#. Tag: para
-#: performance.xml:531
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Batch fetching of collections is particularly useful if you have a nested "
"tree of items, i.e. the typical bill-of-materials pattern. However, a "
"<emphasis>nested set</emphasis> or a <emphasis>materialized
path</emphasis> "
"might be a better option for read-mostly trees."
msgstr ""
-"コレクションのバッチフェッチはアイテムのネストしたツリー、 すなわち、代表的な"
-"部品表のパターンが ある場合に特に有用です。(しかし、読み込みが多いツリーで"
-"は <emphasis>ネストしたset</emphasis> や
<emphasis>具体化したパス</emphasis> "
-"がよりよい選択になります。)"
+"コレクションのバッチフェッチはアイテムのネストしたツリー、すなわち、代表的な"
+"部品表のパターンがある場合に特に有用です。(しかし、読み込みが多いツリーでは "
+"<emphasis>ネストした set</emphasis> や
<emphasis>具体化したパス</emphasis> が"
+"よりよい選択になります。)"
#. Tag: title
-#: performance.xml:540
#, no-c-format
msgid "Using subselect fetching"
msgstr "サブセレクトフェッチの使用"
#. Tag: para
-#: performance.xml:542
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If one lazy collection or single-valued proxy has to be fetched, Hibernate "
"will load all of them, re-running the original query in a subselect. This "
"works in the same way as batch-fetching but without the piecemeal loading."
msgstr ""
-"一つの遅延コレクションや単一値プロキシがフェッチされなければいけないとき、"
-"Hibernateは それらすべてをロードし、サブセレクトのオリジナルクエリが再度実行"
-"されます。これは バッチフェッチと同じ方法で動き、少しずつのロードは行いませ"
+"一つの遅延コレクションや単一値プロキシがフェッチされなければいけないとき、 "
+"Hibernate はそれらすべてをロードし、サブセレクトのオリジナルクエリが再度実行"
+"されます。これはバッチフェッチと同じ方法で動き、少しずつのロードは行いませ"
"ん。"
#. Tag: title
-#: performance.xml:553
#, no-c-format
msgid "Using lazy property fetching"
msgstr "遅延プロパティフェッチの使用"
#. Tag: para
-#: performance.xml:555
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate3 supports the lazy fetching of individual properties. This "
"optimization technique is also known as <emphasis>fetch
groups</emphasis>. "
@@ -1089,110 +872,67 @@
"when legacy tables have hundreds of columns and the data model cannot be "
"improved."
msgstr ""
-"Hibernate3はプロパティごとの遅延フェッチをサポートしています。この最適化手法"
+"Hibernate3 はプロパティごとの遅延フェッチをサポートしています。この最適化手法"
"は <emphasis>グループのフェッチ</emphasis> としても知られています。これはほと"
-"んど 要望から出た機能であることに注意してください。実際には列読み込みの最適化"
-"よりも、 行読み込みの最適化が非常に重要です。 しかし、クラスのいくつかのプロ"
-"パティだけを読み込むことは、既存のテーブルが何百もの列を持ち、 データモデルを"
-"改善できないなどの極端な場合には有用です。"
+"んど要望から出た機能であることに注意してください。実際には列読み込みの最適化"
+"よりも、行読み込みの最適化が非常に重要です。しかし、クラスのいくつかのプロパ"
+"ティだけを読み込むことは、既存のテーブルが何百もの列を持ち、データモデルを改"
+"善できないなどの極端な場合には有用です。"
#. Tag: para
-#: performance.xml:564
#, no-c-format
msgid ""
"To enable lazy property loading, set the <literal>lazy</literal>
attribute "
"on your particular property mappings:"
msgstr ""
"遅延プロパティ読み込みを有効にするには、対象のプロパティのマッピングで "
-"<literal>lazy</literal> 属性をセットしてください。"
+"<literal>lazy</literal> 属性をセットしてください:"
-#. Tag: programlisting
-#: performance.xml:569
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Document\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"name\" not-null=\"true\"
length=\"50\"/>\n"
-" <property name=\"summary\" not-null=\"true\"
length=\"200\" lazy=\"true"
-"\"/>\n"
-" <property name=\"text\" not-null=\"true\"
length=\"2000\" lazy=\"true\"/"
-">\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: performance.xml:571
-#, fuzzy, no-c-format
-msgid ""
"Lazy property loading requires buildtime bytecode instrumentation. If your "
"persistent classes are not enhanced, Hibernate will ignore lazy property "
"settings and return to immediate fetching."
msgstr ""
-"遅延プロパティ読み込みはビルド時のバイトコード組み込みを必要とします!もし 永"
-"続クラスに組み込みがされていないなら、Hibernateは黙って遅延プロパティの設定を"
-"無視して、 即時フェッチに戻します。"
+"遅延プロパティ読み込みはビルド時のバイトコード組み込みを必要とします。もし永"
+"続クラスに組み込みがされていないなら、 Hibernate は黙って遅延プロパティの設定"
+"を無視して、即時フェッチに戻します。"
#. Tag: para
-#: performance.xml:577
#, no-c-format
msgid "For bytecode instrumentation, use the following Ant task:"
-msgstr "バイトコード組み込みは以下のAntタスクを使ってください。"
+msgstr "バイトコード組み込みは以下の Ant タスクを使ってください: "
-#. Tag: programlisting
-#: performance.xml:581
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<target name=\"instrument\"
depends=\"compile\">\n"
-" <taskdef name=\"instrument\"
classname=\"org.hibernate.tool.instrument."
-"InstrumentTask\">\n"
-" <classpath path=\"${jar.path}\"/>\n"
-" <classpath path=\"${classes.dir}\"/>\n"
-" <classpath refid=\"lib.class.path\"/>\n"
-" </taskdef>\n"
-"\n"
-" <instrument verbose=\"true\">\n"
-" <fileset
dir=\"${testclasses.dir}/org/hibernate/auction/model\">\n"
-" <include name=\"*.class\"/>\n"
-" </fileset>\n"
-" </instrument>\n"
-"</target>]]>"
-msgstr ""
-
-#. Tag: para
-#: performance.xml:583
-#, fuzzy, no-c-format
-msgid ""
"A different way of avoiding unnecessary column reads, at least for read-only
"
"transactions, is to use the projection features of HQL or Criteria queries. "
"This avoids the need for buildtime bytecode processing and is certainly a "
"preferred solution."
msgstr ""
-"不要な列を読み込まないための、別の(よりよい?)方法は、少なくとも 読み込みの"
-"みのトランザクションにおいては、HQLやCriteriaクエリの射影 機能を使うことで"
-"す。この方法はビルド時のバイトコード組み込みが不要になり、 より良い解決方法で"
+"不要な列を読み込まないための、別の(よりよい?)方法は、少なくとも読み込みの"
+"みのトランザクションにおいては、 HQL や Criteria クエリの射影機能を使うことで"
+"す。この方法はビルド時のバイトコード組み込みが不要になり、より良い解決方法で"
"す。"
#. Tag: para
-#: performance.xml:590
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can force the usual eager fetching of properties using <literal>fetch
"
"all properties</literal> in HQL."
msgstr ""
-"HQLで <literal>fetch all properties</literal> を使うことで、普通どおりの プロ"
+"HQL で <literal>fetch all properties</literal> を使うことで、普通どおりのプロ"
"パティの即時フェッチングを強制することが出来ます。"
#. Tag: title
-#: performance.xml:600
#, no-c-format
msgid "The Second Level Cache"
msgstr "第2レベルキャッシュ"
#. Tag: para
-#: performance.xml:602
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A Hibernate <literal>Session</literal> is a transaction-level cache of
"
"persistent data. It is possible to configure a cluster or JVM-level "
@@ -1202,16 +942,16 @@
"another application. They can, however, be configured to regularly expire "
"cached data."
msgstr ""
-"Hibernateの <literal>Session</literal> は永続データのトランザクションレベルの"
-"キャッシュです。 class-by-classとcollection-by-collectionごとの、クラスタレベ"
-"ルやJVMレベル ( <literal>SessionFactory</literal> レベル)のキャッシュを設定"
-"することが出来ます。 クラスタ化されたキャッシュにつなぐことさえ出来ます。しか"
-"し注意してください。 キャッシュは他のアプリケーションによる永続層の変更を 考"
-"慮しません(キャッシュデータを定期的に期限切れにする設定は出来ます)。"
+"Hibernate の <literal>Session</literal> は永続データのトランザクションレベル"
+"のキャッシュです。 class-by-class と collection-by-collection ごとの、クラス"
+"タレベルや JVM レベル ( <literal>SessionFactory</literal> レベル)のキャッ"
+"シュを設定することが出来ます。クラスタ化されたキャッシュにつなぐことさえ出来"
+"ます。しかし注意してください。キャッシュは他のアプリケーションによる永続層の"
+"変更を考慮しません(キャッシュデータを定期的に期限切れにする設定は出来ま"
+"す)。"
#. Tag: para
-#: performance.xml:610
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You have the option to tell Hibernate which caching implementation to use by
"
"specifying the name of a class that implements
<literal>org.hibernate.cache."
@@ -1221,190 +961,156 @@
"can also implement your own and plug it in as outlined above. Note that "
"versions prior to 3.2 use EhCache as the default cache provider."
msgstr ""
-"Hibernateが使用するキャッシュ実装は、<literal>hibernate.cache."
+"Hibernate が使用するキャッシュ実装は、 <literal>hibernate.cache."
"provider_class</literal> プロパティに <literal>org.hibernate.cache."
"CacheProvider</literal> を実装したクラス名を指定することで変更できます。 "
-"Hibernateは多くのオープンソースのキャッシュプロバイダをビルトイン実装で持って"
-"います(後にリストがあります)。 加えて、前に説明したように、あなた自身が独自"
-"の実装をして、それを組み込むことも出来ます。 バージョン3.2より前ではEhCacheが"
-"デフォルトのキャッシュプロバイダであることに注意してください。 バージョン3.2"
-"ではこれは当てはまりません。"
+"Hibernate は多くのオープンソースのキャッシュプロバイダをビルトイン実装で持っ"
+"ています(後にリストがあります)。加えて、前に説明したように、あなた自身が独"
+"自の実装をして、それを組み込むことも出来ます。バージョン3.2より前では "
+"EhCache がデフォルトのキャッシュプロバイダであることに注意してください。バー"
+"ジョン3.2ではこれは当てはまりません。"
#. Tag: title
-#: performance.xml:621
#, no-c-format
msgid "Cache Providers"
msgstr "キャッシュプロバイダ"
#. Tag: entry
-#: performance.xml:630 performance.xml:818
#, no-c-format
msgid "Cache"
msgstr "キャッシュ"
#. Tag: entry
-#: performance.xml:631
#, no-c-format
msgid "Provider class"
msgstr "プロバイダクラス"
#. Tag: entry
-#: performance.xml:632
#, no-c-format
msgid "Type"
msgstr "タイプ"
#. Tag: entry
-#: performance.xml:633
#, no-c-format
msgid "Cluster Safe"
msgstr "クラスタセーフ"
#. Tag: entry
-#: performance.xml:634
#, no-c-format
msgid "Query Cache Supported"
msgstr "クエリキャッシュのサポート"
#. Tag: entry
-#: performance.xml:639 performance.xml:827
#, no-c-format
msgid "Hashtable (not intended for production use)"
msgstr "Hashtable(製品用として意図していません)"
-#. Tag: literal
-#: performance.xml:640
+#. Tag: entry
#, no-c-format
-msgid "org.hibernate.cache.HashtableCacheProvider"
-msgstr "org.hibernate.cache.HashtableCacheProvider"
+msgid
"<literal>org.hibernate.cache.HashtableCacheProvider</literal>"
+msgstr
"<literal>org.hibernate.cache.HashtableCacheProvider</literal>"
#. Tag: entry
-#: performance.xml:641
#, no-c-format
msgid "memory"
msgstr "メモリ"
#. Tag: entry
-#: performance.xml:643 performance.xml:650 performance.xml:657
-#: performance.xml:828 performance.xml:829 performance.xml:830
-#: performance.xml:835 performance.xml:836 performance.xml:837
-#: performance.xml:842 performance.xml:843 performance.xml:844
-#: performance.xml:849 performance.xml:850 performance.xml:856
-#: performance.xml:859 performance.xml:863 performance.xml:866
#, no-c-format
-msgid "<entry>yes</entry>"
+msgid "yes"
msgstr ""
#. Tag: entry
-#: performance.xml:646 performance.xml:834
#, no-c-format
msgid "EHCache"
msgstr "EHCache"
-#. Tag: literal
-#: performance.xml:647
+#. Tag: entry
#, no-c-format
-msgid "org.hibernate.cache.EhCacheProvider"
-msgstr "org.hibernate.cache.EhCacheProvider"
+msgid "<literal>org.hibernate.cache.EhCacheProvider</literal>"
+msgstr "<literal>org.hibernate.cache.EhCacheProvider</literal>"
#. Tag: entry
-#: performance.xml:648 performance.xml:655
#, no-c-format
msgid "memory, disk"
msgstr "メモリ、ディスク"
#. Tag: entry
-#: performance.xml:653 performance.xml:841
#, no-c-format
msgid "OSCache"
msgstr "OSCache"
-#. Tag: literal
-#: performance.xml:654
+#. Tag: entry
#, no-c-format
-msgid "org.hibernate.cache.OSCacheProvider"
-msgstr "org.hibernate.cache.OSCacheProvider"
+msgid "<literal>org.hibernate.cache.OSCacheProvider</literal>"
+msgstr "<literal>org.hibernate.cache.OSCacheProvider</literal>"
#. Tag: entry
-#: performance.xml:660 performance.xml:848
#, no-c-format
msgid "SwarmCache"
msgstr "SwarmCache"
-#. Tag: literal
-#: performance.xml:661
+#. Tag: entry
#, no-c-format
-msgid "org.hibernate.cache.SwarmCacheProvider"
-msgstr "org.hibernate.cache.SwarmCacheProvider"
+msgid "<literal>org.hibernate.cache.SwarmCacheProvider</literal>"
+msgstr "<literal>org.hibernate.cache.SwarmCacheProvider</literal>"
#. Tag: entry
-#: performance.xml:662
#, no-c-format
msgid "clustered (ip multicast)"
-msgstr "クラスタ(ipマルチキャスト)"
+msgstr "クラスタ(ip マルチキャスト)"
#. Tag: entry
-#: performance.xml:663
#, no-c-format
msgid "yes (clustered invalidation)"
msgstr "yes(クラスタ無効化)"
#. Tag: entry
-#: performance.xml:667 performance.xml:855
-#, fuzzy, no-c-format
+#, no-c-format
msgid "JBoss Cache 1.x"
-msgstr "JBoss TreeCache"
+msgstr ""
-#. Tag: literal
-#: performance.xml:668
+#. Tag: entry
#, no-c-format
-msgid "org.hibernate.cache.TreeCacheProvider"
-msgstr "org.hibernate.cache.TreeCacheProvider"
+msgid "<literal>org.hibernate.cache.TreeCacheProvider</literal>"
+msgstr "<literal>org.hibernate.cache.TreeCacheProvider</literal>"
#. Tag: entry
-#: performance.xml:669 performance.xml:676
#, no-c-format
msgid "clustered (ip multicast), transactional"
-msgstr "クラスタ(ipマルチキャスト)、トランザクショナル"
+msgstr "クラスタ(ip マルチキャスト)、トランザクショナル"
#. Tag: entry
-#: performance.xml:670
#, no-c-format
msgid "yes (replication)"
msgstr "yes(複製)"
#. Tag: entry
-#: performance.xml:671 performance.xml:678
#, no-c-format
msgid "yes (clock sync req.)"
msgstr "yes(時刻同期が必要)"
#. Tag: entry
-#: performance.xml:674 performance.xml:862
-#, fuzzy, no-c-format
+#, no-c-format
msgid "JBoss Cache 2"
-msgstr "JBoss TreeCache"
+msgstr ""
-#. Tag: literal
-#: performance.xml:675
-#, fuzzy, no-c-format
-msgid "org.hibernate.cache.jbc2.JBossCacheRegionFactory"
-msgstr "org.hibernate.cache.EhCacheProvider"
+#. Tag: entry
+#, no-c-format
+msgid
"<literal>org.hibernate.cache.jbc2.JBossCacheRegionFactory</literal>"
+msgstr
"<literal>org.hibernate.cache.jbc2.JBossCacheRegionFactory</literal>"
#. Tag: entry
-#: performance.xml:677
#, fuzzy, no-c-format
msgid "yes (replication or invalidation)"
msgstr "yes(クラスタ無効化)"
#. Tag: title
-#: performance.xml:685
#, no-c-format
msgid "Cache mappings"
msgstr "キャッシュのマッピング"
#. Tag: para
-#: performance.xml:687
#, no-c-format
msgid ""
"The <literal><cache></literal> element of a class or
collection "
@@ -1413,56 +1119,41 @@
"クラスやコレクションのマッピングの <literal><cache></literal> 要素は以"
"下の形式です。"
-#. Tag: programlisting
-#: performance.xml:698
-#, no-c-format
-msgid ""
-"<![CDATA[<cache \n"
-"
usage=\"transactional|read-write|nonstrict-read-write|read-only\"\n"
-" region=\"RegionName\"\n"
-" include=\"all|non-lazy\"\n"
-"/>]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:701
#, no-c-format
msgid ""
"<literal>usage</literal> (required) specifies the caching strategy:
"
"<literal>transactional</literal>,
<literal>read-write</literal>, "
"<literal>nonstrict-read-write</literal> or
<literal>read-only</literal>"
msgstr ""
-"<literal>usage</literal> (required) specifies the caching strategy:
"
-"<literal>transactional</literal>,
<literal>read-write</literal>, "
-"<literal>nonstrict-read-write</literal> or
<literal>read-only</literal>"
+"<literal>usage</literal> (必須) キャッシング戦略を指定します: "
+"<literal>transactional</literal>、
<literal>read-write</literal>、 "
+"<literal>nonstrict-read-write</literal> または
<literal>read-only</literal>"
#. Tag: para
-#: performance.xml:710
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>region</literal> (optional: defaults to the class or
collection "
"role name): specifies the name of the second level cache region"
msgstr ""
-"<literal>region</literal> (optional, defaults to the class or
collection "
-"role name) specifies the name of the second level cache region"
+"<literal>region</literal> (オプション、クラスまたはコレクションのロールネーム"
+"のデフォルト) 2次レベルのキャッシュ領域の名前を指定します"
#. Tag: para
-#: performance.xml:717
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>include</literal> (optional: defaults to
<literal>all</literal>) "
"<literal>non-lazy</literal>: specifies that properties of the entity
mapped "
"with <literal>lazy=\"true\"</literal> cannot be cached when
attribute-level "
"lazy fetching is enabled"
msgstr ""
-"<literal>include</literal> (optional, defaults to
<literal>all</literal>) "
-"<literal>non-lazy</literal> specifies that properties of the entity
mapped "
-"with <literal>lazy=\"true\"</literal> may not be cached when
attribute-level "
-"lazy fetching is enabled"
+"<literal>include</literal> (オプション、 <literal>all</literal>
に対してデ"
+"フォルト) <literal>non-lazy</literal> は、 属性レベルの lazy フェチが有効に"
+"なっている場合 <literal>lazy=\"true\"</literal> でマッピングされるエンティ"
+"ティのプロパティはキャッシュされなくてもよいことを指定します。"
#. Tag: para
-#: performance.xml:727
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Alternatively, you can specify
<literal><class-cache></literal> and "
"<literal><collection-cache></literal> elements in
<literal>hibernate."
@@ -1473,7 +1164,6 @@
"literal> 要素を指定することも出来ます。"
#. Tag: para
-#: performance.xml:732
#, no-c-format
msgid ""
"The <literal>usage</literal> attribute specifies a
<emphasis>cache "
@@ -1483,14 +1173,12 @@
"を指定します。"
#. Tag: title
-#: performance.xml:739
#, no-c-format
msgid "Strategy: read only"
-msgstr "read only戦略"
+msgstr "read only 戦略"
#. Tag: para
-#: performance.xml:741
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If your application needs to read, but not modify, instances of a persistent
"
"class, a <literal>read-only</literal> cache can be used. This is the
"
@@ -1499,28 +1187,16 @@
msgstr ""
"もしアプリケーションが読み込みのみ必要で、永続クラスのインスタンスを変更しな"
"いなら、 <literal>read-only</literal> キャッシュを使うことが出来ます。これは"
-"もっとも単純で もっともパフォーマンスの良い戦略です。クラスタでの使用も完全に"
+"もっとも単純でもっともパフォーマンスの良い戦略です。クラスタでの使用も完全に"
"安全です。"
-#. Tag: programlisting
-#: performance.xml:747
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"eg.Immutable\"
mutable=\"false\">\n"
-" <cache usage=\"read-only\"/>\n"
-" ....\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: performance.xml:753
#, no-c-format
msgid "Strategy: read/write"
-msgstr "read/write戦略"
+msgstr "read/write 戦略"
#. Tag: para
-#: performance.xml:755
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If the application needs to update data, a
<literal>read-write</literal> "
"cache might be appropriate. This cache strategy should never be used if "
@@ -1535,40 +1211,25 @@
"built-in cache providers <emphasis>do not</emphasis> support
locking."
msgstr ""
"アプリケーションがデータを更新する必要があるなら、 <literal>read-write</"
-"literal> キャッシュが適当かも しれません。このキャッシュ戦略は、シリアライザ"
-"ブルなトランザクション分離レベルが要求されるなら、 決して使うべきではありませ"
-"ん。もしキャッシュがJTA環境で使われるなら、JTA <literal>TransactionManager</"
-"literal> を取得するための方法を示す <literal>hibernate.transaction."
-"manager_lookup_class</literal> プロパティを指定しなければなりません。他の環境"
-"では、 <literal>Session.close()</literal> や
<literal>Session.disconnect()</"
-"literal> が呼ばれたときに、確実にトランザクションが完了 していなければなりま"
-"せん。 もしクラスタでこの戦略を使いたいなら、基となるキャッシュの実装がロック"
-"をサポート していることを保証しなければなりません。 組み込みのキャッシュプロ"
-"バイダは <emphasis>サポートしていません</emphasis> 。"
+"literal> キャッシュが適当かもしれません。このキャッシュ戦略は、シリアライザブ"
+"ルなトランザクション分離レベルが要求されるなら、決して使うべきではありませ"
+"ん。もしキャッシュが JTA 環境で使われるなら、 JTA "
+"<literal>TransactionManager</literal> を取得するための方法を示す "
+"<literal>hibernate.transaction.manager_lookup_class</literal>
プロパティを指"
+"定しなければなりません。他の環境では、 <literal>Session.close()</literal> や "
+"<literal>Session.disconnect()</literal> が呼ばれたときに、確実にトランザク"
+"ションが完了していなければなりません。もしクラスタでこの戦略を使いたいなら、"
+"基となるキャッシュの実装がロックをサポートしていることを保証しなければなりま"
+"せん。組み込みのキャッシュプロバイダは <emphasis>サポートしていません</"
+"emphasis> 。"
-#. Tag: programlisting
-#: performance.xml:766
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"eg.Cat\" .... >\n"
-" <cache usage=\"read-write\"/>\n"
-" ....\n"
-" <set name=\"kittens\" ... >\n"
-" <cache usage=\"read-write\"/>\n"
-" ....\n"
-" </set>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: performance.xml:771
#, no-c-format
msgid "Strategy: nonstrict read/write"
-msgstr "厳密ではないread/write戦略"
+msgstr "厳密ではない read/write 戦略"
#. Tag: para
-#: performance.xml:773
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If the application only occasionally needs to update data (i.e. if it is "
"extremely unlikely that two transactions would try to update the same item "
@@ -1580,100 +1241,85 @@
"</literal> or <literal>Session.disconnect()</literal> is
called."
msgstr ""
"アプリケーションがたまにしかデータを更新する必要はなく(すなわち二つのトラン"
-"ザクションが 同時に同じアイテムを更新しようとすることはほとんど起こらない)、"
-"厳密なトランザクション分離が 要求されないなら、 <literal>nonstrict-read-"
-"write</literal> キャッシュが適当かもしれません。 もしキャッシュがJTA環境で使"
+"ザクションが同時に同じアイテムを更新しようとすることはほとんど起こらない)、"
+"厳密なトランザクション分離が要求されないなら、 <literal>nonstrict-read-"
+"write</literal> キャッシュが適当かもしれません。もしキャッシュが JTA 環境で使"
"われるなら、 <literal>hibernate.transaction.manager_lookup_class</literal>
を"
"指定しなければなりません。他の環境では、 <literal>Session.close()</literal> "
"や <literal>Session.disconnect()</literal> が呼ばれたときに、確実にトランザク"
-"ションが完了 していなければなりません。"
+"ションが完了していなければなりません。"
#. Tag: title
-#: performance.xml:785
#, no-c-format
msgid "Strategy: transactional"
-msgstr "transactional戦略"
+msgstr "transactional 戦略"
#. Tag: para
-#: performance.xml:787
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>transactional</literal> cache strategy provides support
for "
"fully transactional cache providers such as JBoss TreeCache. Such a cache "
"can only be used in a JTA environment and you must specify "
"<literal>hibernate.transaction.manager_lookup_class</literal>."
msgstr ""
-"<literal>transactional</literal> キャッシュ戦略はJBoss TreeCacheのような完全"
-"なトランザクショナル キャッシュプロバイダのサポートを提供します。 このような"
-"キャッシュはJTA環境でのみ使用可能で、 <literal>hibernate.transaction."
+"<literal>transactional</literal> キャッシュ戦略は JBoss TreeCache のような完"
+"全なトランザクショナルキャッシュプロバイダのサポートを提供します。このような"
+"キャッシュは JTA 環境でのみ使用可能で、 <literal>hibernate.transaction."
"manager_lookup_class</literal> を指定しなければなりません。"
#. Tag: title
-#: performance.xml:796
#, fuzzy, no-c-format
msgid "Cache-provider/concurrency-strategy compatibility"
msgstr "同時並行性キャッシュ戦略のサポート"
#. Tag: para
-#: performance.xml:799
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"None of the cache providers support all of the cache concurrency strategies."
msgstr ""
"すべての同時並行性キャッシュ戦略をサポートしているキャッシュプロバイダはあり"
-"ません。 以下の表はどのプロバイダがどの同時並列性戦略に対応するかを表していま"
-"す。"
+"ません。"
#. Tag: para
-#: performance.xml:804
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following table shows which providers are compatible with which "
"concurrency strategies."
msgstr ""
-"すべての同時並行性キャッシュ戦略をサポートしているキャッシュプロバイダはあり"
-"ません。 以下の表はどのプロバイダがどの同時並列性戦略に対応するかを表していま"
-"す。"
+"以下の表はどのプロバイダがどの同時並列性戦略に対応するかを表しています。"
#. Tag: title
-#: performance.xml:809
#, no-c-format
msgid "Cache Concurrency Strategy Support"
msgstr "同時並行性キャッシュ戦略のサポート"
#. Tag: entry
-#: performance.xml:819
#, no-c-format
msgid "read-only"
msgstr "read-only"
#. Tag: entry
-#: performance.xml:820
#, no-c-format
msgid "nonstrict-read-write"
-msgstr "厳密ではないread-write"
+msgstr "厳密ではない read-write"
#. Tag: entry
-#: performance.xml:821
#, no-c-format
msgid "read-write"
msgstr "read-write"
#. Tag: entry
-#: performance.xml:822
#, no-c-format
msgid "transactional"
msgstr "transactional"
#. Tag: title
-#: performance.xml:877
#, no-c-format
msgid "Managing the caches"
msgstr "キャッシュの管理"
#. Tag: para
-#: performance.xml:879
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Whenever you pass an object to <literal>save()</literal>,
<literal>update()</"
"literal> or <literal>saveOrUpdate()</literal>, and whenever you
retrieve an "
@@ -1686,12 +1332,11 @@
"<literal>saveOrUpdate()</literal> に渡すとき、そして
<literal>load()</"
"literal> 、 <literal>get()</literal> 、
<literal>list()</literal> 、 "
"<literal>iterate()</literal> 、 <literal>scroll()</literal>
を使ってオブジェ"
-"クトを復元するときには常に、 そのオブジェクトは <literal>Session</literal> の"
+"クトを復元するときには常に、そのオブジェクトは <literal>Session</literal> の"
"内部キャッシュに追加されます。"
#. Tag: para
-#: performance.xml:886
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"When <literal>flush()</literal> is subsequently called, the state of
that "
"object will be synchronized with the database. If you do not want this "
@@ -1701,26 +1346,12 @@
"cache."
msgstr ""
"次に <literal>flush()</literal> が呼ばれると、オブジェクトの状態はデータベー"
-"スと同期化されます。 もしこの同期が起こることを望まないときや、膨大な数のオブ"
-"ジェクトを処理していてメモリを効率的に 扱う必要があるときは、 <literal>evict"
-"()</literal> メソッドを使って一次キャッシュから オブジェクトやコレクションを"
-"削除することが出来ます。"
+"スと同期化されます。もしこの同期が起こることを望まないときや、膨大な数のオブ"
+"ジェクトを処理していてメモリを効率的に扱う必要があるときは、 <literal>evict()"
+"</literal> メソッドを使って一次キャッシュからオブジェクトやコレクションを削除"
+"することが出来ます。"
-#. Tag: programlisting
-#: performance.xml:894
-#, no-c-format
-msgid ""
-"<![CDATA[ScrollableResult cats = sess.createQuery(\"from Cat as
cat\").scroll"
-"(); //a huge result set\n"
-"while ( cats.next() ) {\n"
-" Cat cat = (Cat) cats.get(0);\n"
-" doSomethingWithACat(cat);\n"
-" sess.evict(cat);\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:896
#, no-c-format
msgid ""
"The <literal>Session</literal> also provides a
<literal>contains()</literal> "
@@ -1730,52 +1361,36 @@
"うかを判断するための <literal>contains()</literal> メソッドも提供します。"
#. Tag: para
-#: performance.xml:901
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"To evict all objects from the session cache, call
<literal>Session.clear()</"
"literal>"
msgstr ""
-"すべてのオブジェクトをセッションキャッシュから完全に取り除くには、"
+"すべてのオブジェクトをセッションキャッシュから完全に取り除くには、 "
"<literal>Session.clear()</literal> を呼び出してください。"
#. Tag: para
-#: performance.xml:905
#, no-c-format
msgid ""
"For the second-level cache, there are methods defined on "
"<literal>SessionFactory</literal> for evicting the cached state of an
"
"instance, entire class, collection instance or entire collection role."
msgstr ""
-"二次キャッシュのために、 <literal>SessionFactory</literal> には インスタン"
-"ス、クラス全体、コレクションのインスタンス、コレクション全体をキャッシュから "
-"削除するためのメソッドがそれぞれ定義されています。"
+"二次キャッシュのために、 <literal>SessionFactory</literal> にはインスタンス、"
+"クラス全体、コレクションのインスタンス、コレクション全体をキャッシュから削除"
+"するためのメソッドがそれぞれ定義されています。"
-#. Tag: programlisting
-#: performance.xml:911
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[sessionFactory.evict(Cat.class, catId); //evict a particular
Cat\n"
-"sessionFactory.evict(Cat.class); //evict all Cats\n"
-"sessionFactory.evictCollection(\"Cat.kittens\", catId); //evict a
particular "
-"collection of kittens\n"
-"sessionFactory.evictCollection(\"Cat.kittens\"); //evict all kitten
"
-"collections]]>"
-msgstr ""
-
-#. Tag: para
-#: performance.xml:913
-#, fuzzy, no-c-format
-msgid ""
"The <literal>CacheMode</literal> controls how a particular session
interacts "
"with the second-level cache:"
msgstr ""
"<literal>CacheMode</literal> は特定のセッションが二次キャッシュとどのように相"
-"互作用するかを 指定します。"
+"互作用するかを指定します。"
#. Tag: para
-#: performance.xml:920
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>CacheMode.NORMAL</literal>: will read items from and write
items to "
"the second-level cache"
@@ -1784,28 +1399,25 @@
"キャッシュを使います"
#. Tag: para
-#: performance.xml:925
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>CacheMode.GET</literal>: will read items from the second-level
"
"cache. Do not write to the second-level cache except when updating data"
msgstr ""
"<literal>CacheMode.GET</literal> - 読み込みは二次キャッシュから行いますが、"
-"データを 更新した場合を除いて二次キャッシュに書き込みをしません。"
+"データを更新した場合を除いて二次キャッシュに書き込みをしません。"
#. Tag: para
-#: performance.xml:931
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>CacheMode.PUT</literal>: will write items to the second-level
"
"cache. Do not read from the second-level cache"
msgstr ""
"<literal>CacheMode.PUT</literal> - 二次キャッシュにアイテムを書き込みますが、"
-"読み込みには 二次キャッシュを使いません。"
+"読み込みには二次キャッシュを使いません。"
#. Tag: para
-#: performance.xml:937
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>CacheMode.REFRESH</literal>: will write items to the
second-level "
"cache. Do not read from the second-level cache. Bypass the effect of "
@@ -1813,74 +1425,46 @@
"second-level cache for all items read from the database"
msgstr ""
"<literal>CacheMode.REFRESH</literal> - 二次キャッシュにアイテムを書き込みます"
-"が、読み込みには 二次キャッシュを使わず、 <literal>hibernate.cache."
+"が、読み込みには二次キャッシュを使わず、 <literal>hibernate.cache."
"use_minimal_puts</literal> の影響を受けずに、データベースから読み込むすべての"
"アイテムの二次キャッシュを強制的にリフレッシュします。"
#. Tag: para
-#: performance.xml:945
#, no-c-format
msgid ""
"To browse the contents of a second-level or query cache region, use the "
"<literal>Statistics</literal> API:"
msgstr ""
"二次キャッシュの内容やクエリキャッシュ領域を見るために、 "
-"<literal>Statistics</literal> APIを 使ってください。"
+"<literal>Statistics</literal> API を使ってください:"
-#. Tag: programlisting
-#: performance.xml:950
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Map cacheEntries = sessionFactory.getStatistics()\n"
-" .getSecondLevelCacheStatistics(regionName)\n"
-" .getEntries();]]>"
-msgstr ""
-
-#. Tag: para
-#: performance.xml:952
-#, fuzzy, no-c-format
-msgid ""
"You will need to enable statistics and, optionally, force Hibernate to keep "
"the cache entries in a more readable format:"
msgstr ""
-"統計情報を有効にして、さらにオプションとして、キャッシュエントリを 人がより理"
-"解可能な形式で保持することをHibernateに強制します。"
+"統計情報を有効にして、さらにオプションとして、キャッシュエントリを人がより理"
+"解可能な形式で保持することを Hibernate に強制します:"
-#. Tag: programlisting
-#: performance.xml:957
-#, no-c-format
-msgid ""
-"<![CDATA[hibernate.generate_statistics true\n"
-"hibernate.cache.use_structured_entries true]]>"
-msgstr ""
-
#. Tag: title
-#: performance.xml:962
#, no-c-format
msgid "The Query Cache"
msgstr "クエリキャッシュ"
#. Tag: para
-#: performance.xml:964
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Query result sets can also be cached. This is only useful for queries that "
"are run frequently with the same parameters. You will first need to enable "
"the query cache:"
msgstr ""
"クエリのリザルトセットもキャッシュ出来ます。これは同じパラメータで何度も実行"
-"される クエリに対してのみ有用です。クエリキャッシュを使うには、まず設定で有効"
-"にしなくてはなりません。"
+"されるクエリに対してのみ有用です。クエリキャッシュを使うには、まず設定で有効"
+"にしなくてはなりません:"
-#. Tag: programlisting
-#: performance.xml:969
-#, no-c-format
-msgid "<![CDATA[hibernate.cache.use_query_cache true]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:971
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This setting creates two new cache regions: one holding cached query result "
"sets (<literal>org.hibernate.cache.StandardQueryCache</literal>), the
other "
@@ -1891,16 +1475,15 @@
"query cache should always be used in conjunction with the second-level
cache."
msgstr ""
"この設定は新たに二つのキャッシュ領域の作成を行います。一つはクエリのリザルト"
-"セットの キャッシュ( <literal>org.hibernate.cache.StandardQueryCache</"
-"literal> )を保持し、 もう1つはクエリ可能なテーブルへの最新の更新タイムスタン"
+"セットのキャッシュ( <literal>org.hibernate.cache.StandardQueryCache</"
+"literal> )を保持し、もう1つはクエリ可能なテーブルへの最新の更新タイムスタン"
"プ ( <literal>org.hibernate.cache.UpdateTimestampsCache</literal>
)を保持し"
-"ます。 クエリキャッシュはリザルトセットの実際の要素の状態はキャッシュしないこ"
-"とに 注意してください。キャッシュするのは識別子の値と、値型の結果のみです。 "
-"そのため、クエリキャッシュは常に二次キャッシュと一緒に使うべきです。"
+"ます。クエリキャッシュはリザルトセットの実際の要素の状態はキャッシュしないこ"
+"とに注意してください。キャッシュするのは識別子の値と、値型の結果のみです。そ"
+"のため、クエリキャッシュは常に二次キャッシュと一緒に使うべきです。"
#. Tag: para
-#: performance.xml:981
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Most queries do not benefit from caching, so by default, queries are not "
"cached. To enable caching, call
<literal>Query.setCacheable(true)</literal>. "
@@ -1908,14 +1491,13 @@
"results to the cache when it is executed."
msgstr ""
"ほとんどのクエリはキャッシュの恩恵を受けないので、デフォルトではクエリは"
-"キャッシュされません。 キャッシュを有効にするには、 <literal>Query."
-"setCacheable(true)</literal> を呼び出してください。 そうすればクエリが既存の"
-"キャッシュ結果を探し、クエリ実行時にその結果をキャッシュに追加する ようになり"
+"キャッシュされません。キャッシュを有効にするには、 <literal>Query."
+"setCacheable(true)</literal> を呼び出してください。そうすればクエリが既存の"
+"キャッシュ結果を探し、クエリ実行時にその結果をキャッシュに追加するようになり"
"ます。"
#. Tag: para
-#: performance.xml:988
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you require fine-grained control over query cache expiration policies, "
"you can specify a named cache region for a particular query by calling "
@@ -1925,21 +1507,7 @@
"setCacheRegion()</literal> を呼び出して特定のクエリに対するキャッシュ領域を指"
"定することが出来ます。"
-#. Tag: programlisting
-#: performance.xml:994
-#, no-c-format
-msgid ""
-"<![CDATA[List blogs = sess.createQuery(\"from Blog blog where blog.blogger
"
-"= :blogger\")\n"
-" .setEntity(\"blogger\", blogger)\n"
-" .setMaxResults(15)\n"
-" .setCacheable(true)\n"
-" .setCacheRegion(\"frontpages\")\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: para
-#: performance.xml:996
#, no-c-format
msgid ""
"If the query should force a refresh of its query cache region, you should "
@@ -1952,20 +1520,18 @@
msgstr ""
"クエリが自身のクエリキャッシュ領域のリフレッシュを強制しなければならないな"
"ら、 <literal>Query.setCacheMode(CacheMode.REFRESH)</literal>
を呼び出すべき"
-"です。これは 元となるデータが別のプロセスによって更新されたり(すなわち"
-"Hibernateを通じて更新されない)、 アプリケーションに特定のクエリリザルトセッ"
-"トを選択してリフレッシュさせる場合に特に有用です。 さらに有用なもう一つの方法"
+"です。これは元となるデータが別のプロセスによって更新されたり(すなわち "
+"Hibernate を通じて更新されない)、アプリケーションに特定のクエリリザルトセッ"
+"トを選択してリフレッシュさせる場合に特に有用です。さらに有用なもう一つの方法"
"は、 <literal>SessionFactory.evictQueries()</literal> によってクエリキャッ"
"シュ領域を消去することです。"
#. Tag: title
-#: performance.xml:1008
#, no-c-format
msgid "Understanding Collection performance"
msgstr "コレクションのパフォーマンスの理解"
#. Tag: para
-#: performance.xml:1010
#, no-c-format
msgid ""
"In the previous sections we have covered collections and their applications.
"
@@ -1974,37 +1540,31 @@
msgstr ""
#. Tag: title
-#: performance.xml:1017
#, no-c-format
msgid "Taxonomy"
msgstr "分類"
#. Tag: para
-#: performance.xml:1019
#, no-c-format
msgid "Hibernate defines three basic kinds of collections:"
-msgstr "Hibernateは3つの基本的なコレクションの種類を定義しています。"
+msgstr "Hibernate は3つの基本的なコレクションの種類を定義しています:"
#. Tag: para
-#: performance.xml:1023
#, no-c-format
msgid "collections of values"
msgstr "値のコレクション"
#. Tag: para
-#: performance.xml:1026
-#, fuzzy, no-c-format
+#, no-c-format
msgid "one-to-many associations"
msgstr "一対多関連"
#. Tag: para
-#: performance.xml:1029
-#, fuzzy, no-c-format
+#, no-c-format
msgid "many-to-many associations"
msgstr "多対多関連"
#. Tag: para
-#: performance.xml:1033
#, no-c-format
msgid ""
"This classification distinguishes the various table and foreign key "
@@ -2015,32 +1575,28 @@
"This suggests the following classification:"
msgstr ""
"この分類はさまざまなテーブルや外部キー関連を区別しますが、私たちが知る必要の"
-"ある 関連モデルについてほとんどなにも教えてくれません。関連構造やパフォーマン"
-"スの特徴を 完全に理解するには、Hibernateがコレクションの行を更新、削除するた"
-"めに使う主キーの 構造もまた考えなければなりません。これは以下の分類を提示しま"
+"ある関連モデルについてほとんどなにも教えてくれません。関連構造やパフォーマン"
+"スの特徴を完全に理解するには、 Hibernate がコレクションの行を更新、削除するた"
+"めに使う主キーの構造もまた考えなければなりません。これは以下の分類を提示しま"
"す。"
#. Tag: para
-#: performance.xml:1044
#, no-c-format
msgid "indexed collections"
msgstr "インデックス付きコレクション"
#. Tag: para
-#: performance.xml:1047
#, no-c-format
msgid "sets"
msgstr "set"
#. Tag: para
-#: performance.xml:1050
#, no-c-format
msgid "bags"
msgstr "bag"
#. Tag: para
-#: performance.xml:1054
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"All indexed collections (maps, lists, and arrays) have a primary key "
"consisting of the <literal><key></literal> and
<literal><index></"
@@ -2048,15 +1604,14 @@
"The primary key can be efficiently indexed and a particular row can be "
"efficiently located when Hibernate tries to update or delete it."
msgstr ""
-"すべてのインデックス付きコレクション(map、list、配列)は <literal><"
-"key></literal> と <literal><index></literal>
カラムからなる主キーを"
-"持っています。この場合は コレクションの更新は非常に効率的です。主キーは有用な"
-"インデックスになり、Hibernateが 特定の行を更新または削除するときに、その行を"
-"効率的に見つけることができます。"
+"すべてのインデックス付きコレクション (マップ、リスト、配列) は "
+"<literal><key></literal> と
<literal><index></literal> カラムから"
+"なる主キーを持っています。この場合はコレクションの更新は非常に効率的です。主"
+"キーは有用なインデックスになり、 Hibernate が特定の行を更新または削除するとき"
+"に、その行を効率的に見つけることができます。"
#. Tag: para
-#: performance.xml:1062
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Sets have a primary key consisting of
<literal><key></literal> and "
"element columns. This can be less efficient for some types of collection "
@@ -2068,28 +1623,26 @@
"<literal><set></literal>, you must declare all columns as
<literal>not-"
"null=\"true\"</literal>."
msgstr ""
-"setは <literal><key></literal> からなる主キーと要素のカラムを持っていま"
-"す。 これはコレクション要素のいくつかの型については効率的ではないかもしれませ"
-"ん。 特に複合要素、大きなテキスト、バイナリフィールドでは非効率です。データ"
-"ベースは 複合主キーに効率的にインデックスを付けることができないからです。一"
-"方、1対多や多対多関連において、 特に人工識別子の場合は同じぐらい効率的です。"
+"set は <literal><key></literal> からなる主キーと要素のカラムを持ってい"
+"ます。これはコレクション要素のいくつかの型については効率的ではないかもしれま"
+"せん。特に複合要素、大きなテキスト、バイナリフィールドでは非効率です。データ"
+"ベースは複合主キーに効率的にインデックスを付けることができないからです。一"
+"方、一対多や多対多関連において、特に人工識別子の場合は同じぐらい効率的です。"
"(余談: <literal>SchemaExport</literal> で実際に
<literal><set></"
"literal> の主キーを作りたいなら、すべてのカラムで <literal>not-null=\"true"
"\"</literal> を宣言しなければなりません。)"
#. Tag: para
-#: performance.xml:1073
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal><idbag></literal> mappings define a surrogate
key, so they "
"are efficient to update. In fact, they are the best case."
msgstr ""
-"<literal><idbag></literal> マッピングは代理キーを定義します。そのため "
-"更新は常に非常に効率的です。事実上、これは最善のケースです。"
+"<literal><idbag></literal> マッピングは代理キーを定義します。そのため更"
+"新は常に非常に効率的です。事実上、これは最善のケースです。"
#. Tag: para
-#: performance.xml:1078
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Bags are the worst case since they permit duplicate element values and, as "
"they have no index column, no primary key can be defined. Hibernate has no "
@@ -2097,47 +1650,43 @@
"problem by completely removing in a single <literal>DELETE</literal>
and "
"recreating the collection whenever it changes. This can be inefficient."
msgstr ""
-"bagは最悪のケースです。bagは要素の値の重複が可能で、インデックスカラムを持た"
-"ないため、 主キーは定義されないかもしれません。Hibernateには重複した行を区別"
-"する方法がありません。 Hibernateはこの問題の解決のために、変更があったときに"
-"は常に完全な削除 (一つの <literal>DELETE</literal> による)を行い、コレク"
-"ションの再作成を行います。 これは非常に非効率的かもしれません。"
+"bag は最悪のケースです。 bag は要素の値の重複が可能で、インデックスカラムを持"
+"たないため、主キーは定義されないかもしれません。 Hibernate には重複した行を区"
+"別する方法がありません。 Hibernate はこの問題の解決のために、変更があったとき"
+"には常に完全な削除(一つの <literal>DELETE</literal> による)を行い、コレク"
+"ションの再作成を行います。これは非常に非効率的かもしれません。"
#. Tag: para
-#: performance.xml:1086
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For a one-to-many association, the \"primary key\" may not be the
physical "
"primary key of the database table. Even in this case, the above "
"classification is still useful. It reflects how Hibernate \"locates\"
"
"individual rows of the collection."
msgstr ""
-"1対多関連では、「主キー」はデータベースのテーブルの物理的な 主キーではないか"
+"一対多関連では、「主キー」はデータベースのテーブルの物理的な主キーではないか"
"もしれないことに注意してください。しかしこの場合でさえ、上記の分類はまだ有用"
-"です。 (Hibernateがコレクションの個々の行をどうやって「見つけるか」を表して"
-"います。)"
+"です。(Hibernateがコレクションの個々の行をどうやって「見つけるか」を表してい"
+"ます。)"
#. Tag: title
-#: performance.xml:1096
#, no-c-format
msgid ""
"Lists, maps, idbags and sets are the most efficient collections to update"
msgstr "更新にもっとも効率的なコレクション list、map、idbag、set"
#. Tag: para
-#: performance.xml:1098
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"From the discussion above, it should be clear that indexed collections and "
"sets allow the most efficient operation in terms of adding, removing and "
"updating elements."
msgstr ""
-"上での議論から、インデックス付きコレクションと(普通の)setは要素の追加、削"
-"除、 更新でもっとも効率的な操作が出来ることは明らかです。"
+"上での議論から、インデックス付きコレクションと(普通の) set は要素の追加、削"
+"除、更新でもっとも効率的な操作が出来ることは明らかです。"
#. Tag: para
-#: performance.xml:1104
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There is, arguably, one more advantage that indexed collections have over "
"sets for many-to-many associations or collections of values. Because of the "
@@ -2148,15 +1697,14 @@
"to one-to-many associations."
msgstr ""
"ほぼ間違いなく、多対多関連や値のコレクションにおいて、インデックス付きコレク"
-"ションが setよりも優れている点が一つ以上あります。 <literal>Set</literal> は"
-"その 構造のために、Hibernateは要素が「変更」されたときに行を決して "
+"ションが set よりも優れている点が一つ以上あります。 <literal>Set</literal> は"
+"その構造のために、 Hibernate は要素が「変更」されたときに行を決して "
"<literal>UPDATE</literal> しません。 <literal>Set</literal>
への変更は常に"
-"(個々の行の)<literal>INSERT</literal> と
<literal>DELETE</literal> によって"
-"行います。繰り返しますが、これは一対多関連には 当てはまりません。"
+"(個々の行の) <literal>INSERT</literal> と
<literal>DELETE</literal> によっ"
+"て行います。繰り返しますが、これは一対多関連には当てはまりません。"
#. Tag: para
-#: performance.xml:1113
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"After observing that arrays cannot be lazy, you can conclude that lists, "
"maps and idbags are the most performant (non-inverse) collection types, with
"
@@ -2164,15 +1712,14 @@
"collection in Hibernate applications. This is because the \"set\"
semantics "
"are most natural in the relational model."
msgstr ""
-"配列は遅延処理ができないという決まりなので、結論として、list、map、idbagが"
-"もっとも パフォーマンスの良い(inverseではない)コレクションタイプとなりま"
-"す。setも それほど違いはありません。Hibernateのアプリケーションでは、setはコ"
-"レクションのもっとも 共通の種類として期待されます。setの表現は関連モデルでは"
-"もっとも自然だからです。"
+"配列は遅延処理ができないという決まりなので、結論として、list、map、idbag が"
+"もっともパフォーマンスの良い(inverse ではない)コレクションタイプとなりま"
+"す。 set もそれほど違いはありません。 Hibernate のアプリケーションでは、 set "
+"はコレクションのもっとも共通の種類として期待されます。 \"set\" の表現は関連モ"
+"デルではもっとも自然だからです。"
#. Tag: para
-#: performance.xml:1121
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"However, in well-designed Hibernate domain models, most collections are in "
"fact one-to-many associations with
<literal>inverse=\"true\"</literal>. For "
@@ -2180,20 +1727,18 @@
"association, and so considerations of collection update performance simply "
"do not apply."
msgstr ""
-"しかし、よくデザインされたHibernateのドメインモデルでは、通常もっとも多いコレ"
-"クションは 事実上 <literal>inverse=\"true\"</literal>
を指定した1対多関連で"
-"す。これらの関連では、 更新は多対一の関連端で扱われ、コレクションの更新パ"
+"しかし、よくデザインされた Hibernate のドメインモデルでは、通常もっとも多いコ"
+"レクションは事実上 <literal>inverse=\"true\"</literal>
を指定した一対多関連で"
+"す。これらの関連では、更新は多対一の関連端で扱われ、コレクションの更新パ"
"フォーマンスの問題は当てはまりません。"
#. Tag: title
-#: performance.xml:1131
#, no-c-format
msgid "Bags and lists are the most efficient inverse collections"
-msgstr "inverseコレクションにもっとも最適なbagとlist"
+msgstr "inverse コレクションにもっとも最適な bag と list"
#. Tag: para
-#: performance.xml:1133
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There is a particular case, however, in which bags, and also lists, are much
"
"more performant than sets. For a collection with
<literal>inverse=\"true\"</"
@@ -2204,35 +1749,22 @@
"literal> must always return true for a bag or
<literal>List</literal>. This "
"can make the following common code much faster:"
msgstr ""
-"bagを見放してしまう前に、bag(そしてlistも)がsetよりもずっとパフォーマンスが"
-"良い特別なケースを 紹介します。 <literal>inverse=\"true\"</literal>
のコレク"
-"ション(一般的な1対多関連の使い方など)で、 bagの要素を初期化(フェッチ)する"
-"必要なくbagやlistに要素を追加できます! これは <literal>Collection.add()</"
-"literal> や <literal>Collection.addAll()</literal> はbagや
<literal>List</"
-"literal> では常にtrueを返さなければならないからです ( <literal>Set</"
-"literal> とは異なります)。 これは以下の共通処理をより速くすることができま"
-"す。"
+"bag を見放してしまう前に、 bag (そして list も)が set よりもずっとパフォー"
+"マンスが良い特別なケースを紹介します。 <literal>inverse=\"true\"</literal>
の"
+"コレクション(一般的な一対多関連の使い方など)で、 bag の要素を初期化(フェッ"
+"チ)する必要なく bag や list に要素を追加できます。これは "
+"<literal>Collection.add()</literal> や
<literal>Collection.addAll()</"
+"literal> は bag や <literal>List</literal> では常に true を返さなければならな"
+"いからです ( <literal>Set</literal> とは異なります)。これは以下の共通処理を"
+"より速くすることができます。"
-#. Tag: programlisting
-#: performance.xml:1143
-#, no-c-format
-msgid ""
-"<![CDATA[Parent p = (Parent) sess.load(Parent.class, id);\n"
-"Child c = new Child();\n"
-"c.setParent(p);\n"
-"p.getChildren().add(c); //no need to fetch the collection!\n"
-"sess.flush();]]>"
-msgstr ""
-
#. Tag: title
-#: performance.xml:1148
#, no-c-format
msgid "One shot delete"
msgstr "一括削除"
#. Tag: para
-#: performance.xml:1150
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Deleting collection elements one by one can sometimes be extremely "
"inefficient. Hibernate knows not to do that in the case of an newly-empty "
@@ -2240,14 +1772,13 @@
"this case, Hibernate will issue a single
<literal>DELETE</literal>."
msgstr ""
"時々、コレクションの要素を一つ一つ削除することは極めて非効率的になることがあ"
-"ります。 Hibernateは愚かではないので、新しい空のコレクションの場合"
+"ります。 Hibernate は愚かではないので、新しい空のコレクションの場合"
"( <literal>list.clear()</literal> を呼び出した場合など)ではこれをすべきでな"
-"いことを知っています。この場合は、Hibernateは <literal>DELETE</literal> を一"
-"回発行して、それですべて終わります!"
+"いことを知っています。この場合は、 Hibernate は <literal>DELETE</literal> を"
+"一回発行して、それですべて終わります。"
#. Tag: para
-#: performance.xml:1157
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Suppose you added a single element to a collection of size twenty and then "
"remove two elements. Hibernate will issue one <literal>INSERT</literal>
"
@@ -2255,63 +1786,57 @@
"collection is a bag. This is certainly desirable."
msgstr ""
"サイズ20のコレクションに一つの要素を追加し、それから二つの要素を削除するとし"
-"ます。 Hibernateは一つの <literal>INSERT</literal> 文と二つの "
-"<literal>DELETE</literal> 文を発行します (コレクションがbagでなければ)。こ"
-"れは確かに望ましい動作です。"
+"ます。 Hibernate は一つの <literal>INSERT</literal> 文と二つの "
+"<literal>DELETE</literal> 文を発行します (コレクションが bag でなければ)。"
+"これは確かに望ましい動作です。"
#. Tag: para
-#: performance.xml:1163
#, no-c-format
msgid ""
"However, suppose that we remove eighteen elements, leaving two and then add "
"thee new elements. There are two possible ways to proceed"
msgstr ""
"しかし、18個の要素を削除して2つを残し、それから3つ新しい要素を追加するとしま"
-"す。 このとき二つの方法があります。"
+"す。このとき二つの方法があります。"
#. Tag: para
-#: performance.xml:1170
#, no-c-format
msgid "delete eighteen rows one by one and then insert three rows"
msgstr "18行を一つ一つ削除して、3行を追加する"
#. Tag: para
-#: performance.xml:1173
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"remove the whole collection in one SQL <literal>DELETE</literal> and
insert "
"all five current elements one by one"
msgstr ""
-"コレクション全体を削除( <literal>DELETE</literal> のSQLを一回)し、そして5つ"
-"の要素すべてを (一つずつ)追加する"
+"コレクション全体を削除( <literal>DELETE</literal> の SQL を一回)し、そして5"
+"つの要素すべてを(一つずつ)追加する"
#. Tag: para
-#: performance.xml:1178
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate cannot know that the second option is probably quicker. It would "
"probably be undesirable for Hibernate to be that intuitive as such behavior "
"might confuse database triggers, etc."
msgstr ""
-"Hibernateはこの場合に2番目の方法がより速いだろうとわかるほど賢くはありませ"
-"ん。 (そしてHibernateがこのように賢いことも望ましくないでしょう。このような"
-"振る舞いは データベースのトリガなどを混乱させるかもしれません。)"
+"Hibernate はこの場合に2番目の方法がより速いだろうとわかるほど賢くはありませ"
+"ん。(そして Hibernate がこのように賢いことも望ましくないでしょう。このような"
+"振る舞いはデータベースのトリガなどを混乱させるかもしれません。)"
#. Tag: para
-#: performance.xml:1184
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Fortunately, you can force this behavior (i.e. the second strategy) at any "
"time by discarding (i.e. dereferencing) the original collection and "
"returning a newly instantiated collection with all the current elements."
msgstr ""
"幸いにも、元のコレクションを捨て(つまり参照をやめて)、現在の要素をすべて持"
-"つ新しいコレクションの インスタンスを返すことで、いつでもこの振る舞い(2番目"
-"の戦略)を強制することが出来ます。 時にこれはとても便利で強力です。"
+"つ新しいコレクションのインスタンスを返すことで、いつでもこの振る舞い(2番目の"
+"戦略)を強制することが出来ます。時にこれはとても便利で強力です。"
#. Tag: para
-#: performance.xml:1190
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"One-shot-delete does not apply to collections mapped
<literal>inverse=\"true"
"\"</literal>."
@@ -2320,13 +1845,11 @@
"ンには行いません。"
#. Tag: title
-#: performance.xml:1199
#, no-c-format
msgid "Monitoring performance"
msgstr "パフォーマンスのモニタリング"
#. Tag: para
-#: performance.xml:1201
#, no-c-format
msgid ""
"Optimization is not much use without monitoring and access to performance "
@@ -2335,17 +1858,15 @@
"<literal>SessionFactory</literal>."
msgstr ""
"最適化はモニタリングやパフォーマンスを示す数値がなければ十分に行えません。 "
-"Hibernateは内部処理のすべての範囲の数値を提供します。 Hibernateの統計情報は "
-"<literal>SessionFactory</literal> 単位で取得可能です。"
+"Hibernate は内部処理のすべての範囲の数値を提供します。 Hibernate の統計情報"
+"は <literal>SessionFactory</literal> 単位で取得可能です。"
#. Tag: title
-#: performance.xml:1208
#, no-c-format
msgid "Monitoring a SessionFactory"
-msgstr "SessionFactoryのモニタリング"
+msgstr "SessionFactory のモニタリング"
#. Tag: para
-#: performance.xml:1210
#, no-c-format
msgid ""
"You can access <literal>SessionFactory</literal> metrics in two ways.
Your "
@@ -2353,58 +1874,26 @@
"and read or display the <literal>Statistics</literal> yourself."
msgstr ""
"<literal>SessionFactory</literal> のメトリクスにアクセスするには2つの方法があ"
-"ります。 最初の方法は、 <literal>sessionFactory.getStatistics()</literal> を"
-"呼び出し、 自分で <literal>Statistics</literal> の読み込みや表示を行います。"
+"ります。最初の方法は、 <literal>sessionFactory.getStatistics()</literal> を呼"
+"び出し、自分で <literal>Statistics</literal> の読み込みや表示を行います。"
#. Tag: para
-#: performance.xml:1216
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate can also use JMX to publish metrics if you enable the "
"<literal>StatisticsService</literal> MBean. You can enable a single
MBean "
"for all your <literal>SessionFactory</literal> or one per factory. See
the "
"following code for minimalistic configuration examples:"
msgstr ""
-"<literal>StatisticsService</literal>
MBeanを有効にしていれば、HibernateはJMX"
-"を使って メトリクスを発行することもできます。1つのMBeanをすべての "
-"<literal>SessionFactory</literal> に対して有効にするか、SessionFactoryごとに"
-"一つのMBeanを有効にすることが出来ます。 最小限の設定例である以下のコードを見"
-"てください。"
+"<literal>StatisticsService</literal> MBean を有効にしていれば、 Hibernate は
"
+"JMX を使ってメトリクスを発行することもできます。1つの MBean をすべての "
+"<literal>SessionFactory</literal> に対して有効にするか、 SessionFactory ごと"
+"に一つの MBean を有効にすることが出来ます。最小限の設定例である以下のコードを"
+"見てください:"
-#. Tag: programlisting
-#: performance.xml:1223
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[// MBean service registration for a specific SessionFactory\n"
-"Hashtable tb = new Hashtable();\n"
-"tb.put(\"type\", \"statistics\");\n"
-"tb.put(\"sessionFactory\", \"myFinancialApp\");\n"
-"ObjectName on = new ObjectName(\"hibernate\", tb); // MBean object
name\n"
-"\n"
-"StatisticsService stats = new StatisticsService(); // MBean implementation\n"
-"stats.setSessionFactory(sessionFactory); // Bind the stats to a "
-"SessionFactory\n"
-"server.registerMBean(stats, on); // Register the Mbean on the server]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: performance.xml:1226
-#, no-c-format
-msgid ""
-"<![CDATA[// MBean service registration for all SessionFactory's\n"
-"Hashtable tb = new Hashtable();\n"
-"tb.put(\"type\", \"statistics\");\n"
-"tb.put(\"sessionFactory\", \"all\");\n"
-"ObjectName on = new ObjectName(\"hibernate\", tb); // MBean object
name\n"
-"\n"
-"StatisticsService stats = new StatisticsService(); // MBean implementation\n"
-"server.registerMBean(stats, on); // Register the MBean on the server]]>"
-msgstr ""
-
-#. Tag: para
-#: performance.xml:1233
-#, fuzzy, no-c-format
-msgid ""
"You can activate and deactivate the monitoring for a "
"<literal>SessionFactory</literal>:"
msgstr ""
@@ -2412,7 +1901,6 @@
"とが出来ます。"
#. Tag: para
-#: performance.xml:1238
#, no-c-format
msgid ""
"at configuration time, set
<literal>hibernate.generate_statistics</literal> "
@@ -2422,7 +1910,6 @@
"<literal>false</literal> にします"
#. Tag: para
-#: performance.xml:1245
#, no-c-format
msgid ""
"at runtime:
<literal>sf.getStatistics().setStatisticsEnabled(true)</literal> "
@@ -2433,26 +1920,23 @@
"び出します"
#. Tag: para
-#: performance.xml:1252
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Statistics can be reset programmatically using the
<literal>clear()</"
"literal> method. A summary can be sent to a logger (info level) using the
"
"<literal>logSummary()</literal> method."
msgstr ""
"統計は <literal>clear()</literal> メソッドを使って手動でリセットすることが出"
-"来ます。 サマリは <literal>logSummary()</literal> メソッドを使ってloggerに送"
-"ることが出来ます (infoレベルです)。"
+"来ます。サマリは <literal>logSummary()</literal> メソッドを使って logger に送"
+"ることが出来ます(info レベルです)。"
#. Tag: title
-#: performance.xml:1261
#, no-c-format
msgid "Metrics"
msgstr "メトリクス"
#. Tag: para
-#: performance.xml:1263
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate provides a number of metrics, from basic information to more "
"specialized information that is only relevant in certain scenarios. All "
@@ -2460,30 +1944,27 @@
"interface API, in three categories:"
msgstr ""
"多くのものがあります。すべての使用可能なカウンタは <literal>Statistics</"
-"literal> インターフェイスのAPIに書かれており、3つの分類があります。"
+"literal> インターフェースの API に書かれており、3つの分類があります:"
#. Tag: para
-#: performance.xml:1270
#, no-c-format
msgid ""
"Metrics related to the general <literal>Session</literal> usage, such
as "
"number of open sessions, retrieved JDBC connections, etc."
msgstr ""
-"メトリクスは一般的な <literal>Session</literal> の使い方と関係しています。 "
-"オープンしたセッションの数がJDBCコネクションと関連しているのと同じです。"
+"メトリクスは一般的な <literal>Session</literal> の使い方と関係しています。"
+"オープンしたセッションの数が JDBC コネクションと関連しているのと同じです。"
#. Tag: para
-#: performance.xml:1276
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Metrics related to the entities, collections, queries, and caches as a whole
"
"(aka global metrics)."
msgstr ""
-"メトリクスは要素、コレクション、クエリやキャッシュなど全体に 関係しています"
+"メトリクスは要素、コレクション、クエリやキャッシュなど全体に関係しています"
"(別名はグローバルメトリクスです)。"
#. Tag: para
-#: performance.xml:1282
#, no-c-format
msgid ""
"Detailed metrics related to a particular entity, collection, query or cache "
@@ -2493,8 +1974,7 @@
"関係しています。"
#. Tag: para
-#: performance.xml:1289
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For example, you can check the cache hit, miss, and put ratio of entities, "
"collections and queries, and the average time a query needs. Be aware that "
@@ -2503,13 +1983,12 @@
"to 10 seconds."
msgstr ""
"例として、キャッシュのヒット、ヒットミスや、要素、コレクション、クエリの割"
-"合、クエリの実行に 必要な平均時間を確認できます。ミリ秒の数値はJavaの近似を受"
-"けることに注意してください。 HibernateはJVMの精度に制限され、プラットフォーム"
-"によっては10秒単位でしか正確でないかもしれません。"
+"合、クエリの実行に必要な平均時間を確認できます。ミリ秒の数値は Java の近似を"
+"受けることに注意してください。 Hibernate は JVM の精度に制限され、プラット"
+"フォームによっては10秒単位でしか正確でないかもしれません。"
#. Tag: para
-#: performance.xml:1296
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Simple getters are used to access the global metrics (i.e. not tied to a "
"particular entity, collection, cache region, etc.). You can access the "
@@ -2521,41 +2000,18 @@
"literal> API Javadoc for more information. The following code is a simple
"
"example:"
msgstr ""
-"単純なgetterはグローバルメトリクス(すなわち特定のエンティティ、コレクショ"
-"ン、キャッシュ領域などに縛られない) にアクセスするために使います。特定のエン"
-"ティティ、コレクション、キャッシュ領域のメトリクスは、 それらの名前や、クエリ"
-"のHQL、SQL表現によってアクセスすることが出来ます。さらに詳しい情報は、 "
+"単純な getter はグローバルメトリクス(すなわち特定のエンティティ、コレクショ"
+"ン、キャッシュ領域などに縛られない)にアクセスするために使います。特定のエン"
+"ティティ、コレクション、キャッシュ領域のメトリクスは、それらの名前や、クエリ"
+"の HQL 、 SQL 表現によってアクセスすることが出来ます。さらに詳しい情報は、 "
"<literal>Statistics</literal> 、
<literal>EntityStatistics</literal> 、 "
"<literal>CollectionStatistics</literal> 、 "
"<literal>SecondLevelCacheStatistics</literal> 、
<literal>QueryStatistics</"
-"literal> APIのjavadocを 参照してください。以下のコードは簡単な例です。"
+"literal> API の javadoc を参照してください。以下のコードは簡単な例です:"
-#. Tag: programlisting
-#: performance.xml:1306
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Statistics stats =
HibernateUtil.sessionFactory.getStatistics();\n"
-"\n"
-"double queryCacheHitCount = stats.getQueryCacheHitCount();\n"
-"double queryCacheMissCount = stats.getQueryCacheMissCount();\n"
-"double queryCacheHitRatio =\n"
-" queryCacheHitCount / (queryCacheHitCount + queryCacheMissCount);\n"
-"\n"
-"log.info(\"Query Hit ratio:\" + queryCacheHitRatio);\n"
-"\n"
-"EntityStatistics entityStats =\n"
-" stats.getEntityStatistics( Cat.class.getName() );\n"
-"long changes =\n"
-" entityStats.getInsertCount()\n"
-" + entityStats.getUpdateCount()\n"
-" + entityStats.getDeleteCount();\n"
-"log.info(Cat.class.getName() + \" changed \" + changes +
\"times\" );]]>"
-msgstr ""
-
-#. Tag: para
-#: performance.xml:1308
-#, fuzzy, no-c-format
-msgid ""
"You can work on all entities, collections, queries and region caches, by "
"retrieving the list of names of entities, collections, queries and region "
"caches using the following methods: <literal>getQueries()</literal>,
"
@@ -2565,44 +2021,463 @@
"すべてのエンティティ、コレクション、クエリ、キャッシュ領域に対して行う場合"
"は、 <literal>getQueries()</literal> 、
<literal>getEntityNames()</"
"literal>、 <literal>getCollectionRoleNames()</literal> 、 "
-"<literal>getSecondLevelCacheRegionNames()</literal> メソッドで
それぞれの名前"
+"<literal>getSecondLevelCacheRegionNames()</literal> メソッドでそれぞれの名前"
"のリストを取得することが出来ます。"
+#, fuzzy
#~ msgid ""
-#~ "where <literal>CatImpl</literal> implements the interface
<literal>Cat</"
-#~ "literal> and <literal>DomesticCatImpl</literal> implements the
interface "
-#~ "<literal>DomesticCat</literal>. Then proxies for instances of
"
-#~ "<literal>Cat</literal> and
<literal>DomesticCat</literal> may be returned "
-#~ "by <literal>load()</literal> or
<literal>iterate()</literal>. (Note that "
-#~ "<literal>list()</literal> does not usually return proxies.)"
+#~ "<![CDATA[s = sessions.openSession();\n"
+#~ "Transaction tx = s.beginTransaction();\n"
+#~ " \n"
+#~ "User u = (User) s.createQuery(\"from User u where
u.name=:userName\")\n"
+#~ " .setString(\"userName\", userName).uniqueResult();\n"
+#~ "Map permissions = u.getPermissions();\n"
+#~ "\n"
+#~ "tx.commit();\n"
+#~ "s.close();\n"
+#~ "\n"
+#~ "Integer accessLevel = (Integer) permissions.get(\"accounts\"); //
"
+#~ "Error!]]>"
#~ msgstr ""
-#~ "<literal>CatImpl</literal> は <literal>Cat</literal>
インターフェイスを実"
-#~ "装するのに対し、 <literal>DomesticCatImpl</literal> は "
-#~ "<literal>DomesticCat</literal> を実装します。 すると、
<literal>load()</"
-#~ "literal> や <literal>iterate()</literal> は、
<literal>Cat</literal> や "
-#~ "<literal>DomesticCat</literal> のインスタンスのプロキシを 返します。"
-#~ "( <literal>list()</literal> は通常はプロキシを返さないことに注意してくだ"
-#~ "さい。)"
+#~ "s = sessions.openSession();\n"
+#~ "Transaction tx = s.beginTransaction();\n"
+#~ " \n"
+#~ "User u = (User) s.createQuery(\"from User u where
u.name=:userName\")\n"
+#~ " .setString(\"userName\", userName).uniqueResult();\n"
+#~ "Map permissions = u.getPermissions();\n"
+#~ "\n"
+#~ "tx.commit();\n"
+#~ "s.close();\n"
+#~ "\n"
+#~ "Integer accessLevel = (Integer) permissions.get(\"accounts\"); //
Error!"
+#, fuzzy
#~ msgid ""
-#~ "We've already spent quite some time talking about collections. In this
"
-#~ "section we will highlight a couple more issues about how collections "
-#~ "behave at runtime."
+#~ "<![CDATA[<set name=\"permissions\" \n"
+#~ " fetch=\"join\">\n"
+#~ " <key column=\"userId\"/>\n"
+#~ " <one-to-many class=\"Permission\"/>\n"
+#~ "</set]]>"
#~ msgstr ""
-#~ "コレクションの話題にはすでに多くの時間を使いました。この節では コレクショ"
-#~ "ンが実行時にどのように振舞うかについての話題を2、3取り上げます。"
+#~ "<set name=\"permissions\" \n"
+#~ " fetch=\"join\">\n"
+#~ " <key column=\"userId\"/>\n"
+#~ " <one-to-many class=\"Permission\"/>\n"
+#~ "</set"
+#, fuzzy
#~ msgid ""
-#~ "TODO: This doesn't make sense: In the first case, we retrieve and use the
"
-#~ "MBean directly. In the second one, we must give the JNDI name in which "
-#~ "the session factory is held before using it. Use "
-#~
"<literal>hibernateStatsBean.setSessionFactoryJNDIName(\"my/JNDI/Name\")</"
-#~ "literal>"
+#~ "<![CDATA[<many-to-one name=\"mother\" class=\"Cat\"
fetch=\"join\"/>]]>"
+#~ msgstr "<many-to-one name=\"mother\" class=\"Cat\"
fetch=\"join\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[User user = (User) session.createCriteria(User.class)\n"
+#~ " .setFetchMode(\"permissions\",
FetchMode.JOIN)\n"
+#~ " .add( Restrictions.idEq(userId) )\n"
+#~ " .uniqueResult();]]>"
#~ msgstr ""
-#~ "TODO: これは意味がありません。最初のケースは、MBeanを直接復元して使用しま"
-#~ "す。2番目のケースは、 使う前にsession factoryが持っているJNDI名を渡さなけ"
-#~ "ればなりません。 <literal>hibernateStatsBean.setSessionFactoryJNDIName"
-#~ "(\"my/JNDI/Name\")</literal> を使ってください。"
+#~ "User user = (User) session.createCriteria(User.class)\n"
+#~ " .setFetchMode(\"permissions\",
FetchMode.JOIN)\n"
+#~ " .add( Restrictions.idEq(userId) )\n"
+#~ " .uniqueResult();"
-#~ msgid "yes"
-#~ msgstr "yes"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Cat\"
proxy=\"Cat\">\n"
+#~ " ......\n"
+#~ " <subclass name=\"DomesticCat\">\n"
+#~ " .....\n"
+#~ " </subclass>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Cat\" proxy=\"Cat\">\n"
+#~ " ......\n"
+#~ " <subclass name=\"DomesticCat\">\n"
+#~ " .....\n"
+#~ " </subclass>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Cat cat = (Cat) session.load(Cat.class, id); // instantiate a
"
+#~ "proxy (does not hit the db)\n"
+#~ "if ( cat.isDomesticCat() ) { // hit the db to initialize
"
+#~ "the proxy\n"
+#~ " DomesticCat dc = (DomesticCat) cat; // Error!\n"
+#~ " ....\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "Cat cat = (Cat) session.load(Cat.class, id); // instantiate a proxy "
+#~ "(does not hit the db)\n"
+#~ "if ( cat.isDomesticCat() ) { // hit the db to initialize
"
+#~ "the proxy\n"
+#~ " DomesticCat dc = (DomesticCat) cat; // Error!\n"
+#~ " ....\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Cat cat = (Cat) session.load(Cat.class, id); // "
+#~ "instantiate a Cat proxy\n"
+#~ "DomesticCat dc = \n"
+#~ " (DomesticCat) session.load(DomesticCat.class, id); // acquire "
+#~ "new DomesticCat proxy!\n"
+#~ "System.out.println(cat==dc); // false]]>"
+#~ msgstr ""
+#~ "Cat cat = (Cat) session.load(Cat.class, id); // instantiate a "
+#~ "Cat proxy\n"
+#~ "DomesticCat dc = \n"
+#~ " (DomesticCat) session.load(DomesticCat.class, id); // acquire "
+#~ "new DomesticCat proxy!\n"
+#~ "System.out.println(cat==dc); // false"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[cat.setWeight(11.0); // hit the db to initialize the proxy\n"
+#~ "System.out.println( dc.getWeight() ); // 11.0]]>"
+#~ msgstr ""
+#~ "cat.setWeight(11.0); // hit the db to initialize the proxy\n"
+#~ "System.out.println( dc.getWeight() ); // 11.0"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"CatImpl\"
proxy=\"Cat\">\n"
+#~ " ......\n"
+#~ " <subclass name=\"DomesticCatImpl\"
proxy=\"DomesticCat\">\n"
+#~ " .....\n"
+#~ " </subclass>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"CatImpl\"
proxy=\"Cat\">\n"
+#~ " ......\n"
+#~ " <subclass name=\"DomesticCatImpl\"
proxy=\"DomesticCat\">\n"
+#~ " .....\n"
+#~ " </subclass>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Cat cat = (Cat) session.load(CatImpl.class, catid);\n"
+#~ "Iterator iter = session.createQuery(\"from CatImpl as cat where cat."
+#~ "name='fritz'\").iterate();\n"
+#~ "Cat fritz = (Cat) iter.next();]]>"
+#~ msgstr ""
+#~ "Cat cat = (Cat) session.load(CatImpl.class, catid);\n"
+#~ "Iterator iter = session.iterate(\"from CatImpl as cat where cat."
+#~ "name='fritz'\");\n"
+#~ "Cat fritz = (Cat) iter.next();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[( (Integer) s.createFilter( collection, \"select
count(*)\" )."
+#~ "list().get(0) ).intValue()]]>"
+#~ msgstr ""
+#~ "( (Integer) s.createFilter( collection, \"select count(*)\"
).list().get"
+#~ "(0) ).intValue()"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[s.createFilter( lazyCollection,
\"\").setFirstResult(0)."
+#~ "setMaxResults(10).list();]]>"
+#~ msgstr ""
+#~ "s.createFilter( lazyCollection,
\"\").setFirstResult(0).setMaxResults(10)."
+#~ "list();"
+
+#, fuzzy
+#~ msgid "<![CDATA[<class name=\"Person\"
batch-size=\"10\">...</class>]]>"
+#~ msgstr "<class name=\"Person\"
batch-size=\"10\">...</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <set name=\"cats\" batch-size=\"3\">\n"
+#~ " ...\n"
+#~ " </set>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <set name=\"cats\"
batch-size=\"3\">\n"
+#~ " ...\n"
+#~ " </set>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Document\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\" not-null=\"true\"
length=\"50\"/>\n"
+#~ " <property name=\"summary\" not-null=\"true\"
length=\"200\" lazy="
+#~ "\"true\"/>\n"
+#~ " <property name=\"text\" not-null=\"true\"
length=\"2000\" lazy=\"true"
+#~ "\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Document\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\" not-null=\"true\"
length=\"50\"/>\n"
+#~ " <property name=\"summary\" not-null=\"true\"
length=\"200\" lazy="
+#~ "\"true\"/>\n"
+#~ " <property name=\"text\" not-null=\"true\"
length=\"2000\" lazy="
+#~ "\"true\"/>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<target name=\"instrument\"
depends=\"compile\">\n"
+#~ " <taskdef name=\"instrument\"
classname=\"org.hibernate.tool."
+#~ "instrument.InstrumentTask\">\n"
+#~ " <classpath path=\"${jar.path}\"/>\n"
+#~ " <classpath path=\"${classes.dir}\"/>\n"
+#~ " <classpath refid=\"lib.class.path\"/>\n"
+#~ " </taskdef>\n"
+#~ "\n"
+#~ " <instrument verbose=\"true\">\n"
+#~ " <fileset
dir=\"${testclasses.dir}/org/hibernate/auction/model\">\n"
+#~ " <include name=\"*.class\"/>\n"
+#~ " </fileset>\n"
+#~ " </instrument>\n"
+#~ "</target>]]>"
+#~ msgstr ""
+#~ "<target name=\"instrument\"
depends=\"compile\">\n"
+#~ " <taskdef name=\"instrument\"
classname=\"org.hibernate.tool."
+#~ "instrument.InstrumentTask\">\n"
+#~ " <classpath
path=\"${jar.path}\"/>\n"
+#~ " <classpath
path=\"${classes.dir}\"/>\n"
+#~ " <classpath refid=\"lib.class.path\"/>\n"
+#~ " </taskdef>\n"
+#~ "\n"
+#~ " <instrument verbose=\"true\">\n"
+#~ " <fileset
dir=\"${testclasses.dir}/org/hibernate/auction/"
+#~ "model\">\n"
+#~ " <include name=\"*.class\"/>\n"
+#~ " </fileset>\n"
+#~ " </instrument>\n"
+#~ "</target>"
+
+#~ msgid "<entry>yes</entry>"
+#~ msgstr "<entry>yes</entry>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<cache \n"
+#~ "
usage=\"transactional|read-write|nonstrict-read-write|read-only\"\n"
+#~ " region=\"RegionName\"\n"
+#~ " include=\"all|non-lazy\"\n"
+#~ "/>]]>"
+#~ msgstr ""
+#~ "<cache \n"
+#~ "
usage=\"transactional|read-write|nonstrict-read-write|read-only\"\n"
+#~ " region=\"RegionName\"\n"
+#~ " include=\"all|non-lazy\"\n"
+#~ "/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"eg.Immutable\"
mutable=\"false\">\n"
+#~ " <cache usage=\"read-only\"/>\n"
+#~ " ....\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"eg.Immutable\"
mutable=\"false\">\n"
+#~ " <cache usage=\"read-only\"/>\n"
+#~ " ....\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"eg.Cat\" .... >\n"
+#~ " <cache usage=\"read-write\"/>\n"
+#~ " ....\n"
+#~ " <set name=\"kittens\" ... >\n"
+#~ " <cache usage=\"read-write\"/>\n"
+#~ " ....\n"
+#~ " </set>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"eg.Cat\" .... >\n"
+#~ " <cache usage=\"read-write\"/>\n"
+#~ " ....\n"
+#~ " <set name=\"kittens\" ... >\n"
+#~ " <cache usage=\"read-write\"/>\n"
+#~ " ....\n"
+#~ " </set>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[ScrollableResult cats = sess.createQuery(\"from Cat as
cat\")."
+#~ "scroll(); //a huge result set\n"
+#~ "while ( cats.next() ) {\n"
+#~ " Cat cat = (Cat) cats.get(0);\n"
+#~ " doSomethingWithACat(cat);\n"
+#~ " sess.evict(cat);\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "ScrollableResult cats = sess.createQuery(\"from Cat as
cat\").scroll(); //"
+#~ "a huge result set\n"
+#~ "while ( cats.next() ) {\n"
+#~ " Cat cat = (Cat) cats.get(0);\n"
+#~ " doSomethingWithACat(cat);\n"
+#~ " sess.evict(cat);\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sessionFactory.evict(Cat.class, catId); //evict a particular "
+#~ "Cat\n"
+#~ "sessionFactory.evict(Cat.class); //evict all Cats\n"
+#~ "sessionFactory.evictCollection(\"Cat.kittens\", catId); //evict a
"
+#~ "particular collection of kittens\n"
+#~ "sessionFactory.evictCollection(\"Cat.kittens\"); //evict all kitten
"
+#~ "collections]]>"
+#~ msgstr ""
+#~ "sessionFactory.evict(Cat.class, catId); //evict a particular Cat\n"
+#~ "sessionFactory.evict(Cat.class); //evict all Cats\n"
+#~ "sessionFactory.evictCollection(\"Cat.kittens\", catId); //evict a
"
+#~ "particular collection of kittens\n"
+#~ "sessionFactory.evictCollection(\"Cat.kittens\"); //evict all kitten
"
+#~ "collections"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Map cacheEntries = sessionFactory.getStatistics()\n"
+#~ " .getSecondLevelCacheStatistics(regionName)\n"
+#~ " .getEntries();]]>"
+#~ msgstr ""
+#~ "Map cacheEntries = sessionFactory.getStatistics()\n"
+#~ " .getSecondLevelCacheStatistics(regionName)\n"
+#~ " .getEntries();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[hibernate.generate_statistics true\n"
+#~ "hibernate.cache.use_structured_entries true]]>"
+#~ msgstr ""
+#~ "hibernate.generate_statistics true\n"
+#~ "hibernate.cache.use_structured_entries true"
+
+#, fuzzy
+#~ msgid "<![CDATA[hibernate.cache.use_query_cache true]]>"
+#~ msgstr "hibernate.cache.use_query_cache true"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List blogs = sess.createQuery(\"from Blog blog where
blog."
+#~ "blogger = :blogger\")\n"
+#~ " .setEntity(\"blogger\", blogger)\n"
+#~ " .setMaxResults(15)\n"
+#~ " .setCacheable(true)\n"
+#~ " .setCacheRegion(\"frontpages\")\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List blogs = sess.createQuery(\"from Blog blog where blog.blogger =
:"
+#~ "blogger\")\n"
+#~ " .setEntity(\"blogger\", blogger)\n"
+#~ " .setMaxResults(15)\n"
+#~ " .setCacheable(true)\n"
+#~ " .setCacheRegion(\"frontpages\")\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Parent p = (Parent) sess.load(Parent.class, id);\n"
+#~ "Child c = new Child();\n"
+#~ "c.setParent(p);\n"
+#~ "p.getChildren().add(c); //no need to fetch the collection!\n"
+#~ "sess.flush();]]>"
+#~ msgstr ""
+#~ "Parent p = (Parent) sess.load(Parent.class, id);\n"
+#~ "Child c = new Child();\n"
+#~ "c.setParent(p);\n"
+#~ "p.getChildren().add(c); //no need to fetch the collection!\n"
+#~ "sess.flush();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// MBean service registration for a specific SessionFactory\n"
+#~ "Hashtable tb = new Hashtable();\n"
+#~ "tb.put(\"type\", \"statistics\");\n"
+#~ "tb.put(\"sessionFactory\", \"myFinancialApp\");\n"
+#~ "ObjectName on = new ObjectName(\"hibernate\", tb); // MBean object
name\n"
+#~ "\n"
+#~ "StatisticsService stats = new StatisticsService(); // MBean "
+#~ "implementation\n"
+#~ "stats.setSessionFactory(sessionFactory); // Bind the stats to a "
+#~ "SessionFactory\n"
+#~ "server.registerMBean(stats, on); // Register the Mbean on the
server]]>"
+#~ msgstr ""
+#~ "// MBean service registration for a specific SessionFactory\n"
+#~ "Hashtable tb = new Hashtable();\n"
+#~ "tb.put(\"type\", \"statistics\");\n"
+#~ "tb.put(\"sessionFactory\", \"myFinancialApp\");\n"
+#~ "ObjectName on = new ObjectName(\"hibernate\", tb); // MBean object
name\n"
+#~ "\n"
+#~ "StatisticsService stats = new StatisticsService(); // MBean "
+#~ "implementation\n"
+#~ "stats.setSessionFactory(sessionFactory); // Bind the stats to a "
+#~ "SessionFactory\n"
+#~ "server.registerMBean(stats, on); // Register the Mbean on the server"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// MBean service registration for all SessionFactory's\n"
+#~ "Hashtable tb = new Hashtable();\n"
+#~ "tb.put(\"type\", \"statistics\");\n"
+#~ "tb.put(\"sessionFactory\", \"all\");\n"
+#~ "ObjectName on = new ObjectName(\"hibernate\", tb); // MBean object
name\n"
+#~ "\n"
+#~ "StatisticsService stats = new StatisticsService(); // MBean "
+#~ "implementation\n"
+#~ "server.registerMBean(stats, on); // Register the MBean on the
server]]>"
+#~ msgstr ""
+#~ "// MBean service registration for all SessionFactory's\n"
+#~ "Hashtable tb = new Hashtable();\n"
+#~ "tb.put(\"type\", \"statistics\");\n"
+#~ "tb.put(\"sessionFactory\", \"all\");\n"
+#~ "ObjectName on = new ObjectName(\"hibernate\", tb); // MBean object
name\n"
+#~ "\n"
+#~ "StatisticsService stats = new StatisticsService(); // MBean "
+#~ "implementation\n"
+#~ "server.registerMBean(stats, on); // Register the MBean on the server"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Statistics stats = HibernateUtil.sessionFactory.getStatistics"
+#~ "();\n"
+#~ "\n"
+#~ "double queryCacheHitCount = stats.getQueryCacheHitCount();\n"
+#~ "double queryCacheMissCount = stats.getQueryCacheMissCount();\n"
+#~ "double queryCacheHitRatio =\n"
+#~ " queryCacheHitCount / (queryCacheHitCount + queryCacheMissCount);\n"
+#~ "\n"
+#~ "log.info(\"Query Hit ratio:\" + queryCacheHitRatio);\n"
+#~ "\n"
+#~ "EntityStatistics entityStats =\n"
+#~ " stats.getEntityStatistics( Cat.class.getName() );\n"
+#~ "long changes =\n"
+#~ " entityStats.getInsertCount()\n"
+#~ " + entityStats.getUpdateCount()\n"
+#~ " + entityStats.getDeleteCount();\n"
+#~ "log.info(Cat.class.getName() + \" changed \" + changes +
\"times\" );]]>"
+#~ msgstr ""
+#~ "Statistics stats = HibernateUtil.sessionFactory.getStatistics();\n"
+#~ "\n"
+#~ "double queryCacheHitCount = stats.getQueryCacheHitCount();\n"
+#~ "double queryCacheMissCount = stats.getQueryCacheMissCount();\n"
+#~ "double queryCacheHitRatio =\n"
+#~ " queryCacheHitCount / (queryCacheHitCount + queryCacheMissCount);\n"
+#~ "\n"
+#~ "log.info(\"Query Hit ratio:\" + queryCacheHitRatio);\n"
+#~ "\n"
+#~ "EntityStatistics entityStats =\n"
+#~ " stats.getEntityStatistics( Cat.class.getName() );\n"
+#~ "long changes =\n"
+#~ " entityStats.getInsertCount()\n"
+#~ " + entityStats.getUpdateCount()\n"
+#~ " + entityStats.getDeleteCount();\n"
+#~ "log.info(Cat.class.getName() + \" changed \" + changes +
\"times\" );"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/persistent_classes.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/persistent_classes.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/persistent_classes.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,24 +1,25 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-23T01:43:45\n"
+"PO-Revision-Date: 2010-01-04 13:58+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: persistent_classes.xml:29
#, no-c-format
msgid "Persistent Classes"
msgstr "永続クラス"
#. Tag: para
-#: persistent_classes.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Persistent classes are classes in an application that implement the entities
"
"of the business problem (e.g. Customer and Order in an E-commerce "
@@ -26,15 +27,14 @@
"in the persistent state. For example, an instance can instead be transient "
"or detached."
msgstr ""
-"永続クラスはビジネス上の問題のエンティティ(例えば、Eコマースアプリケーション"
-"の顧客や注文) を実装するアプリケーションのクラスです。 永続クラスのすべての"
-"インスタンスが永続状態であると見なされるわけではありません。 インスタンスは逆"
+"永続クラスはビジネス上の問題のエンティティ(例えば、 E コマースアプリケーショ"
+"ンの顧客や注文) を実装するアプリケーションのクラスです。永続クラスのすべての"
+"インスタンスが永続状態であると見なされるわけではありません。インスタンスは逆"
"に一時的(transient)であったり、分離状態(detached)であったりするかもしれま"
"せん。"
#. Tag: para
-#: persistent_classes.xml:38
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate works best if these classes follow some simple rules, also known "
"as the Plain Old Java Object (POJO) programming model. However, none of "
@@ -42,114 +42,25 @@
"about the nature of your persistent objects. You can express a domain model "
"in other ways (using trees of <literal>Map</literal> instances, for
example)."
msgstr ""
-"Plain Old Java Object (POJO)プログラミングモデルとしても知られる いくつかの単"
-"純なルールに従うなら、Hibernateは最もよく働きます。 しかしこれらのルールは難"
-"しいものではありません。 実際Hibernate3は永続オブジェクトの性質にほとんど何の"
-"前提も置いていません。 ドメインモデルは他の方法で表現することもできます。 例"
+"Plain Old Java Object (POJO)プログラミングモデルとしても知られるいくつかの単"
+"純なルールに従うなら、 Hibernate は最もよく働きます。しかしこれらのルールは難"
+"しいものではありません。実際 Hibernate3 は永続オブジェクトの性質にほとんど何"
+"の前提も置いていません。ドメインモデルは他の方法で表現することもできます。例"
"えば <literal>Map</literal> インスタンスのツリーを使う方法があります。"
#. Tag: title
-#: persistent_classes.xml:47
#, no-c-format
msgid "A simple POJO example"
-msgstr "単純なPOJOの例"
+msgstr "単純な POJO の例"
#. Tag: para
-#: persistent_classes.xml:49
#, fuzzy, no-c-format
msgid ""
"Most Java applications require a persistent class representing felines. For "
"example:"
-msgstr ""
-"ほとんどのJavaアプリケーションにはネコ科の動物を表現する永続クラスが必要で"
-"す。"
+msgstr "以下はネコ科の動物を表現する永続クラスです。"
-#. Tag: programlisting
-#: persistent_classes.xml:53
-#, no-c-format
-msgid ""
-"<![CDATA[package eg;\n"
-"import java.util.Set;\n"
-"import java.util.Date;\n"
-"\n"
-"public class Cat {\n"
-" private Long id; // identifier\n"
-"\n"
-" private Date birthdate;\n"
-" private Color color;\n"
-" private char sex;\n"
-" private float weight;\n"
-" private int litterId;\n"
-"\n"
-" private Cat mother;\n"
-" private Set kittens = new HashSet();\n"
-"\n"
-" private void setId(Long id) {\n"
-" this.id=id;\n"
-" }\n"
-" public Long getId() {\n"
-" return id;\n"
-" }\n"
-"\n"
-" void setBirthdate(Date date) {\n"
-" birthdate = date;\n"
-" }\n"
-" public Date getBirthdate() {\n"
-" return birthdate;\n"
-" }\n"
-"\n"
-" void setWeight(float weight) {\n"
-" this.weight = weight;\n"
-" }\n"
-" public float getWeight() {\n"
-" return weight;\n"
-" }\n"
-"\n"
-" public Color getColor() {\n"
-" return color;\n"
-" }\n"
-" void setColor(Color color) {\n"
-" this.color = color;\n"
-" }\n"
-"\n"
-" void setSex(char sex) {\n"
-" this.sex=sex;\n"
-" }\n"
-" public char getSex() {\n"
-" return sex;\n"
-" }\n"
-"\n"
-" void setLitterId(int id) {\n"
-" this.litterId = id;\n"
-" }\n"
-" public int getLitterId() {\n"
-" return litterId;\n"
-" }\n"
-"\n"
-" void setMother(Cat mother) {\n"
-" this.mother = mother;\n"
-" }\n"
-" public Cat getMother() {\n"
-" return mother;\n"
-" }\n"
-" void setKittens(Set kittens) {\n"
-" this.kittens = kittens;\n"
-" }\n"
-" public Set getKittens() {\n"
-" return kittens;\n"
-" }\n"
-" \n"
-" // addKitten not needed by Hibernate\n"
-" public void addKitten(Cat kitten) {\n"
-" kitten.setMother(this);\n"
-" kitten.setLitterId( kittens.size() ); \n"
-" kittens.add(kitten);\n"
-" }\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: persistent_classes.xml:55
#, no-c-format
msgid ""
"The four main rules of persistent classes are explored in more detail in the
"
@@ -157,14 +68,12 @@
msgstr ""
#. Tag: title
-#: persistent_classes.xml:61
#, no-c-format
msgid "Implement a no-argument constructor"
msgstr "引数のないコンストラクタを実装する"
#. Tag: para
-#: persistent_classes.xml:63
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>Cat</literal> has a no-argument constructor. All persistent
classes "
"must have a default constructor (which can be non-public) so that Hibernate "
@@ -173,21 +82,19 @@
"<emphasis>package</emphasis> visibility for runtime proxy generation in
"
"Hibernate."
msgstr ""
-"<literal>Cat</literal> には引数のないコンストラクタがあります。 Hibernateが "
-"<literal>Constructor.newInstance()</literal> を使って永続クラスの インスタン"
-"ス化を行えるように、すべての永続クラスにはデフォルトコンストラクタ (publicで"
-"なくても構いません)がなければなりません。 Hibernateの実行時プロキシ生成のた"
-"めに、少なくとも <emphasis>package</emphasis> の可視性を持つデフォルトコンス"
-"トラクタを強くお勧めします。"
+"<literal>Cat</literal> には引数のないコンストラクタがあります。 Hibernate が "
+"<literal>Constructor.newInstance()</literal> を使って永続クラスのインスタンス"
+"化を行えるように、すべての永続クラスにはデフォルトコンストラクタ (public で"
+"なくても構いません) がなければなりません。 Hibernate の実行時プロキシ生成の"
+"ために、少なくとも <emphasis>package</emphasis> の可視性を持つデフォルトコン"
+"ストラクタを強くお勧めします。"
#. Tag: title
-#: persistent_classes.xml:73
#, no-c-format
msgid "Provide an identifier property (optional)"
msgstr "識別子プロパティを用意する(オプション)"
#. Tag: para
-#: persistent_classes.xml:75
#, fuzzy, no-c-format
msgid ""
"<literal>Cat</literal> has a property called
<literal>id</literal>. This "
@@ -199,27 +106,26 @@
"types (see the section on composite identifiers later in the chapter.)"
msgstr ""
"<literal>Cat</literal> には <literal>id</literal>
というプロパティがありま"
-"す。 このプロパティはデータベーステーブルの主キーカラムへマッピングされま"
-"す。 このプロパティの名前は何でも構いませんし、型はどのようなプリミティブ型で"
-"も、 プリミティブの「ラッパー」型でも、<literal>java.lang.String</literal> "
-"や <literal>java.util.Date</literal> でも構いません。 (もしレガシーデータ"
-"ベーステーブルが複合キーを持つならば、 今述べたような型のプロパティを持つユー"
-"ザ定義のクラスを使うことさえ可能です。 後で複合識別子の節を見てください。)"
+"す。このプロパティはデータベーステーブルの主キーカラムへマッピングされます。"
+"このプロパティの名前は何でも構いませんし、型はどのようなプリミティブ型でも、"
+"プリミティブの「ラッパー」型でも、 <literal>java.lang.String</literal> や "
+"<literal>java.util.Date</literal> でも構いません。 (もしレガシーデータベース"
+"テーブルが複合キーを持つならば、今述べたような型のプロパティを持つユーザー定"
+"義のクラスを使うことさえ可能です。後で複合識別子のセクションを見てくださ"
+"い。)"
#. Tag: para
-#: persistent_classes.xml:84
#, no-c-format
msgid ""
"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."
msgstr ""
-"識別子プロパティは厳密にはオプションです。 これを省略して、Hibernateに内部的"
-"にオブジェクトの識別子を追跡させることは可能です。 しかしおすすめはしません。"
+"識別子プロパティは厳密にはオプションです。これを省略して、 Hibernate に内部的"
+"にオブジェクトの識別子を追跡させることは可能です。しかしお勧めはしません。"
#. Tag: para
-#: persistent_classes.xml:89
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In fact, some functionality is available only to classes that declare an "
"identifier property:"
@@ -228,71 +134,64 @@
"す:"
#. Tag: para
-#: persistent_classes.xml:96
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Transitive reattachment for detached objects (cascade update or cascade "
-"merge) - see"
+"merge) - see <xref linkend=\"objectstate-transitive\" />"
msgstr ""
-"分離オブジェクトの連鎖的な再追加(カスケード更新やカスケードマージ)。 <xref "
-"linkend=\"objectstate-transitive\"/> を参照してください。"
+"分離オブジェクトの連鎖的な再追加(カスケード更新やカスケードマージ) - <xref "
+"linkend=\"objectstate-transitive\" />次を参照してください。"
-#. Tag: literal
-#: persistent_classes.xml:103
+#. Tag: para
#, no-c-format
-msgid "Session.saveOrUpdate()"
-msgstr "Session.saveOrUpdate()"
+msgid "<literal>Session.saveOrUpdate()</literal>"
+msgstr "<xref linkend=\"objectstate-transitive\" />"
-#. Tag: literal
-#: persistent_classes.xml:108
+#. Tag: para
#, no-c-format
-msgid "Session.merge()"
-msgstr "Session.merge()"
+msgid "<literal>Session.merge()</literal>"
+msgstr "<literal>Session.merge()</literal>"
#. Tag: para
-#: persistent_classes.xml:113
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"We recommend that you declare consistently-named identifier properties on "
"persistent classes and that you use a nullable (i.e., non-primitive) type."
msgstr ""
-"永続クラスには、一貫した名前の識別子プロパティを定義することをお勧めします。 "
-"さらにnull値を取れる(つまりプリミティブではない)型を使った方がよいでしょう。"
+"永続クラスには、一貫した名前の識別子プロパティを定義することをお勧めします。"
+"さらに null 値を取れる(つまりプリミティブではない)型を使った方がよいでしょ"
+"う。"
#. Tag: title
-#: persistent_classes.xml:120
#, no-c-format
msgid "Prefer non-final classes (optional)"
-msgstr "finalクラスにしない(オプション)"
+msgstr "final クラスにしない(オプション)"
#. Tag: para
-#: persistent_classes.xml:121
#, no-c-format
msgid ""
"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."
msgstr ""
-"Hibernateの中心的な特徴である <emphasis>プロキシ</emphasis> は、 永続クラスが"
-"finalでないこと、またはメソッドを全部publicで宣言している インターフェイスが"
-"実装されているかに依存しています。"
+"Hibernate の中心的な特徴である <emphasis>プロキシ</emphasis> は、永続クラス"
+"が final でないこと、またはメソッドを全部 public で宣言しているインターフェー"
+"スが実装されているかに依存しています。"
#. Tag: para
-#: persistent_classes.xml:126
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can persist <literal>final</literal> classes that do not implement
an "
"interface with Hibernate. You will not, however, be able to use proxies for "
"lazy association fetching which will ultimately limit your options for "
"performance tuning."
msgstr ""
-"Hibernateでインターフェイスを実装していない <literal>final</literal> クラスを"
-"永続化することはできますが、 遅延関連フェッチに対してプロキシを使うことはでき"
-"なくなります。 これはパフォーマンスチューニングへの選択肢を狭めることになりま"
-"す。"
+"Hibernate でインターフェースを実装していない <literal>final</literal> クラス"
+"を永続化することはできますが、遅延関連フェッチに対してプロキシを使うことはで"
+"きなくなります。これはパフォーマンスチューニングへの選択肢を狭めることになり"
+"ます。"
#. Tag: para
-#: persistent_classes.xml:131
#, no-c-format
msgid ""
"You should also avoid declaring <literal>public final</literal> methods
on "
@@ -300,19 +199,17 @@
"final</literal> method, you must explicitly disable proxying by setting
"
"<literal>lazy=\"false\"</literal>."
msgstr ""
-"finalではないクラスで <literal>public final</literal> メソッドを定義すること"
+"final ではないクラスで <literal>public final</literal> メソッドを定義すること"
"も避けるべきです。 <literal>public final</literal> メソッドを持つクラスを使い"
"たければ、 <literal>lazy=\"false\"</literal>
と設定して明示的にプロキシを無効"
"にしなければなりません。"
#. Tag: title
-#: persistent_classes.xml:139
#, no-c-format
msgid "Declare accessors and mutators for persistent fields (optional)"
msgstr "永続フィールドに対するアクセサとミューテータを定義する(オプション)"
#. Tag: para
-#: persistent_classes.xml:141
#, fuzzy, no-c-format
msgid ""
"<literal>Cat</literal> declares accessor methods for all its persistent
"
@@ -324,70 +221,47 @@
"required, you can switch to direct field access for particular properties."
msgstr ""
"<literal>Cat</literal> ではすべての永続フィールドに対してアクセサメソッドを定"
-"義しています。 他の多くのORMツールは、永続インスタンス変数を直接永続化しま"
-"す。 私たちはリレーショナルスキーマとクラスの内部構造を分離する方が良いと信じ"
-"ています。 デフォルトでは、HibernateはJavaBeanスタイルのプロパティを永続化"
+"義しています。他の多くの ORM ツールは、永続インスタンス変数を直接永続化しま"
+"す。私たちはリレーショナルスキーマとクラスの内部構造を分離する方が良いと信じ"
+"ています。デフォルトでは、 Hibernate は JavaBean スタイルのプロパティを永続化"
"し、 <literal>getFoo</literal>, <literal>isFoo</literal>,
<literal>setFoo</"
-"literal> 形式のメソッド名を認識します。 しかし必要なら、特定のプロパティに対"
-"して、直接のフィールドアクセスに切り替えることは可能です。"
+"literal> 形式のメソッド名を認識します。しかし必要なら、特定のプロパティに対し"
+"て、直接のフィールドアクセスに切り替えることは可能です。"
#. Tag: para
-#: persistent_classes.xml:151
#, no-c-format
msgid ""
"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."
msgstr ""
-"プロパティはpublicで宣言する必要は <emphasis>ありません</emphasis> 。 "
-"Hibernateはデフォルト、<literal>protected</literal> もしくは "
-"<literal>private</literal> のget / setのペアを持つプロパティを永続化すること"
-"ができます。"
+"プロパティは public で宣言する必要は <emphasis>ありません</emphasis> 。 "
+"Hibernate はデフォルトで、 <literal>protected</literal> もしくは "
+"<literal>private</literal> の get / set のペアを持つプロパティを永続化するこ"
+"とができます。"
#. Tag: title
-#: persistent_classes.xml:162
#, no-c-format
msgid "Implementing inheritance"
msgstr "継承の実装"
#. Tag: para
-#: persistent_classes.xml:164
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A subclass must also observe the first and second rules. It inherits its "
"identifier property from the superclass, <literal>Cat</literal>. For
example:"
msgstr ""
-"サブクラスも1番目と2番目のルールを守らなければなりません。 サブクラスはスー"
+"サブクラスも1番目と2番目のルールを守らなければなりません。サブクラスはスー"
"パークラス <literal>Cat</literal> から識別子プロパティを継承します。"
-#. Tag: programlisting
-#: persistent_classes.xml:169
-#, no-c-format
-msgid ""
-"<![CDATA[package eg;\n"
-"\n"
-"public class DomesticCat extends Cat {\n"
-" private String name;\n"
-"\n"
-" public String getName() {\n"
-" return name;\n"
-" }\n"
-" protected void setName(String name) {\n"
-" this.name=name;\n"
-" }\n"
-"}]]>"
-msgstr ""
-
#. Tag: title
-#: persistent_classes.xml:173
#, no-c-format
msgid ""
"Implementing <literal>equals()</literal> and
<literal>hashCode()</literal>"
-msgstr "<literal>equals()</literal> と
<literal>hashCode()</literal> の実装"
+msgstr "<literal>equals()</literal> と
<literal>hashCode()</literal>の実装"
#. Tag: para
-#: persistent_classes.xml:175
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You have to override the <literal>equals()</literal> and
<literal>hashCode()"
"</literal> methods if you:"
@@ -396,8 +270,7 @@
"literal> メソッドをオーバーライドしなければなりません、"
#. Tag: para
-#: persistent_classes.xml:181
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"intend to put instances of persistent classes in a
<literal>Set</literal> "
"(the recommended way to represent many-valued associations);
<emphasis>and</"
@@ -407,14 +280,12 @@
"関連を表現するおすすめの方法です) <emphasis>そして同時に</emphasis>"
#. Tag: para
-#: persistent_classes.xml:188
#, no-c-format
msgid "intend to use reattachment of detached instances"
msgstr "分離インスタンスをセッションへ再追加する場合。"
#. Tag: para
-#: persistent_classes.xml:194
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate guarantees equivalence of persistent identity (database row) and "
"Java identity only inside a particular session scope. When you mix instances
"
@@ -422,15 +293,14 @@
"literal> and <literal>hashCode()</literal> if you wish to have
meaningful "
"semantics for <literal>Set</literal>s."
msgstr ""
-"Hibernateは、永続ID(データベースの行)と、特定のセッションスコープ内に 限定"
-"ですがJavaIDとが等価であることを保証します。 ですから異なるセッションで検索し"
-"たインスタンスを組み合わせる場合、 <literal>Set</literal> に意味のあるセマン"
-"ティクスを持たせようと思っているなら すぐに<literal>equals()</literal> と "
-"<literal>hashCode()</literal> を実装しなければなりません。"
+"Hibernate は、永続 ID (データベースの行)と、特定のセッションスコープ内に限"
+"定ですが Java ID とが等価であることを保証します。ですから異なるセッションで検"
+"索したインスタンスを組み合わせる場合、 <literal>Set</literal> に意味のあるセ"
+"マンティクスを持たせようと思っているならすぐに <literal>equals()</literal> "
+"と <literal>hashCode()</literal> を実装しなければなりません。"
#. Tag: para
-#: persistent_classes.xml:202
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The most obvious way is to implement
<literal>equals()</literal>/"
"<literal>hashCode()</literal> by comparing the identifier value of both
"
@@ -449,23 +319,22 @@
msgstr ""
"最も明白な方法は、両方のオブジェクトの識別子の値の比較によって "
"<literal>equals()</literal>と <literal>hashCode()</literal>
を実装する方法で"
-"す。 値が同じなら、両者はデータベースの同じ行でなければならないため等しくなり"
+"す。値が同じなら、両者はデータベースの同じ行でなければならないため等しくなり"
"ます。 (両者が <literal>Set</literal> に追加されても、 <literal>Set</"
"literal> には1個の要素しかないことになります) 残念なことに、生成された識別子"
-"にはこのアプローチを使うことができません。 Hibernateは永続化されたオブジェク"
-"トへ識別子の値を代入するだけであり、 新しく作成されたインスタンスはどのような"
-"識別子の値も持っていません。 さらに、インスタンスがセーブされておらず、現在 "
-"<literal>Set</literal> の中にあれば、 セーブするとオブジェクトへ識別子の値を"
-"代入することになります。 もし <literal>equals()</literal> と "
-"<literal>hashCode()</literal> が識別子の値に基づいているなら、 ハッシュコード"
-"が変更されると <literal>Set</literal> の規約が破られます。 この問題についての"
-"完全な議論は、Hibernateのウェブサイトを見てください。 これはHibernateの問題で"
-"はなく、オブジェクトの同一性と等価性についての、 通常のJavaのセマンティクスで"
-"あることに注意してください。"
+"にはこのアプローチを使うことができません。 Hibernate は永続化されたオブジェク"
+"トへ識別子の値を代入するだけであり、新しく作成されたインスタンスはどのような"
+"識別子の値も持っていません。さらに、インスタンスがセーブされておらず、現在 "
+"<literal>Set</literal> の中にあれば、セーブするとオブジェクトへ識別子の値を代"
+"入することになります。もし <literal>equals()</literal> と
<literal>hashCode()"
+"</literal> が識別子の値に基づいているなら、ハッシュコードが変更されると "
+"<literal>Set</literal> の規約が破られます。この問題についての完全な議論は、 "
+"Hibernate のウェブサイトを見てください。これは Hibernate の問題ではなく、オブ"
+"ジェクトの同一性と等価性についての、通常の Java のセマンティクスであることに"
+"注意してください。"
#. Tag: para
-#: persistent_classes.xml:216
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is recommended that you implement <literal>equals()</literal> and
"
"<literal>hashCode()</literal> using <emphasis>Business key
equality</"
@@ -475,78 +344,44 @@
"emphasis> candidate key):"
msgstr ""
"<emphasis>ビジネスキーの等価性</emphasis> を使って、
<literal>equals()</"
-"literal> と <literal>hashCode()</literal> を実装することをお勧めします。 ビジ"
-"ネスキーの等価性とは、<literal>equals()</literal> メソッドが、ビジネスキー、 "
+"literal> と <literal>hashCode()</literal> を実装することをお勧めします。ビジ"
+"ネスキーの等価性とは、 <literal>equals()</literal> メソッドが、ビジネスキー、"
"つまり現実の世界においてインスタンスを特定するキー(<emphasis>自然</"
"emphasis> 候補キー) を形成するプロパティだけを比較することを意味します。"
-#. Tag: programlisting
-#: persistent_classes.xml:224
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[public class Cat {\n"
-"\n"
-" ...\n"
-" public boolean equals(Object other) {\n"
-" if (this == other) return true;\n"
-" if ( !(other instanceof Cat) ) return false;\n"
-"\n"
-" final Cat cat = (Cat) other;\n"
-"\n"
-" if ( !cat.getLitterId().equals( getLitterId() ) ) return false;\n"
-" if ( !cat.getMother().equals( getMother() ) ) return false;\n"
-"\n"
-" return true;\n"
-" }\n"
-"\n"
-" public int hashCode() {\n"
-" int result;\n"
-" result = getMother().hashCode();\n"
-" result = 29 * result + getLitterId();\n"
-" return result;\n"
-" }\n"
-"\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: persistent_classes.xml:226
-#, fuzzy, no-c-format
-msgid ""
"A business key does not have to be as solid as a database primary key "
-"candidate (see <xref linkend=\"transactions-basics-identity\"/>).
Immutable "
+"candidate (see <xref linkend=\"transactions-basics-identity\" />).
Immutable "
"or unique properties are usually good candidates for a business key."
msgstr ""
"ビジネスキーはデータベースの主キー候補ほど安定である必要はないことに注意して"
-"ください (<xref linkend=\"transactions-basics-identity\"/>
を見てくださ"
-"い)。 更新不可なプロパティやユニークなプロパティは、通常ビジネスキーのよい候"
+"ください (<xref linkend=\"transactions-basics-identity\"/>
を参照してくださ"
+"い)。更新不可なプロパティやユニークなプロパティは、通常ビジネスキーのよい候"
"補です。"
#. Tag: title
-#: persistent_classes.xml:236
#, no-c-format
msgid "Dynamic models"
msgstr "動的モデル"
#. Tag: title
-#: persistent_classes.xml:239
#, no-c-format
msgid "Note"
-msgstr ""
+msgstr "注意"
-#. Tag: emphasis
-#: persistent_classes.xml:241
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
-"The following features are currently considered experimental and may change "
-"in the near future."
+"<emphasis>The following features are currently considered experimental and
"
+"may change in the near future.</emphasis>"
msgstr ""
-"以下の機能は現在実験段階にあると見なされており、 近い将来変更される可能性があ"
+"以下の機能は現在実験段階にあると見なされており、近い将来変更される可能性があ"
"ることに注意してください。"
#. Tag: para
-#: persistent_classes.xml:246
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Persistent entities do not necessarily have to be represented as POJO "
"classes or as JavaBean objects at runtime. Hibernate also supports dynamic "
@@ -554,131 +389,60 @@
"and the representation of entities as DOM4J trees. With this approach, you "
"do not write persistent classes, only mapping files."
msgstr ""
-"永続エンティティは、必ずしも実行時にPOJOクラスやJavaBeanオブジェクトで表現す"
-"る必要はありません。 Hibernateは(実行時に <literal>Map</literal> の "
-"<literal>Map</literal> を使う)動的モデルと、 DOM4Jツリーとしてのエンティティ"
-"の表現もサポートします。 このアプローチを使うと永続クラスを書かず、マッピング"
-"ファイルだけを書くことになります。"
+"永続エンティティは、必ずしも実行時に POJO クラスや JavaBean オブジェクトで表"
+"現する必要はありません。 Hibernate は(実行時に <literal>Map</literal> の "
+"<literal>Map</literal> を使う)動的モデルと、 DOM4J ツリーとしてのエンティ"
+"ティの表現もサポートします。このアプローチを使うと永続クラスを書かず、マッピ"
+"ングファイルだけを書くことになります。"
#. Tag: para
-#: persistent_classes.xml:254
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"By default, Hibernate works in normal POJO mode. You can 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\"/>)."
+"option (see <xref linkend=\"configuration-optional-properties\"
/>)."
msgstr ""
-"デフォルトでは、Hibernateは通常のPOJOモードで動作します。 "
-"<literal>default_entity_mode</literal> 設定オプションを使って、 特定の "
+"デフォルトでは、 Hibernate は通常の POJO モードで動作します。 "
+"<literal>default_entity_mode</literal> 設定オプションを使って、特定の "
"<literal>SessionFactory</literal> に対するデフォルトのエンティティ表現モード"
"を設定することができます (<xref linkend=\"configuration-optional-properties"
"\"/> を見てください)。"
#. Tag: para
-#: persistent_classes.xml:261
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following examples demonstrate 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:"
msgstr ""
-"以下の例では <literal>Map</literal> を使った表現を紹介します。 まずマッピング"
+"以下の例では <literal>Map</literal> を使った表現を紹介します。まずマッピング"
"ファイルで、クラス名の代わりに(またはそれに加えて) <literal>entity-name</"
"literal> を定義しなければなりません:"
-#. Tag: programlisting
-#: persistent_classes.xml:267
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-"\n"
-" <class entity-name=\"Customer\">\n"
-"\n"
-" <id name=\"id\"\n"
-" type=\"long\"\n"
-" column=\"ID\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-"\n"
-" <property name=\"name\"\n"
-" column=\"NAME\"\n"
-" type=\"string\"/>\n"
-"\n"
-" <property name=\"address\"\n"
-" column=\"ADDRESS\"\n"
-" type=\"string\"/>\n"
-"\n"
-" <many-to-one name=\"organization\"\n"
-" column=\"ORGANIZATION_ID\"\n"
-" class=\"Organization\"/>\n"
-"\n"
-" <bag name=\"orders\"\n"
-" inverse=\"true\"\n"
-" lazy=\"false\"\n"
-" cascade=\"all\">\n"
-" <key column=\"CUSTOMER_ID\"/>\n"
-" <one-to-many class=\"Order\"/>\n"
-" </bag>\n"
-"\n"
-" </class>\n"
-" \n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: para
-#: persistent_classes.xml:269
-#, fuzzy, no-c-format
-msgid ""
"Even though associations are declared using target class names, the target "
"type of associations can also be a dynamic entity instead of a POJO."
msgstr ""
-"関連がターゲットのクラス名を使って定義していたとしても、 関連のターゲット型も"
-"POJOではなく動的なエンティティでも構わないことに注意してください。"
+"関連がターゲットのクラス名を使って定義していたとしても、関連のターゲット型も "
+"POJO ではなく動的なエンティティでも構わないことに注意してください。"
#. Tag: para
-#: persistent_classes.xml:276
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"After setting the default entity mode to <literal>dynamic-map</literal>
for "
"the <literal>SessionFactory</literal>, you can, at runtime, work with
"
"<literal>Map</literal>s of <literal>Map</literal>s:"
msgstr ""
"<literal>SessionFactory</literal> に対してデフォルトのエンティティモードを "
-"<literal>dynamic-map</literal> に設定した後、 実行時に
<literal>Map</"
-"literal> の <literal>Map</literal> を使うことができます:"
+"<literal>dynamic-map</literal> に設定した後、実行時に
<literal>Map</literal> "
+"の <literal>Map</literal> を使うことができます:"
-#. Tag: programlisting
-#: persistent_classes.xml:282
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Session s = openSession();\n"
-"Transaction tx = s.beginTransaction();\n"
-"Session s = openSession();\n"
-"\n"
-"// Create a customer\n"
-"Map david = new HashMap();\n"
-"david.put(\"name\", \"David\");\n"
-"\n"
-"// Create an organization\n"
-"Map foobar = new HashMap();\n"
-"foobar.put(\"name\", \"Foobar Inc.\");\n"
-"\n"
-"// Link both\n"
-"david.put(\"organization\", foobar);\n"
-"\n"
-"// Save both\n"
-"s.save(\"Customer\", david);\n"
-"s.save(\"Organization\", foobar);\n"
-"\n"
-"tx.commit();\n"
-"s.close();]]>"
-msgstr ""
-
-#. Tag: para
-#: persistent_classes.xml:284
-#, fuzzy, no-c-format
-msgid ""
"One of the main advantages of dynamic mapping is quick turnaround time for "
"prototyping, without the need for entity class implementation. However, you "
"lose compile-time type checking and will likely deal with many exceptions at
"
@@ -686,15 +450,14 @@
"easily be normalized and sound, allowing to add a proper domain model "
"implementation on top later on."
msgstr ""
-"動的なマッピングの利点は、エンティティクラスの実装を必要としないため、 プロト"
-"タイピングに要するターンアラウンドタイムが早いということです。 しかしコンパイ"
+"動的なマッピングの利点は、エンティティクラスの実装を必要としないため、プロト"
+"タイピングに要するターンアラウンドタイムが早いということです。しかしコンパイ"
"ル時の型チェックがないので、実行時に非常に多くの例外処理を扱わなければならな"
-"いでしょう。 Hibernateマッピングのおかげで、データベーススキーマは容易に正規"
-"化でき、健全になり、 後で適切なドメインモデルの実装を追加することが可能になり"
+"いでしょう。 Hibernate マッピングのおかげで、データベーススキーマは容易に正規"
+"化でき、健全になり、後で適切なドメインモデルの実装を追加することが可能になり"
"ます。"
#. Tag: para
-#: persistent_classes.xml:292
#, no-c-format
msgid ""
"Entity representation modes can also be set on a per
<literal>Session</"
@@ -703,28 +466,9 @@
"エンティティ表現モードは <literal>Session</literal> ごとに設定することも可能"
"です。"
-#. Tag: programlisting
-#: persistent_classes.xml:297
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Session dynamicSession =
pojoSession.getSession(EntityMode.MAP);\n"
-"\n"
-"// Create a customer\n"
-"Map david = new HashMap();\n"
-"david.put(\"name\", \"David\");\n"
-"dynamicSession.save(\"Customer\", david);\n"
-"...\n"
-"dynamicSession.flush();\n"
-"dynamicSession.close()\n"
-"...\n"
-"// Continue on pojoSession\n"
-"]]>"
-msgstr ""
-
-#. Tag: para
-#: persistent_classes.xml:300
-#, fuzzy, no-c-format
-msgid ""
"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</"
@@ -736,32 +480,29 @@
msgstr ""
"<literal>EntityMode</literal> を使った
<literal>getSession()</literal> の呼び"
"出しは <literal>SessionFactory</literal> ではなく
<literal>Session</literal> "
-"APIにあることに注意してください。 その方法では、新しい <literal>Session</"
-"literal> は、ベースとなるJDBCコネクション、 トランザクション、その他のコンテ"
-"キスト情報を共有します。 これは2番目の <literal>Session</literal> では "
+"APIにあることに注意してください。その方法では、新しい <literal>Session</"
+"literal> は、ベースとなる JDBC コネクション、トランザクション、その他のコンテ"
+"キスト情報を共有します。これは2番目の <literal>Session</literal> では "
"<literal>flush()</literal> と <literal>close()</literal>
を呼ぶ必要がないとい"
-"うこと、そのためトランザクションとコネクションの管理を 1番目の作業単位(Unit "
+"うこと、そのためトランザクションとコネクションの管理を1番目の作業単位(Unit "
"of Work)に任せることができるということです。"
#. Tag: para
-#: persistent_classes.xml:310
#, no-c-format
msgid ""
"More information about the XML representation capabilities can be found in "
-"<xref linkend=\"xml\"/>."
+"<xref linkend=\"xml\" />."
msgstr ""
-"XML表現の能力についてのさらなる情報は <xref linkend=\"xml\"/> で見つかりま"
-"す。"
+"XML 表現の能力についてのさらなる情報は <xref linkend=\"xml\"/> に記述されてい"
+"ます。"
#. Tag: title
-#: persistent_classes.xml:318
#, no-c-format
msgid "Tuplizers"
msgstr "Tuplizer"
#. Tag: para
-#: persistent_classes.xml:320
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>org.hibernate.tuple.Tuplizer</literal>, and its
sub-interfaces, are "
"responsible for managing a particular representation of a piece of data "
@@ -773,22 +514,16 @@
"through its constructor. It also knows how to access the POJO properties "
"using the defined property accessors."
msgstr ""
-"<literal>org.hibernate.tuple.Tuplizer</literal> とそのサブインターフェイス"
-"は、 表現の <literal>org.hibernate.EntityMode</literal> を利用して、 データ断"
-"片のある表現の管理に責任を持ちます。 与えられたデータ断片をデータ構造として考"
-"えるなら、Tuplizerはそのようなデータ構造を どのように作成するかを知り、そのよ"
-"うなデータ構造からどのように値を抽出し、 注入するかを知っています。 例えば"
-"POJOエンティティモードでは、対応するTuplizerはコンストラクタを通して、 POJOを"
-"どのように作成するか、定義されたプロパティアクセサを使い、 POJOプロパティにど"
-"のようにアクセスするかを知ります。 Tuplizerには二つのハイレベルの型がありま"
-"す。 それらは、<literal>org.hibernate.tuple.EntityTuplizer</literal> と "
-"<literal>org.hibernate.tuple.ComponentTuplizer</literal>
インターフェイスで表"
-"現されます。 <literal>EntityTuplizer</literal> は上で述べたようなエンティティ"
-"に関する契約の管理に責任を持ちます。 一方、<literal>ComponentTuplizer</"
-"literal> はコンポーネントに関する契約の管理に責任を持ちます。"
+"<literal>org.hibernate.tuple.Tuplizer</literal> とそのサブインターフェース"
+"は、表現の <literal>org.hibernate.EntityMode</literal> を利用して、データ断片"
+"のある表現の管理に責任を持ちます。与えられたデータ断片をデータ構造として考え"
+"るなら、 Tuplizer はそのようなデータ構造をどのように作成するかを知り、そのよ"
+"うなデータ構造からどのように値を抽出し、注入するかを知っています。例えば "
+"POJO エンティティモードでは、対応する Tuplizer はコンストラクタを通して、 "
+"POJO をどのように作成するか、定義されたプロパティアクセサを使い、 POJO プロパ"
+"ティにどのようにアクセスするかを知ります。"
#. Tag: para
-#: persistent_classes.xml:330
#, no-c-format
msgid ""
"There are two high-level types of Tuplizers, represented by the
<literal>org."
@@ -798,10 +533,15 @@
"mentioned contracts in regards to entities, while "
"<literal>ComponentTuplizer</literal>s do the same for
components."
msgstr ""
+"Tuplizer には二つのハイレベルの型があります。それらは、<literal>org."
+"hibernate.tuple.entity.EntityTuplizer</literal> と
<literal>org.hibernate."
+"tuple.component.ComponentTuplizer</literal> インターフェースで表現されます。 "
+"<literal>EntityTuplizer</literal> は上で述べたようなエンティティに関する契約"
+"の管理に責任を持ちます。一方、 <literal>ComponentTuplizer</literal> はコン"
+"ポーネントに関する契約の管理に責任を持ちます。"
#. Tag: para
-#: persistent_classes.xml:338
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Users can also plug in their own tuplizers. Perhaps you require that a "
"<literal>java.util.Map</literal> implementation other than
<literal>java."
@@ -812,63 +552,20 @@
"mapping they are meant to manage. Going back to the example of our customer "
"entity:"
msgstr ""
-"ユーザは独自のTuplizerに差し替えることも可能です。 おそらくdynamic-map "
-"entity-modeの際に <literal>java.util.HashMap</literal> を使うのではなく、 "
-"<literal>java.util.Map</literal> の実装が必要でしょう。 もしくは、おそらくデ"
-"フォルトのものではなく、別のプロキシ生成戦略の定義が必要でしょう。 両者とも、"
-"カスタムのTuplizer実装を定義することで達成されます。 Tuplizerの定義は、管理し"
-"ようとするエンティティやコンポーネントのマッピングに結び付けられます。 顧客エ"
-"ンティティの例に戻ると:"
+"ユーザーは独自の Tuplizer に差し替えることも可能です。おそらく dynamic-map "
+"entity-mode の際に <literal>java.util.HashMap</literal> を使うのではなく、 "
+"<literal>java.util.Map</literal> の実装が必要でしょう。もしくは、おそらくデ"
+"フォルトのものではなく、別のプロキシ生成戦略の定義が必要でしょう。両者とも、"
+"カスタムの Tuplizer 実装を定義することで達成されます。 Tuplizer の定義は、管"
+"理しようとするエンティティやコンポーネントのマッピングに結び付けられます。顧"
+"客エンティティの例は以下になります:"
-#. Tag: programlisting
-#: persistent_classes.xml:347
-#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-mapping>\n"
-" <class entity-name=\"Customer\">\n"
-" <!--\n"
-" Override the dynamic-map entity-mode\n"
-" tuplizer for the customer entity\n"
-" -->\n"
-" <tuplizer entity-mode=\"dynamic-map\"\n"
-" class=\"CustomMapTuplizerImpl\"/>\n"
-"\n"
-" <id name=\"id\" type=\"long\"
column=\"ID\">\n"
-" <generator class=\"sequence\"/>\n"
-" </id>\n"
-"\n"
-" <!-- other properties -->\n"
-" ...\n"
-" </class>\n"
-"</hibernate-mapping>\n"
-"\n"
-"\n"
-"public class CustomMapTuplizerImpl\n"
-" extends org.hibernate.tuple.entity.DynamicMapEntityTuplizer {\n"
-" // override the buildInstantiator() method to plug in our custom
map...\n"
-" protected final Instantiator buildInstantiator(\n"
-" org.hibernate.mapping.PersistentClass mappingInfo) {\n"
-" return new CustomMapInstantiator( mappingInfo );\n"
-" }\n"
-"\n"
-" private static final class CustomMapInstantiator\n"
-" extends org.hibernate.tuple.DynamicMapInstantitor {\n"
-" // override the generateMap() method to return our custom map...\n"
-" protected final Map generateMap() {\n"
-" return new CustomMap();\n"
-" }\n"
-" }\n"
-"}]]>"
-msgstr ""
-
#. Tag: title
-#: persistent_classes.xml:353
-#, no-c-format
+#, fuzzy, no-c-format
msgid "EntityNameResolvers"
-msgstr ""
+msgstr "エンティティリゾルバ"
#. Tag: para
-#: persistent_classes.xml:355
#, no-c-format
msgid ""
"The <interfacename>org.hibernate.EntityNameResolver</interfacename>
"
@@ -886,140 +583,7 @@
"package for illustration."
msgstr ""
-#. Tag: programlisting
-#: persistent_classes.xml:367
-#, no-c-format
-msgid ""
-"/**\n"
-" * A very trivial JDK Proxy InvocationHandler implementation where we proxy "
-"an interface as\n"
-" * the domain model and simply store persistent state in an internal Map. "
-"This is an extremely\n"
-" * trivial example meant only for illustration.\n"
-" */\n"
-"public final class DataProxyHandler implements InvocationHandler {\n"
-" private String entityName;\n"
-" private HashMap data = new HashMap();\n"
-"\n"
-" public DataProxyHandler(String entityName, Serializable id) {\n"
-" this.entityName = entityName;\n"
-" data.put( \"Id\", id );\n"
-" }\n"
-"\n"
-" public Object invoke(Object proxy, Method method, Object[] args) "
-"throws Throwable {\n"
-" String methodName = method.getName();\n"
-" if ( methodName.startsWith( \"set\" ) ) {\n"
-" String propertyName = methodName.substring( 3 );\n"
-" data.put( propertyName, args[0] );\n"
-" }\n"
-" else if ( methodName.startsWith( \"get\" ) ) {\n"
-" String propertyName = methodName.substring( 3 );\n"
-" return data.get( propertyName );\n"
-" }\n"
-" else if ( \"toString\".equals( methodName ) ) {\n"
-" return entityName + \"#\" + data.get(
\"Id\" );\n"
-" }\n"
-" else if ( \"hashCode\".equals( methodName ) ) {\n"
-" return new Integer( this.hashCode() );\n"
-" }\n"
-" return null;\n"
-" }\n"
-"\n"
-" public String getEntityName() {\n"
-" return entityName;\n"
-" }\n"
-"\n"
-" public HashMap getData() {\n"
-" return data;\n"
-" }\n"
-"}\n"
-"\n"
-"/**\n"
-" *\n"
-" */\n"
-"public class ProxyHelper {\n"
-" public static String extractEntityName(Object object) {\n"
-" // Our custom java.lang.reflect.Proxy instances actually bundle\n"
-" // their appropriate entity name, so we simply extract it from "
-"there\n"
-" // if this represents one of our proxies; otherwise, we return
null\n"
-" if ( Proxy.isProxyClass( object.getClass() ) ) {\n"
-" InvocationHandler handler = Proxy.getInvocationHandler"
-"( object );\n"
-" if ( DataProxyHandler.class.isAssignableFrom( handler.getClass"
-"() ) ) {\n"
-" DataProxyHandler myHandler = ( DataProxyHandler ) handler;\n"
-" return myHandler.getEntityName();\n"
-" }\n"
-" }\n"
-" return null;\n"
-" }\n"
-"\n"
-" // various other utility methods ....\n"
-"\n"
-"}\n"
-"\n"
-"/**\n"
-" * The EntityNameResolver implementation.\n"
-" * IMPL NOTE : An EntityNameResolver really defines a strategy for how "
-"entity names should be\n"
-" * resolved. Since this particular impl can handle resolution for all of "
-"our entities we want to\n"
-" * take advantage of the fact that SessionFactoryImpl keeps these in a Set "
-"so that we only ever\n"
-" * have one instance registered. Why? Well, when it comes time to resolve "
-"an entity name,\n"
-" * Hibernate must iterate over all the registered resolvers. So keeping "
-"that number down\n"
-" * helps that process be as speedy as possible. Hence the equals and "
-"hashCode impls\n"
-" */\n"
-"public class MyEntityNameResolver implements EntityNameResolver {\n"
-" public static final MyEntityNameResolver INSTANCE = new "
-"MyEntityNameResolver();\n"
-"\n"
-" public String resolveEntityName(Object entity) {\n"
-" return ProxyHelper.extractEntityName( entity );\n"
-" }\n"
-"\n"
-" public boolean equals(Object obj) {\n"
-" return getClass().equals( obj.getClass() );\n"
-" }\n"
-"\n"
-" public int hashCode() {\n"
-" return getClass().hashCode();\n"
-" }\n"
-"}\n"
-"\n"
-"public class MyEntityTuplizer extends PojoEntityTuplizer {\n"
-" public MyEntityTuplizer(EntityMetamodel entityMetamodel, "
-"PersistentClass mappedEntity) {\n"
-" super( entityMetamodel, mappedEntity );\n"
-" }\n"
-"\n"
-" public EntityNameResolver[] getEntityNameResolvers() {\n"
-" return new EntityNameResolver[] { MyEntityNameResolver."
-"INSTANCE };\n"
-" }\n"
-"\n"
-" public String determineConcreteSubclassEntityName(Object entityInstance,
"
-"SessionFactoryImplementor factory) {\n"
-" String entityName = ProxyHelper.extractEntityName"
-"( entityInstance );\n"
-" if ( entityName == null ) {\n"
-" entityName = super.determineConcreteSubclassEntityName"
-"( entityInstance, factory );\n"
-" }\n"
-" return entityName;\n"
-" }\n"
-"\n"
-" ...\n"
-"}"
-msgstr ""
-
#. Tag: para
-#: persistent_classes.xml:369
#, no-c-format
msgid ""
"In order to register an
<interfacename>org.hibernate.EntityNameResolver</"
@@ -1027,16 +591,14 @@
msgstr ""
#. Tag: para
-#: persistent_classes.xml:373
#, no-c-format
msgid ""
-"Implement a custom <link
linkend=\"persistent-classes-tuplizers\">Tuplizer</"
-"link>, implementing the
<methodname>getEntityNameResolvers</methodname> "
-"method."
+"Implement a custom Tupelizer implementing the "
+"<methodname>getEntityNameResolvers</methodname> method (see <xref
linkend="
+"\"persistent-classes-tuplizers\" />)."
msgstr ""
#. Tag: para
-#: persistent_classes.xml:379
#, no-c-format
msgid ""
"Register it with the
<classname>org.hibernate.impl.SessionFactoryImpl</"
@@ -1045,11 +607,460 @@
"<methodname>registerEntityNameResolver</methodname> method."
msgstr ""
-#~ msgid "There are four main rules to follow here:"
-#~ msgstr "従うべき4つのルールがあります:"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[package eg;\n"
+#~ "import java.util.Set;\n"
+#~ "import java.util.Date;\n"
+#~ "\n"
+#~ "public class Cat {\n"
+#~ " private Long id; // identifier\n"
+#~ "\n"
+#~ " private Date birthdate;\n"
+#~ " private Color color;\n"
+#~ " private char sex;\n"
+#~ " private float weight;\n"
+#~ " private int litterId;\n"
+#~ "\n"
+#~ " private Cat mother;\n"
+#~ " private Set kittens = new HashSet();\n"
+#~ "\n"
+#~ " private void setId(Long id) {\n"
+#~ " this.id=id;\n"
+#~ " }\n"
+#~ " public Long getId() {\n"
+#~ " return id;\n"
+#~ " }\n"
+#~ "\n"
+#~ " void setBirthdate(Date date) {\n"
+#~ " birthdate = date;\n"
+#~ " }\n"
+#~ " public Date getBirthdate() {\n"
+#~ " return birthdate;\n"
+#~ " }\n"
+#~ "\n"
+#~ " void setWeight(float weight) {\n"
+#~ " this.weight = weight;\n"
+#~ " }\n"
+#~ " public float getWeight() {\n"
+#~ " return weight;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public Color getColor() {\n"
+#~ " return color;\n"
+#~ " }\n"
+#~ " void setColor(Color color) {\n"
+#~ " this.color = color;\n"
+#~ " }\n"
+#~ "\n"
+#~ " void setSex(char sex) {\n"
+#~ " this.sex=sex;\n"
+#~ " }\n"
+#~ " public char getSex() {\n"
+#~ " return sex;\n"
+#~ " }\n"
+#~ "\n"
+#~ " void setLitterId(int id) {\n"
+#~ " this.litterId = id;\n"
+#~ " }\n"
+#~ " public int getLitterId() {\n"
+#~ " return litterId;\n"
+#~ " }\n"
+#~ "\n"
+#~ " void setMother(Cat mother) {\n"
+#~ " this.mother = mother;\n"
+#~ " }\n"
+#~ " public Cat getMother() {\n"
+#~ " return mother;\n"
+#~ " }\n"
+#~ " void setKittens(Set kittens) {\n"
+#~ " this.kittens = kittens;\n"
+#~ " }\n"
+#~ " public Set getKittens() {\n"
+#~ " return kittens;\n"
+#~ " }\n"
+#~ " \n"
+#~ " // addKitten not needed by Hibernate\n"
+#~ " public void addKitten(Cat kitten) {\n"
+#~ " kitten.setMother(this);\n"
+#~ " kitten.setLitterId( kittens.size() ); \n"
+#~ " kittens.add(kitten);\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "package eg;\n"
+#~ "import java.util.Set;\n"
+#~ "import java.util.Date;\n"
+#~ "\n"
+#~ "public class Cat {\n"
+#~ " private Long id; // identifier\n"
+#~ "\n"
+#~ " private Date birthdate;\n"
+#~ " private Color color;\n"
+#~ " private char sex;\n"
+#~ " private float weight;\n"
+#~ " private int litterId;\n"
+#~ "\n"
+#~ " private Cat mother;\n"
+#~ " private Set kittens = new HashSet();\n"
+#~ "\n"
+#~ " private void setId(Long id) {\n"
+#~ " this.id=id;\n"
+#~ " }\n"
+#~ " public Long getId() {\n"
+#~ " return id;\n"
+#~ " }\n"
+#~ "\n"
+#~ " void setBirthdate(Date date) {\n"
+#~ " birthdate = date;\n"
+#~ " }\n"
+#~ " public Date getBirthdate() {\n"
+#~ " return birthdate;\n"
+#~ " }\n"
+#~ "\n"
+#~ " void setWeight(float weight) {\n"
+#~ " this.weight = weight;\n"
+#~ " }\n"
+#~ " public float getWeight() {\n"
+#~ " return weight;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public Color getColor() {\n"
+#~ " return color;\n"
+#~ " }\n"
+#~ " void setColor(Color color) {\n"
+#~ " this.color = color;\n"
+#~ " }\n"
+#~ "\n"
+#~ " void setSex(char sex) {\n"
+#~ " this.sex=sex;\n"
+#~ " }\n"
+#~ " public char getSex() {\n"
+#~ " return sex;\n"
+#~ " }\n"
+#~ "\n"
+#~ " void setLitterId(int id) {\n"
+#~ " this.litterId = id;\n"
+#~ " }\n"
+#~ " public int getLitterId() {\n"
+#~ " return litterId;\n"
+#~ " }\n"
+#~ "\n"
+#~ " void setMother(Cat mother) {\n"
+#~ " this.mother = mother;\n"
+#~ " }\n"
+#~ " public Cat getMother() {\n"
+#~ " return mother;\n"
+#~ " }\n"
+#~ " void setKittens(Set kittens) {\n"
+#~ " this.kittens = kittens;\n"
+#~ " }\n"
+#~ " public Set getKittens() {\n"
+#~ " return kittens;\n"
+#~ " }\n"
+#~ " \n"
+#~ " // addKitten not needed by Hibernate\n"
+#~ " public void addKitten(Cat kitten) {\n"
+#~ " kitten.setMother(this);\n"
+#~ "kitten.setLitterId( kittens.size() ); \n"
+#~ " kittens.add(kitten);\n"
+#~ " }\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "TODO: Document user-extension framework in the property and proxy
packages"
+#~ "<![CDATA[package eg;\n"
+#~ "\n"
+#~ "public class DomesticCat extends Cat {\n"
+#~ " private String name;\n"
+#~ "\n"
+#~ " public String getName() {\n"
+#~ " return name;\n"
+#~ " }\n"
+#~ " protected void setName(String name) {\n"
+#~ " this.name=name;\n"
+#~ " }\n"
+#~ "}]]>"
#~ msgstr ""
-#~ "TODO: プロパティとプロキシパッケージのユーザ拡張フレームワークを文書化する"
-#~ "こと"
+#~ "package eg;\n"
+#~ "\n"
+#~ "public class DomesticCat extends Cat {\n"
+#~ " private String name;\n"
+#~ "\n"
+#~ " public String getName() {\n"
+#~ " return name;\n"
+#~ " }\n"
+#~ " protected void setName(String name) {\n"
+#~ " this.name=name;\n"
+#~ " }\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[public class Cat {\n"
+#~ "\n"
+#~ " ...\n"
+#~ " public boolean equals(Object other) {\n"
+#~ " if (this == other) return true;\n"
+#~ " if ( !(other instanceof Cat) ) return false;\n"
+#~ "\n"
+#~ " final Cat cat = (Cat) other;\n"
+#~ "\n"
+#~ " if ( !cat.getLitterId().equals( getLitterId() ) ) return false;\n"
+#~ " if ( !cat.getMother().equals( getMother() ) ) return false;\n"
+#~ "\n"
+#~ " return true;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public int hashCode() {\n"
+#~ " int result;\n"
+#~ " result = getMother().hashCode();\n"
+#~ " result = 29 * result + getLitterId();\n"
+#~ " return result;\n"
+#~ " }\n"
+#~ "\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "public class Cat {\n"
+#~ "\n"
+#~ " ...\n"
+#~ " public boolean equals(Object other) {\n"
+#~ " if (this == other) return true;\n"
+#~ " if ( !(other instanceof Cat) ) return false;\n"
+#~ "\n"
+#~ " final Cat cat = (Cat) other;\n"
+#~ "\n"
+#~ " if ( !cat.getLitterId().equals( getLitterId() ) ) return false;\n"
+#~ " if ( !cat.getMother().equals( getMother() ) ) return false;\n"
+#~ "\n"
+#~ " return true;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public int hashCode() {\n"
+#~ " int result;\n"
+#~ " result = getMother().hashCode();\n"
+#~ " result = 29 * result + getLitterId();\n"
+#~ " return result;\n"
+#~ " }\n"
+#~ "\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class entity-name=\"Customer\">\n"
+#~ "\n"
+#~ " <id name=\"id\"\n"
+#~ " type=\"long\"\n"
+#~ " column=\"ID\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property name=\"name\"\n"
+#~ " column=\"NAME\"\n"
+#~ " type=\"string\"/>\n"
+#~ "\n"
+#~ " <property name=\"address\"\n"
+#~ " column=\"ADDRESS\"\n"
+#~ " type=\"string\"/>\n"
+#~ "\n"
+#~ " <many-to-one name=\"organization\"\n"
+#~ " column=\"ORGANIZATION_ID\"\n"
+#~ " class=\"Organization\"/>\n"
+#~ "\n"
+#~ " <bag name=\"orders\"\n"
+#~ " inverse=\"true\"\n"
+#~ " lazy=\"false\"\n"
+#~ " cascade=\"all\">\n"
+#~ " <key column=\"CUSTOMER_ID\"/>\n"
+#~ " <one-to-many class=\"Order\"/>\n"
+#~ " </bag>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ " \n"
+#~ "</hibernate-mapping>]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class entity-name=\"Customer\">\n"
+#~ "\n"
+#~ " <id name=\"id\"\n"
+#~ " type=\"long\"\n"
+#~ " column=\"ID\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <property name=\"name\"\n"
+#~ " column=\"NAME\"\n"
+#~ " type=\"string\"/>\n"
+#~ "\n"
+#~ " <property name=\"address\"\n"
+#~ " column=\"ADDRESS\"\n"
+#~ " type=\"string\"/>\n"
+#~ "\n"
+#~ " <many-to-one name=\"organization\"\n"
+#~ " column=\"ORGANIZATION_ID\"\n"
+#~ " class=\"Organization\"/>\n"
+#~ "\n"
+#~ " <bag name=\"orders\"\n"
+#~ " inverse=\"true\"\n"
+#~ " lazy=\"false\"\n"
+#~ " cascade=\"all\">\n"
+#~ " <key column=\"CUSTOMER_ID\"/>\n"
+#~ " <one-to-many class=\"Order\"/>\n"
+#~ " </bag>\n"
+#~ "\n"
+#~ " </class>\n"
+#~ " \n"
+#~ "</hibernate-mapping>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session s = openSession();\n"
+#~ "Transaction tx = s.beginTransaction();\n"
+#~ "Session s = openSession();\n"
+#~ "\n"
+#~ "// Create a customer\n"
+#~ "Map david = new HashMap();\n"
+#~ "david.put(\"name\", \"David\");\n"
+#~ "\n"
+#~ "// Create an organization\n"
+#~ "Map foobar = new HashMap();\n"
+#~ "foobar.put(\"name\", \"Foobar Inc.\");\n"
+#~ "\n"
+#~ "// Link both\n"
+#~ "david.put(\"organization\", foobar);\n"
+#~ "\n"
+#~ "// Save both\n"
+#~ "s.save(\"Customer\", david);\n"
+#~ "s.save(\"Organization\", foobar);\n"
+#~ "\n"
+#~ "tx.commit();\n"
+#~ "s.close();]]>"
+#~ msgstr ""
+#~ "Session s = openSession();\n"
+#~ "Transaction tx = s.beginTransaction();\n"
+#~ "Session s = openSession();\n"
+#~ "\n"
+#~ "// Create a customer\n"
+#~ "Map david = new HashMap();\n"
+#~ "david.put(\"name\", \"David\");\n"
+#~ "\n"
+#~ "// Create an organization\n"
+#~ "Map foobar = new HashMap();\n"
+#~ "foobar.put(\"name\", \"Foobar Inc.\");\n"
+#~ "\n"
+#~ "// Link both\n"
+#~ "david.put(\"organization\", foobar);\n"
+#~ "\n"
+#~ "// Save both\n"
+#~ "s.save(\"Customer\", david);\n"
+#~ "s.save(\"Organization\", foobar);\n"
+#~ "\n"
+#~ "tx.commit();\n"
+#~ "s.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session dynamicSession = pojoSession.getSession(EntityMode."
+#~ "MAP);\n"
+#~ "\n"
+#~ "// Create a customer\n"
+#~ "Map david = new HashMap();\n"
+#~ "david.put(\"name\", \"David\");\n"
+#~ "dynamicSession.save(\"Customer\", david);\n"
+#~ "...\n"
+#~ "dynamicSession.flush();\n"
+#~ "dynamicSession.close()\n"
+#~ "...\n"
+#~ "// Continue on pojoSession\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "Session dynamicSession = pojoSession.getSession(EntityMode.MAP);\n"
+#~ "\n"
+#~ "// Create a customer\n"
+#~ "Map david = new HashMap();\n"
+#~ "david.put(\"name\", \"David\");\n"
+#~ "dynamicSession.save(\"Customer\", david);\n"
+#~ "...\n"
+#~ "dynamicSession.flush();\n"
+#~ "dynamicSession.close()\n"
+#~ "...\n"
+#~ "// Continue on pojoSession"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<hibernate-mapping>\n"
+#~ " <class entity-name=\"Customer\">\n"
+#~ " <!--\n"
+#~ " Override the dynamic-map entity-mode\n"
+#~ " tuplizer for the customer entity\n"
+#~ " -->\n"
+#~ " <tuplizer entity-mode=\"dynamic-map\"\n"
+#~ " class=\"CustomMapTuplizerImpl\"/>\n"
+#~ "\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"ID\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <!-- other properties -->\n"
+#~ " ...\n"
+#~ " </class>\n"
+#~ "</hibernate-mapping>\n"
+#~ "\n"
+#~ "\n"
+#~ "public class CustomMapTuplizerImpl\n"
+#~ " extends org.hibernate.tuple.entity.DynamicMapEntityTuplizer {\n"
+#~ " // override the buildInstantiator() method to plug in our custom "
+#~ "map...\n"
+#~ " protected final Instantiator buildInstantiator(\n"
+#~ " org.hibernate.mapping.PersistentClass mappingInfo) {\n"
+#~ " return new CustomMapInstantiator( mappingInfo );\n"
+#~ " }\n"
+#~ "\n"
+#~ " private static final class CustomMapInstantiator\n"
+#~ " extends org.hibernate.tuple.DynamicMapInstantitor {\n"
+#~ " // override the generateMap() method to return our custom
map...\n"
+#~ " protected final Map generateMap() {\n"
+#~ " return new CustomMap();\n"
+#~ " }\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "<hibernate-mapping>\n"
+#~ " <class entity-name=\"Customer\">\n"
+#~ " <!--\n"
+#~ " Override the dynamic-map entity-mode\n"
+#~ " tuplizer for the customer entity\n"
+#~ " -->\n"
+#~ " <tuplizer entity-mode=\"dynamic-map\"\n"
+#~ " class=\"CustomMapTuplizerImpl\"/>\n"
+#~ "\n"
+#~ " <id name=\"id\" type=\"long\"
column=\"ID\">\n"
+#~ " <generator class=\"sequence\"/>\n"
+#~ " </id>\n"
+#~ "\n"
+#~ " <!-- other properties -->\n"
+#~ " ...\n"
+#~ " </class>\n"
+#~ "</hibernate-mapping>\n"
+#~ "\n"
+#~ "\n"
+#~ "public class CustomMapTuplizerImpl\n"
+#~ " extends org.hibernate.tuple.entity.DynamicMapEntityTuplizer {\n"
+#~ " // override the buildInstantiator() method to plug in our custom "
+#~ "map...\n"
+#~ " protected final Instantiator buildInstantiator(\n"
+#~ " org.hibernate.mapping.PersistentClass mappingInfo) {\n"
+#~ " return new CustomMapInstantiator( mappingInfo );\n"
+#~ " }\n"
+#~ "\n"
+#~ " private static final class CustomMapInstantiator\n"
+#~ " extends org.hibernate.tuple.DynamicMapInstantitor {\n"
+#~ " // override the generateMap() method to return our custom
map...\n"
+#~ " protected final Map generateMap() {\n"
+#~ " return new CustomMap();\n"
+#~ " }\n"
+#~ " }\n"
+#~ "}"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/portability.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/portability.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/portability.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,32 +1,29 @@
-# Language ja-JP translations for Branch package.
-# Automatically generated, 2009.
-#
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: Branch 3_3\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-23 18:41+0000\n"
-"PO-Revision-Date: 2009-06-16 18:47+0000\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"POT-Creation-Date: 2009-12-23T01:43:45\n"
+"PO-Revision-Date: 2010-01-20 17:03+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: portability.xml:26
#, no-c-format
msgid "Database Portability Considerations"
msgstr ""
#. Tag: title
-#: portability.xml:29
#, no-c-format
msgid "Portability Basics"
msgstr ""
#. Tag: para
-#: portability.xml:31
#, no-c-format
msgid ""
"One of the selling points of Hibernate (and really Object/Relational Mapping
"
@@ -40,13 +37,11 @@
msgstr ""
#. Tag: title
-#: portability.xml:42
#, no-c-format
msgid "Dialect"
msgstr ""
#. Tag: para
-#: portability.xml:44
#, no-c-format
msgid ""
"The first line of portability for Hibernate is the dialect, which is a "
@@ -60,13 +55,11 @@
msgstr ""
#. Tag: title
-#: portability.xml:55
#, no-c-format
msgid "Dialect resolution"
msgstr ""
#. Tag: para
-#: portability.xml:57
#, no-c-format
msgid ""
"Originally, Hibernate would always require that users specify which dialect "
@@ -77,7 +70,6 @@
msgstr ""
#. Tag: para
-#: portability.xml:64
#, no-c-format
msgid ""
"Starting with version 3.2, Hibernate introduced the notion of automatically "
@@ -89,19 +81,18 @@
msgstr ""
#. Tag: para
-#: portability.xml:72
#, no-c-format
msgid ""
"Starting with version 3.3, Hibernate has a fare more powerful way to "
"automatically determine which dialect to should be used by relying on a "
"series of delegates which implement the
<interfacename>org.hibernate.dialect."
"resolver.DialectResolver</interfacename> which defines only a single
method:"
-"<programlisting><![CDATA[public Dialect resolveDialect(DatabaseMetaData
"
-"metaData) throws JDBCConnectionException]]></programlisting>. The basic
"
-"contract here is that if the resolver 'understands' the given database
"
-"metadata then it returns the corresponding Dialect; if not it returns null "
-"and the process continues to the next resolver. The signature also "
-"identifies
<exceptionname>org.hibernate.exception.JDBCConnectionException</"
+"<programlisting>public Dialect resolveDialect(DatabaseMetaData metaData)
"
+"throws JDBCConnectionException</programlisting>. The basic contract here is
"
+"that if the resolver 'understands' the given database metadata then it
"
+"returns the corresponding Dialect; if not it returns null and the process "
+"continues to the next resolver. The signature also identifies "
+"<exceptionname>org.hibernate.exception.JDBCConnectionException</"
"exceptionname> as possibly being thrown. A JDBCConnectionException here is
"
"interpreted to imply a \"non transient\" (aka non-recoverable) connection
"
"problem and is used to indicate an immediate stop to resolution attempts. "
@@ -110,7 +101,6 @@
msgstr ""
#. Tag: para
-#: portability.xml:85
#, no-c-format
msgid ""
"The cool part about these resolvers is that users can also register their "
@@ -126,13 +116,11 @@
msgstr ""
#. Tag: title
-#: portability.xml:98
#, no-c-format
msgid "Identifier generation"
msgstr ""
#. Tag: para
-#: portability.xml:100
#, no-c-format
msgid ""
"When considering portability between databases, another important decision "
@@ -151,47 +139,65 @@
"reference entities within a persistence context it must then issue the "
"insert immediately when the users requests the entitiy be associated with "
"the session (like via save() e.g.) regardless of current transactional "
-"semantics. <note> <para> Hibernate was changed slightly once the
implication "
-"of this was better understood so that the insert is delayed in cases where "
-"that is feasible. </para> </note> The underlying issue is that the
actual "
-"semanctics of the application itself changes in these cases."
+"semantics. The underlying issue is that the semantics of the application "
+"itself changes in these cases."
msgstr ""
#. Tag: para
-#: portability.xml:125
#, no-c-format
msgid ""
+"Hibernate has been improved so that the insert is delayed in cases where "
+"that is feasible."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid ""
"Starting with version 3.2.3, Hibernate comes with a set of <ulink url="
"\"http://in.relation.to/2082.lace\">enhanced</ulink> identifier
generators "
-"targetting portability in a much different way. <note> <para> There are
"
-"specifically 2 bundled <emphasis>enhanced</emphasis>generators: "
-"<itemizedlist> <listitem> <para>
<classname>org.hibernate.id.enhanced."
-"SequenceStyleGenerator</classname> </para> </listitem>
<listitem> <para> "
-"<classname>org.hibernate.id.enhanced.TableGenerator</classname>
</para> </"
-"listitem> </itemizedlist> </para> </note> The idea behind
these generators "
-"is to port the actual semantics of the identifer value generation to the "
-"different databases. For example, the
<classname>org.hibernate.id.enhanced."
-"SequenceStyleGenerator</classname> mimics the behavior of a sequence on
"
-"databases which do not support sequences by using a table."
+"targetting portability in a much different way."
msgstr ""
+#. Tag: para
+#, no-c-format
+msgid ""
+"There are specifically 2 bundled
<emphasis>enhanced</emphasis>generators:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid
"<classname>org.hibernate.id.enhanced.SequenceStyleGenerator</classname>"
+msgstr ""
+"<classname>org.hibernate.id.enhanced.SequenceStyleGenerator</classname>"
+
+#. Tag: para
+#, no-c-format
+msgid
"<classname>org.hibernate.id.enhanced.TableGenerator</classname>"
+msgstr
"<classname>org.hibernate.id.enhanced.TableGenerator</classname>"
+
+#. Tag: para
+#, no-c-format
+msgid ""
+"The idea behind these generators is to port the actual semantics of the "
+"identifer value generation to the different databases. For example, the "
+"<classname>org.hibernate.id.enhanced.SequenceStyleGenerator</classname>
"
+"mimics the behavior of a sequence on databases which do not support "
+"sequences by using a table."
+msgstr ""
+
#. Tag: title
-#: portability.xml:154
#, no-c-format
msgid "Database functions"
msgstr ""
#. Tag: para
-#: portability.xml:157
#, no-c-format
msgid ""
-"This is an area in Hibernate in need of improvement. In terms of portability
"
-"concerns, this function handling currently works pretty well from HQL; "
-"however, it is quite lacking in all other aspects."
+"This is a new area in Hibernate and as such it is not as mature as the "
+"overall Hibernate experience."
msgstr ""
#. Tag: para
-#: portability.xml:164
#, no-c-format
msgid ""
"SQL functions can be referenced in many ways by users. However, not all "
@@ -202,7 +208,6 @@
msgstr ""
#. Tag: para
-#: portability.xml:170
#, no-c-format
msgid ""
"Technically this function registration is handled through the
<classname>org."
@@ -213,7 +218,6 @@
msgstr ""
#. Tag: para
-#: portability.xml:177
#, no-c-format
msgid ""
"It is sort of implemented such that users can programatically register "
@@ -222,13 +226,11 @@
msgstr ""
#. Tag: title
-#: portability.xml:187
#, no-c-format
msgid "Type mappings"
msgstr ""
#. Tag: para
-#: portability.xml:189
#, no-c-format
msgid "This section scheduled for completion at a later date..."
msgstr ""
Deleted:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/preface.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/preface.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/preface.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,211 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-16 18:47+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#. Tag: title
-#: preface.xml:29
-#, no-c-format
-msgid "Preface"
-msgstr "前書き"
-
-#. Tag: para
-#: preface.xml:31
-#, fuzzy, no-c-format
-msgid ""
-"Working with object-oriented software and a relational database can be "
-"cumbersome and time consuming in today's enterprise environments. Hibernate
"
-"is an Object/Relational Mapping tool for Java environments. The term Object/"
-"Relational Mapping (ORM) refers to the technique of mapping a data "
-"representation from an object model to a relational data model with a SQL-"
-"based schema."
-msgstr ""
-"今日の企業環境において、オブジェクト指向ソフトウェアとリレーショナルデータ"
-"ベースに関わる作業は 煩雑で膨大な時間を必要とします。 HibernateはJava環境のオ"
-"ブジェクト/リレーショナルマッピングツールです。 オブジェクト/リレーショナル"
-"マッピング(ORM)とは、 オブジェクトモデルからSQLベーススキーマのリレーショナ"
-"ルデータモデルへと、 データ表現をマッピングする(対応付ける)技術のことです。"
-
-#. Tag: para
-#: preface.xml:39
-#, fuzzy, no-c-format
-msgid ""
-"Hibernate not only takes care of the mapping from Java classes to database "
-"tables (and from Java data types to SQL data types), but also provides data "
-"query and retrieval facilities. It can also significantly reduce development
"
-"time otherwise spent with manual data handling in SQL and JDBC."
-msgstr ""
-"HibernateはJavaクラスからデータベーステーブルへ(そしてJavaデータ型からSQL"
-"データ型へ) のマッピングを処理するだけではなく、データのクエリと復元の仕組み"
-"も提供します。 このおかげでSQLとJDBCを使った手作業でのデータ処理に費やされて"
-"いた開発時間を大幅に削減できます。"
-
-#. Tag: para
-#: preface.xml:46
-#, fuzzy, no-c-format
-msgid ""
-"Hibernate's goal is to relieve the developer from 95 percent of common data
"
-"persistence related programming tasks. Hibernate may not be the best "
-"solution for data-centric applications that only use stored-procedures to "
-"implement the business logic in the database, it is most useful with object-"
-"oriented domain models and business logic in the Java-based middle-tier. "
-"However, Hibernate can certainly help you to remove or encapsulate vendor-"
-"specific SQL code and will help with the common task of result set "
-"translation from a tabular representation to a graph of objects."
-msgstr ""
-"Hibernateの最終目標は、データの永続化に関わる一般的なプログラミング作業の95%"
-"から開発者を解放することです。 Hibernateはビジネスロジックの実装にストアドプ"
-"ロシージャを使う データ中心アプリケーションに対してのベストソリューションであ"
-"るに留まりません。 オブジェクト指向ドメインモデルとJavaベースの中間層でのビジ"
-"ネスロジックに対して最も役に立ちます。 しかしHibernateはベンダ固有のSQLコード"
-"を削減またはカプセル化したり、 表形式からオブジェクトのグラフへとリザルトセッ"
-"トを変換するなどの、 一般的なタスクにも役立つでしょう。"
-
-#. Tag: para
-#: preface.xml:56
-#, no-c-format
-msgid ""
-"If you are new to Hibernate and Object/Relational Mapping or even Java, "
-"please follow these steps:"
-msgstr ""
-"Hibernateやオブジェクト/リレーショナルマッピング、 さらにはJavaが初めての方"
-"は、以下のステップに従ってください:"
-
-#. Tag: para
-#: preface.xml:63
-#, no-c-format
-msgid ""
-"Read <xref linkend=\"tutorial\"/> for a tutorial with step-by-step
"
-"instructions. The source code for the tutorial is included in the "
-"distribution in the <literal>doc/reference/tutorial/</literal>
directory."
-msgstr ""
-"<xref linkend=\"tutorial\"/> を読んでください。 段階的に解説していきます。 "
-"チュートリアルのソースコードはディストリビューションの <literal>doc/"
-"reference/tutorial</literal> ディレクトリに含まれています。"
-
-#. Tag: para
-#: preface.xml:71
-#, no-c-format
-msgid ""
-"Read <xref linkend=\"architecture\"/> to understand the
environments where "
-"Hibernate can be used."
-msgstr ""
-"<xref linkend=\"architecture\"/> を読んで、Hibernateが利用可能な環境を理解し"
-"てください。"
-
-#. Tag: para
-#: preface.xml:77
-#, fuzzy, no-c-format
-msgid ""
-"View the <literal>eg/</literal> directory in the Hibernate
distribution. It "
-"contains a simple standalone application. Copy your JDBC driver to the "
-"<literal>lib/</literal> directory and edit
<literal>etc/hibernate."
-"properties</literal>, specifying correct values for your database. From a
"
-"command prompt in the distribution directory, type <literal>ant
eg</literal> "
-"(using Ant), or under Windows, type <literal>build eg</literal>."
-msgstr ""
-"Hibernateディストリビューションの <literal>eg/</literal> ディレクトリを見てく"
-"ださい。 簡単なスタンドアローンのアプリケーションがあります。 JDBCドライバを "
-"<literal>lib/</literal> ディレクトリにコピーして、 自分のデータベースに合う正"
-"しい値を指定するように <literal>etc/hibernate.properties</literal> を編集して"
-"ください。 ディストリビューションディレクトリから、コマンドプロンプトで "
-"<literal>ant eg</literal> とタイプしてください(Antを使います)。 またWindows"
-"環境では <literal>build eg</literal> とタイプしてください。"
-
-#. Tag: para
-#: preface.xml:88
-#, fuzzy, no-c-format
-msgid ""
-"Use this reference documentation as your primary source of information. "
-"Consider reading <biblioref
linkend=\"biblio-JPwH\"></biblioref> if you need "
-"more help with application design, or if you prefer a step-by-step tutorial.
"
-"Also visit <ulink
url=\"http://caveatemptor.hibernate.org\"></ulink> and "
-"download the example application from <biblioref
linkend=\"biblio-JPwH\"></"
-"biblioref>."
-msgstr ""
-"このリファレンスドキュメントを第一の情報源として利用してください。 アプリケー"
-"ション設計についてのさらなる情報や段階的なチュートリアルを探しているなら、 "
-"<emphasis>Java Persistence with
Hibernate</emphasis>(http://www.manning.com/"
-"bauer2) をおすすめします。 またhttp://caveatemptor.hibernate.orgから Java "
-"Persistence with Hibernateの例題のアプリケーションをダウンロードできます。"
-
-#. Tag: para
-#: preface.xml:98
-#, no-c-format
-msgid "FAQs are answered on the Hibernate website."
-msgstr "FAQはHibernateウェブサイトにあります。"
-
-#. Tag: para
-#: preface.xml:103
-#, fuzzy, no-c-format
-msgid ""
-"Links to third party demos, examples, and tutorials are maintained on the "
-"Hibernate website."
-msgstr ""
-"サードパーティのデモ、例、チュートリアルはHibernateウェブサイトにリンクがあり"
-"ます。"
-
-#. Tag: para
-#: preface.xml:109
-#, no-c-format
-msgid ""
-"The Community Area on the Hibernate website is a good resource for design "
-"patterns and various integration solutions (Tomcat, JBoss AS, Struts, EJB, "
-"etc.)."
-msgstr ""
-"Hibernateウェブサイトのコミュニティエリアは、デザインパターンやさまざまな統合"
-"ソリューション (Tomcat, JBoss AS, Struts, EJB, 等)についてのよい情報源で"
-"す。"
-
-#. Tag: para
-#: preface.xml:117
-#, fuzzy, no-c-format
-msgid ""
-"If you have questions, use the user forum linked on the Hibernate website. "
-"We also provide a JIRA issue tracking system for bug reports and feature "
-"requests. If you are interested in the development of Hibernate, join the "
-"developer mailing list. If you are interested in translating this "
-"documentation into your language, contact us on the developer mailing list."
-msgstr ""
-"質問があればHibernateウェブサイトのユーザフォーラムを活用してください。 また"
-"バグレポートとフィーチャリクエストのためJIRA課題追跡システムを用意していま"
-"す。 Hibernateの開発に興味があれば、開発者メーリングリストに参加してくださ"
-"い。 このドキュメントをあなたの国の言葉に翻訳したい場合は、 開発者メーリング"
-"リストで私たちにコンタクトを取ってください。"
-
-#. Tag: para
-#: preface.xml:125
-#, no-c-format
-msgid ""
-"Commercial development support, production support, and training for "
-"Hibernate is available through JBoss Inc. (see
http://www.hibernate.org/"
-"SupportTraining/). Hibernate is a Professional Open Source project and a "
-"critical component of the JBoss Enterprise Middleware System (JEMS) suite of
"
-"products."
-msgstr ""
-"商用開発のサポート、製品のサポート、HibernateのトレーニングはJBoss Inc.が提供"
-"しています (http://www.hibernate.org/SupportTraining/を見てください)。 "
-"HibernateはProfessional Open Sourceプロジェクト、 そしてJBoss Enterprise "
-"Middleware System(JEMS)プロダクトスイートのクリティカルコンポーネントです。"
-
-#. Tag: title
-#: preface.xml:133
-#, no-c-format
-msgid "Feedback"
-msgstr ""
-
-#. Tag: para
-#: preface.xml:134
-#, no-c-format
-msgid ""
-"Use <ulink
url=\"http://opensource.atlassian.com/projects/hibernate"
-"\">Hibernate JIRA</ulink> to report errors or request enhacements to
this "
-"documentation."
-msgstr ""
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_criteria.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_criteria.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_criteria.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,62 +1,51 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:27\n"
+"PO-Revision-Date: 2010-01-18 13:38+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: query_criteria.xml:29
#, no-c-format
msgid "Criteria Queries"
-msgstr "Criteriaクエリ"
+msgstr "Criteria クエリ"
#. Tag: para
-#: query_criteria.xml:31
#, no-c-format
msgid "Hibernate features an intuitive, extensible criteria query API."
-msgstr "Hibernateには、直感的で拡張可能なcriteriaクエリAPIが用意されています。"
+msgstr ""
+"Hibernate には、直感的で拡張可能な criteria クエリ API が用意されています。"
#. Tag: title
-#: query_criteria.xml:36
#, no-c-format
msgid "Creating a <literal>Criteria</literal> instance"
msgstr "<literal>Criteria</literal> インスタンスの作成"
#. Tag: para
-#: query_criteria.xml:38
#, no-c-format
msgid ""
"The interface <literal>org.hibernate.Criteria</literal> represents a
query "
"against a particular persistent class. The <literal>Session</literal>
is a "
"factory for <literal>Criteria</literal> instances."
msgstr ""
-"<literal>org.hibernate.Criteria</literal> インターフェイスは特定の永続性クラ"
+"<literal>org.hibernate.Criteria</literal> インターフェースは特定の永続性クラ"
"スに対するクエリを表現します。 <literal>Session</literal> は "
"<literal>Criteria</literal> インスタンスのファクトリです。"
-#. Tag: programlisting
-#: query_criteria.xml:44
-#, no-c-format
-msgid ""
-"<![CDATA[Criteria crit = sess.createCriteria(Cat.class);\n"
-"crit.setMaxResults(50);\n"
-"List cats = crit.list();]]>"
-msgstr ""
-
#. Tag: title
-#: query_criteria.xml:49
#, no-c-format
msgid "Narrowing the result set"
msgstr "リザルトセットの絞込み"
#. Tag: para
-#: query_criteria.xml:51
#, no-c-format
msgid ""
"An individual query criterion is an instance of the interface
<literal>org."
@@ -64,127 +53,54 @@
"criterion.Restrictions</literal> defines factory methods for obtaining
"
"certain built-in <literal>Criterion</literal> types."
msgstr ""
-"<literal>org.hibernate.criterion.Criterion</literal>
インターフェイスのインス"
-"タンスは、 個別のクエリクライテリオン(問い合わせの判定基準)を表します。 "
+"<literal>org.hibernate.criterion.Criterion</literal>
インターフェースのインス"
+"タンスは、個別のクエリクライテリオン(問い合わせの判定基準)を表します。 "
"<literal>org.hibernate.criterion.Restrictions</literal>
クラスは、ある組み込"
"みの <literal>Criterion</literal> 型を取得するためのファクトリメソッドを持っ"
"ています。"
-#. Tag: programlisting
-#: query_criteria.xml:59
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
-" .add( Restrictions.like(\"name\", \"Fritz%\") )\n"
-" .add( Restrictions.between(\"weight\", minWeight, maxWeight)
)\n"
-" .list();]]>"
-msgstr ""
+msgid "Restrictions can be grouped logically."
+msgstr "Restriction (限定)は、論理的にグループ化できます。"
#. Tag: para
-#: query_criteria.xml:61
-#, fuzzy, no-c-format
-msgid "Restrictions can be grouped logically."
-msgstr "Restriction(限定)は、論理的にグループ化できます。"
-
-#. Tag: programlisting
-#: query_criteria.xml:65
#, no-c-format
msgid ""
-"<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
-" .add( Restrictions.like(\"name\", \"Fritz%\") )\n"
-" .add( Restrictions.or(\n"
-" Restrictions.eq( \"age\", new Integer(0) ),\n"
-" Restrictions.isNull(\"age\")\n"
-" ) )\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_criteria.xml:67
-#, no-c-format
-msgid ""
-"<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
-" .add( Restrictions.in( \"name\", new String[] { \"Fritz\",
\"Izi\", \"Pk"
-"\" } ) )\n"
-" .add( Restrictions.disjunction()\n"
-" .add( Restrictions.isNull(\"age\") )\n"
-" .add( Restrictions.eq(\"age\", new Integer(0) ) )\n"
-" .add( Restrictions.eq(\"age\", new Integer(1) ) )\n"
-" .add( Restrictions.eq(\"age\", new Integer(2) ) )\n"
-" ) )\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: para
-#: query_criteria.xml:69
-#, fuzzy, no-c-format
-msgid ""
"There are a range of built-in criterion types
(<literal>Restrictions</"
"literal> subclasses). One of the most useful allows you to specify SQL "
"directly."
msgstr ""
-"元々あるCriterion型(<literal>Restrictions</literal> のサブクラス) はかなり"
-"の範囲に及びますが、特に有用なのはSQLを直接指定できるものです。"
+"元々ある Criterion 型(<literal>Restrictions</literal> のサブクラス) はかな"
+"りの範囲に及びますが、特に有用なのは SQL を直接指定できるものです。"
-#. Tag: programlisting
-#: query_criteria.xml:74
-#, no-c-format
-msgid ""
-"<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
-" .add( Restrictions.sqlRestriction(\"lower({alias}.name) like
lower(?)\", "
-"\"Fritz%\", Hibernate.STRING) )\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_criteria.xml:76
#, no-c-format
msgid ""
"The <literal>{alias}</literal> placeholder with be replaced by the row
alias "
"of the queried entity."
msgstr ""
-"<literal>{alias}</literal> というプレースホルダは、 問い合わせを受けたエン"
-"ティティの行の別名によって置き換えられます。"
+"<literal>{alias}</literal> というプレースホルダは、問い合わせを受けたエンティ"
+"ティの行の別名によって置き換えられます。"
#. Tag: para
-#: query_criteria.xml:81
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also obtain a criterion from a <literal>Property</literal>
instance. "
"You can create a <literal>Property</literal> by calling
<literal>Property."
"forName()</literal>:"
msgstr ""
-"criterionを得る別の手段は、 <literal>Property</literal> インスタンスから取得"
+"criterion を得る別の手段は、 <literal>Property</literal> インスタンスから取得"
"することです。 <literal>Property.forName()</literal> を呼び出して、 "
"<literal>Property</literal> インスタンスを作成できます。"
-#. Tag: programlisting
-#: query_criteria.xml:87
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-"Property age = Property.forName(\"age\");\n"
-"List cats = sess.createCriteria(Cat.class)\n"
-" .add( Restrictions.disjunction()\n"
-" .add( age.isNull() )\n"
-" .add( age.eq( new Integer(0) ) )\n"
-" .add( age.eq( new Integer(1) ) )\n"
-" .add( age.eq( new Integer(2) ) )\n"
-" ) )\n"
-" .add( Property.forName(\"name\").in( new String[] {
\"Fritz\", \"Izi\", "
-"\"Pk\" } ) )\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: title
-#: query_criteria.xml:92
#, no-c-format
msgid "Ordering the results"
msgstr "結果の整列"
#. Tag: para
-#: query_criteria.xml:94
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can order the results using
<literal>org.hibernate.criterion.Order</"
"literal>."
@@ -192,87 +108,36 @@
"<literal>org.hibernate.criterion.Order</literal> を使って結果を並び替えること"
"ができます。"
-#. Tag: programlisting
-#: query_criteria.xml:98
-#, no-c-format
-msgid ""
-"<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
-" .add( Restrictions.like(\"name\", \"F%\")\n"
-" .addOrder( Order.asc(\"name\") )\n"
-" .addOrder( Order.desc(\"age\") )\n"
-" .setMaxResults(50)\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_criteria.xml:100
-#, no-c-format
-msgid ""
-"<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
-" .add( Property.forName(\"name\").like(\"F%\") )\n"
-" .addOrder( Property.forName(\"name\").asc() )\n"
-" .addOrder( Property.forName(\"age\").desc() )\n"
-" .setMaxResults(50)\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: title
-#: query_criteria.xml:105
#, no-c-format
msgid "Associations"
msgstr "関連"
#. Tag: para
-#: query_criteria.xml:107
#, no-c-format
msgid ""
"By navigating associations using <literal>createCriteria()</literal>
you can "
"specify constraints upon related entities:"
msgstr ""
-#. Tag: programlisting
-#: query_criteria.xml:112
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
-" .add( Restrictions.like(\"name\", \"F%\") )\n"
-" .createCriteria(\"kittens\")\n"
-" .add( Restrictions.like(\"name\", \"F%\") )\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: para
-#: query_criteria.xml:114
-#, fuzzy, no-c-format
-msgid ""
"The second <literal>createCriteria()</literal> returns a new instance
of "
"<literal>Criteria</literal> that refers to the elements of the "
"<literal>kittens</literal> collection."
msgstr ""
-"2番目の <literal>createCriteria()</literal>
は、<literal>kittens</literal> コ"
-"レクションの要素を参照する新しい <literal>Criteria</literal> インスタンスを返"
-"すことに注意してください。"
+"2番目の <literal>createCriteria()</literal> は、
<literal>kittens</literal> "
+"コレクションの要素を参照する新しい <literal>Criteria</literal> インスタンスを"
+"返すことに注意してください。"
#. Tag: para
-#: query_criteria.xml:120
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"There is also an alternate form that is useful in certain circumstances:"
msgstr "以下のような方法も、状況により有用です。"
-#. Tag: programlisting
-#: query_criteria.xml:124
-#, no-c-format
-msgid ""
-"<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
-" .createAlias(\"kittens\", \"kt\")\n"
-" .createAlias(\"mate\", \"mt\")\n"
-" .add( Restrictions.eqProperty(\"kt.name\", \"mt.name\")
)\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_criteria.xml:126
#, no-c-format
msgid ""
"(<literal>createAlias()</literal> does not create a new instance of
"
@@ -282,8 +147,7 @@
"スタンスを作成しません。)"
#. Tag: para
-#: query_criteria.xml:131
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The kittens collections held by the <literal>Cat</literal> instances
"
"returned by the previous two queries are <emphasis>not</emphasis>
pre-"
@@ -291,154 +155,78 @@
"match the criteria, you must use a
<literal>ResultTransformer</literal>."
msgstr ""
"前の2つのクエリによって返される <literal>Cat</literal> インスタンスによって保"
-"持されるkittensコレクションは、 criteriaによって事前にフィルタリング "
-"<emphasis>されない</emphasis> ことに注意してください。 もしcriteriaに適合する"
-"kittenを取得したいなら、 <literal>ResultTransformer</literal> を使わなければ"
-"なりません。"
+"持される kittens コレクションは、 criteria によって事前にフィルタリング "
+"<emphasis>されない</emphasis> ことに注意してください。もし criteria に適合す"
+"る kitten を取得したいなら、 <literal>ResultTransformer</literal> を使わなけ"
+"ればなりません。"
-#. Tag: programlisting
-#: query_criteria.xml:138
-#, no-c-format
-msgid ""
-"<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
-" .createCriteria(\"kittens\", \"kt\")\n"
-" .add( Restrictions.eq(\"name\", \"F%\") )\n"
-" .setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP)\n"
-" .list();\n"
-"Iterator iter = cats.iterator();\n"
-"while ( iter.hasNext() ) {\n"
-" Map map = (Map) iter.next();\n"
-" Cat cat = (Cat) map.get(Criteria.ROOT_ALIAS);\n"
-" Cat kitten = (Cat) map.get(\"kt\");\n"
-"}]]>"
-msgstr ""
-
#. Tag: title
-#: query_criteria.xml:143
#, no-c-format
msgid "Dynamic association fetching"
msgstr "関連の動的フェッチ"
#. Tag: para
-#: query_criteria.xml:145
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can specify association fetching semantics at runtime using "
"<literal>setFetchMode()</literal>."
msgstr ""
-"<literal>setFetchMode()</literal> を使い、 実行時に関連の復元方法を指定しても"
+"<literal>setFetchMode()</literal> を使い、実行時に関連の復元方法を指定しても"
"よいです。"
-#. Tag: programlisting
-#: query_criteria.xml:150
-#, no-c-format
-msgid ""
-"<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
-" .add( Restrictions.like(\"name\", \"Fritz%\") )\n"
-" .setFetchMode(\"mate\", FetchMode.EAGER)\n"
-" .setFetchMode(\"kittens\", FetchMode.EAGER)\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_criteria.xml:152
#, no-c-format
msgid ""
"This query will fetch both <literal>mate</literal> and
<literal>kittens</"
-"literal> by outer join. See <xref
linkend=\"performance-fetching\"/> for "
+"literal> by outer join. See <xref linkend=\"performance-fetching\"
/> for "
"more information."
msgstr ""
"このクエリは外部結合により <literal>mate</literal> と
<literal>kittens</"
-"literal> の両方をフェッチします。 より多くの情報は <xref linkend="
-"\"performance-fetching\"/> を参照してください。"
+"literal> の両方をフェッチします。詳細については <xref linkend=\"performance-"
+"fetching\"/> を参照してください。"
#. Tag: title
-#: query_criteria.xml:160
#, no-c-format
msgid "Example queries"
msgstr "クエリの例"
#. Tag: para
-#: query_criteria.xml:162
#, no-c-format
msgid ""
"The class <literal>org.hibernate.criterion.Example</literal> allows you
to "
"construct a query criterion from a given instance."
msgstr ""
-"<literal>org.hibernate.criterion.Example</literal> クラスは、 与えられたイン"
-"スタンスからクエリクライテリオンを構築できます。"
+"<literal>org.hibernate.criterion.Example</literal> クラスは、与えられたインス"
+"タンスからクエリクライテリオンを構築できます。"
-#. Tag: programlisting
-#: query_criteria.xml:167
-#, no-c-format
-msgid ""
-"<![CDATA[Cat cat = new Cat();\n"
-"cat.setSex('F');\n"
-"cat.setColor(Color.BLACK);\n"
-"List results = session.createCriteria(Cat.class)\n"
-" .add( Example.create(cat) )\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_criteria.xml:169
#, no-c-format
msgid ""
"Version properties, identifiers and associations are ignored. By default, "
"null valued properties are excluded."
msgstr ""
-"バージョンプロパティ、識別子、関連は無視されます。 デフォルトではnull値のプロ"
-"パティは除外されます。"
+"バージョンプロパティ、識別子、関連は無視されます。デフォルトでは null 値のプ"
+"ロパティは除外されます。"
#. Tag: para
-#: query_criteria.xml:174
#, no-c-format
msgid "You can adjust how the <literal>Example</literal> is
applied."
msgstr ""
-"どのように <literal>Example</literal> を適用するか 調整することができます。"
+"どのように <literal>Example</literal> を適用するか調整することができます。"
-#. Tag: programlisting
-#: query_criteria.xml:178
-#, no-c-format
-msgid ""
-"<![CDATA[Example example = Example.create(cat)\n"
-" .excludeZeroes() //exclude zero valued properties\n"
-" .excludeProperty(\"color\") //exclude the property named
\"color\"\n"
-" .ignoreCase() //perform case insensitive string "
-"comparisons\n"
-" .enableLike(); //use like for string comparisons\n"
-"List results = session.createCriteria(Cat.class)\n"
-" .add(example)\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_criteria.xml:180
#, no-c-format
msgid "You can even use examples to place criteria upon associated objects."
msgstr ""
-"関連オブジェクトにcriteriaを指定するために、Exampleを使うことも可能です。"
+"関連オブジェクトに criteria を指定するために、 example を使うことも可能です。"
-#. Tag: programlisting
-#: query_criteria.xml:184
-#, no-c-format
-msgid ""
-"<![CDATA[List results = session.createCriteria(Cat.class)\n"
-" .add( Example.create(cat) )\n"
-" .createCriteria(\"mate\")\n"
-" .add( Example.create( cat.getMate() ) )\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: title
-#: query_criteria.xml:189
#, no-c-format
msgid "Projections, aggregation and grouping"
msgstr "射影、集約、グループ化"
#. Tag: para
-#: query_criteria.xml:190
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The class <literal>org.hibernate.criterion.Projections</literal> is a
"
"factory for <literal>Projection</literal> instances. You can apply a
"
@@ -446,79 +234,31 @@
msgstr ""
"<literal>org.hibernate.criterion.Projections</literal> クラスは "
"<literal>Projection</literal> インスタンスのファクトリです。 "
-"<literal>setProjection()</literal> を呼び出すことで、 クエリに射影を適用しま"
+"<literal>setProjection()</literal> を呼び出すことで、クエリに射影を適用しま"
"す。"
-#. Tag: programlisting
-#: query_criteria.xml:196
-#, no-c-format
-msgid ""
-"<![CDATA[List results = session.createCriteria(Cat.class)\n"
-" .setProjection( Projections.rowCount() )\n"
-" .add( Restrictions.eq(\"color\", Color.BLACK) )\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_criteria.xml:198
-#, no-c-format
-msgid ""
-"<![CDATA[List results = session.createCriteria(Cat.class)\n"
-" .setProjection( Projections.projectionList()\n"
-" .add( Projections.rowCount() )\n"
-" .add( Projections.avg(\"weight\") )\n"
-" .add( Projections.max(\"weight\") )\n"
-" .add( Projections.groupProperty(\"color\") )\n"
-" )\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_criteria.xml:200
#, no-c-format
msgid ""
"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."
msgstr ""
-"必要であっても、criteriaクエリに「group by」を明示する必要はありません。 ある"
-"種のProjection型は <emphasis>グループ化射影</emphasis> として定義され、 SQL"
-"の <literal>group by</literal> 節にも現れます。"
+"必要であっても、 criteria クエリに「group by」を明示する必要はありません。あ"
+"る種の Projection 型は <emphasis>グループ化射影</emphasis> として定義され、 "
+"SQL の <literal>group by</literal> 節にも現れます。"
#. Tag: para
-#: query_criteria.xml:206
#, fuzzy, no-c-format
msgid ""
"An alias can be assigned to a projection so that the projected value can be "
"referred to in restrictions or orderings. Here are two different ways to do "
"this:"
msgstr ""
-"任意で射影に別名を付けられるため、射影される値はrestrictionやordering内から参"
-"照できます。 別名をつける2つの異なる方法を示します。"
+"任意で射影に別名を付けられるため、射影される値は restriction や ordering 内か"
+"ら参照できます。別名をつける2つの異なる方法を示します:"
-#. Tag: programlisting
-#: query_criteria.xml:212
-#, no-c-format
-msgid ""
-"<![CDATA[List results = session.createCriteria(Cat.class)\n"
-" .setProjection( Projections.alias(
Projections.groupProperty(\"color\"), "
-"\"colr\" ) )\n"
-" .addOrder( Order.asc(\"colr\") )\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_criteria.xml:214
-#, no-c-format
-msgid ""
-"<![CDATA[List results = session.createCriteria(Cat.class)\n"
-" .setProjection(
Projections.groupProperty(\"color\").as(\"colr\") )\n"
-" .addOrder( Order.asc(\"colr\") )\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_criteria.xml:216
#, no-c-format
msgid ""
"The <literal>alias()</literal> and <literal>as()</literal>
methods simply "
@@ -526,171 +266,57 @@
"<literal>Projection</literal>. As a shortcut, you can assign an alias
when "
"you add the projection to a projection list:"
msgstr ""
-"<literal>alias()</literal> と <literal>as()</literal> メソッドは、
Projection"
-"インスタンスを別の名前の <literal>Projection</literal> インスタンスで ラップ"
-"するだけです。 ショートカットとして、射影を射影リストに追加する際に、別名をつ"
-"けられます。"
+"<literal>alias()</literal> と <literal>as()</literal> メソッドは、
"
+"Projection インスタンスを別の名前の <literal>Projection</literal> インスタン"
+"スでラップするだけです。ショートカットとして、射影を射影リストに追加する際"
+"に、別名をつけられます:"
-#. Tag: programlisting
-#: query_criteria.xml:223
-#, no-c-format
-msgid ""
-"<![CDATA[List results = session.createCriteria(Cat.class)\n"
-" .setProjection( Projections.projectionList()\n"
-" .add( Projections.rowCount(), \"catCountByColor\" )\n"
-" .add( Projections.avg(\"weight\"), \"avgWeight\"
)\n"
-" .add( Projections.max(\"weight\"), \"maxWeight\"
)\n"
-" .add( Projections.groupProperty(\"color\"), \"color\"
)\n"
-" )\n"
-" .addOrder( Order.desc(\"catCountByColor\") )\n"
-" .addOrder( Order.desc(\"avgWeight\") )\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_criteria.xml:225
-#, no-c-format
-msgid ""
-"<![CDATA[List results = session.createCriteria(Domestic.class,
\"cat\")\n"
-" .createAlias(\"kittens\", \"kit\")\n"
-" .setProjection( Projections.projectionList()\n"
-" .add( Projections.property(\"cat.name\"), \"catName\"
)\n"
-" .add( Projections.property(\"kit.name\"), \"kitName\"
)\n"
-" )\n"
-" .addOrder( Order.asc(\"catName\") )\n"
-" .addOrder( Order.asc(\"kitName\") )\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_criteria.xml:227
#, no-c-format
msgid ""
"You can also use <literal>Property.forName()</literal> to express
"
"projections:"
-msgstr "射影の式に <literal>Property.forName()</literal> も使用できます。"
+msgstr "射影の式に <literal>Property.forName()</literal> も使用できます:"
-#. Tag: programlisting
-#: query_criteria.xml:231
-#, no-c-format
-msgid ""
-"<![CDATA[List results = session.createCriteria(Cat.class)\n"
-" .setProjection( Property.forName(\"name\") )\n"
-" .add( Property.forName(\"color\").eq(Color.BLACK) )\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_criteria.xml:233
-#, no-c-format
-msgid ""
-"<![CDATA[List results = session.createCriteria(Cat.class)\n"
-" .setProjection( Projections.projectionList()\n"
-" .add( Projections.rowCount().as(\"catCountByColor\") )\n"
-" .add(
Property.forName(\"weight\").avg().as(\"avgWeight\") )\n"
-" .add(
Property.forName(\"weight\").max().as(\"maxWeight\") )\n"
-" .add( Property.forName(\"color\").group().as(\"color\"
)\n"
-" )\n"
-" .addOrder( Order.desc(\"catCountByColor\") )\n"
-" .addOrder( Order.desc(\"avgWeight\") )\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: title
-#: query_criteria.xml:238
#, no-c-format
msgid "Detached queries and subqueries"
msgstr "クエリおよびサブクエリの分離"
#. Tag: para
-#: query_criteria.xml:239
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>DetachedCriteria</literal> class allows you to create a
query "
"outside the scope of a session and then execute it using an arbitrary "
"<literal>Session</literal>."
msgstr ""
-"<literal>DetachedCriteria</literal> クラスにより、 セッションスコープ外にクエ"
-"リを作成できます。 後で、任意の <literal>Session</literal> を使って、実行でき"
+"<literal>DetachedCriteria</literal> クラスにより、セッションスコープ外にクエ"
+"リを作成できます。後で、任意の <literal>Session</literal> を使って、実行でき"
"ます。"
-#. Tag: programlisting
-#: query_criteria.xml:244
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[DetachedCriteria query = DetachedCriteria.forClass(Cat.class)\n"
-" .add( Property.forName(\"sex\").eq('F') );\n"
-" \n"
-"Session session = ....;\n"
-"Transaction txn = session.beginTransaction();\n"
-"List results = query.getExecutableCriteria(session).setMaxResults(100).list"
-"();\n"
-"txn.commit();\n"
-"session.close();]]>"
-msgstr ""
-
-#. Tag: para
-#: query_criteria.xml:246
-#, fuzzy, no-c-format
-msgid ""
"A <literal>DetachedCriteria</literal> can also be used to express a
"
"subquery. Criterion instances involving subqueries can be obtained via "
"<literal>Subqueries</literal> or
<literal>Property</literal>."
msgstr ""
"<literal>DetachedCriteria</literal> は、サブクエリを表現するためにも使えま"
-"す。 サブクエリを伴うCriterionインスタンスは、 <literal>Subqueries</literal> "
-"もしくは <literal>Property</literal> から得られます。"
+"す。サブクエリを伴う Criterion インスタンスは、 <literal>Subqueries</"
+"literal> もしくは <literal>Property</literal> から得られます。"
-#. Tag: programlisting
-#: query_criteria.xml:252
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[DetachedCriteria avgWeight =
DetachedCriteria.forClass(Cat.class)\n"
-" .setProjection( Property.forName(\"weight\").avg() );\n"
-"session.createCriteria(Cat.class)\n"
-" .add( Property.forName(\"weight\").gt(avgWeight) )\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_criteria.xml:254
-#, no-c-format
-msgid ""
-"<![CDATA[DetachedCriteria weights =
DetachedCriteria.forClass(Cat.class)\n"
-" .setProjection( Property.forName(\"weight\") );\n"
-"session.createCriteria(Cat.class)\n"
-" .add( Subqueries.geAll(\"weight\", weights) )\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: para
-#: query_criteria.xml:256
-#, fuzzy, no-c-format
msgid "Correlated subqueries are also possible:"
-msgstr "相互関係があるサブクエリでさえも可能です。"
+msgstr "相互関係があるサブクエリでさえも可能です:"
-#. Tag: programlisting
-#: query_criteria.xml:260
-#, no-c-format
-msgid ""
-"<![CDATA[DetachedCriteria avgWeightForSex =
DetachedCriteria.forClass(Cat."
-"class, \"cat2\")\n"
-" .setProjection( Property.forName(\"weight\").avg() )\n"
-" .add(
Property.forName(\"cat2.sex\").eqProperty(\"cat.sex\") );\n"
-"session.createCriteria(Cat.class, \"cat\")\n"
-" .add( Property.forName(\"weight\").gt(avgWeightForSex) )\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: title
-#: query_criteria.xml:269
#, no-c-format
msgid "Queries by natural identifier"
msgstr "自然識別子によるクエリ"
#. Tag: para
-#: query_criteria.xml:271
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For most queries, including criteria queries, the query cache is not "
"efficient because query cache invalidation occurs too frequently. However, "
@@ -699,79 +325,544 @@
"applications, this kind of query occurs frequently. The criteria API "
"provides special provision for this use case."
msgstr ""
-"criteriaクエリを含むたいていのクエリにとって、 クエリキャッシュはあまり効率が"
-"よくないです。 なぜなら、クエリキャッシュが頻繁に無効になるためです。 しかし"
-"ながら、キャッシュを無効にするアルゴリズムを最適化できる 特別なクエリの種類が"
-"1つあります。 更新されない自然キーによる検索です。 いくつかのアプリケーショ"
-"ンでは、この種類のクエリが頻繁に現れます。 このような使われ方のために、"
-"criteria APIは特別な対策を提供します。"
+"criteria クエリを含むたいていのクエリにとって、クエリキャッシュはあまり効率が"
+"よくないです。なぜなら、クエリキャッシュが頻繁に無効になるためです。しかしな"
+"がら、キャッシュを無効にするアルゴリズムを最適化できる特別なクエリの種類が1"
+"つあります。更新されない自然キーによる検索です。いくつかのアプリケーションで"
+"は、この種類のクエリが頻繁に現れます。このような使われ方のために、 criteria "
+"API は特別な対策を提供します。"
#. Tag: para
-#: query_criteria.xml:279
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"First, map the natural key of your entity using
<literal><natural-id></"
"literal> and enable use of the second-level cache."
msgstr ""
-"最初に、<literal><natural-id></literal> を使って、
エンティティの自然"
-"キーをマップしてください。 そして、二次キャッシュを有効にします。"
+"最初に、 <literal><natural-id></literal>
を使って、エンティティの自然"
+"キーをマップしてください。そして、二次キャッシュを有効にします。"
-#. Tag: programlisting
-#: query_criteria.xml:284
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"User\">\n"
-" <cache usage=\"read-write\"/>\n"
-" <id name=\"id\">\n"
-" <generator class=\"increment\"/>\n"
-" </id>\n"
-" <natural-id>\n"
-" <property name=\"name\"/>\n"
-" <property name=\"org\"/>\n"
-" </natural-id>\n"
-" <property name=\"password\"/>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: query_criteria.xml:286
-#, fuzzy, no-c-format
-msgid ""
"This functionality is not intended for use with entities with "
"<emphasis>mutable</emphasis> natural keys."
msgstr ""
-"注意: <emphasis>変更される</emphasis> 自然キーを持つエンティティに この機能"
-"を使うのは、意図されていない使い方です。"
+"注記: <emphasis>変更される</emphasis> 自然キーを持つエンティティにこの機能を"
+"使うのは、意図されていない使い方です。"
#. Tag: para
-#: query_criteria.xml:291
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Once you have enabled the Hibernate query cache, the
<literal>Restrictions."
"naturalId()</literal> allows you to make use of the more efficient cache
"
"algorithm."
msgstr ""
-"これで、<literal>Restrictions.naturalId()</literal> により、 より効率的な"
+"これで、 <literal>Restrictions.naturalId()</literal> により、より効率的な"
"キャッシュアルゴリズムを使用できます。"
-#. Tag: programlisting
-#: query_criteria.xml:297
-#, no-c-format
-msgid ""
-"<![CDATA[session.createCriteria(User.class)\n"
-" .add( Restrictions.naturalId()\n"
-" .set(\"name\", \"gavin\")\n"
-" .set(\"org\", \"hb\") \n"
-" ).setCacheable(true)\n"
-" .uniqueResult();]]>"
-msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Criteria crit = sess.createCriteria(Cat.class);\n"
+#~ "crit.setMaxResults(50);\n"
+#~ "List cats = crit.list();]]>"
+#~ msgstr ""
+#~ "Criteria crit = sess.createCriteria(Cat.class);\n"
+#~ "crit.setMaxResults(50);\n"
+#~ "List cats = crit.list();"
+#, fuzzy
#~ msgid ""
-#~ "You may easily specify constraints upon related entities by navigating "
-#~ "associations using <literal>createCriteria()</literal>."
+#~ "<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.like(\"name\", \"Fritz%\") )\n"
+#~ " .add( Restrictions.between(\"weight\", minWeight, maxWeight)
)\n"
+#~ " .list();]]>"
#~ msgstr ""
-#~ "<literal>createCriteria()</literal> を使い、関連をナビゲートすることで、 "
-#~ "容易に関係するエンティティに制約を指定できます。"
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.like(\"name\", \"Fritz%\")
)\n"
+#~ " .add( Restrictions.between(\"weight\", minWeight, maxWeight)
)\n"
+#~ " .list();"
-#~ msgid "Next, enable the Hibernate query cache."
-#~ msgstr "次に、Hibernateクエリキャッシュを有効にします。"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.like(\"name\", \"Fritz%\") )\n"
+#~ " .add( Restrictions.or(\n"
+#~ " Restrictions.eq( \"age\", new Integer(0) ),\n"
+#~ " Restrictions.isNull(\"age\")\n"
+#~ " ) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.like(\"name\", \"Fritz%\")
)\n"
+#~ " .add( Restrictions.or(\n"
+#~ " Restrictions.eq( \"age\", new Integer(0) ),\n"
+#~ " Restrictions.isNull(\"age\")\n"
+#~ " ) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.in( \"name\", new String[] {
\"Fritz\", \"Izi\", "
+#~ "\"Pk\" } ) )\n"
+#~ " .add( Restrictions.disjunction()\n"
+#~ " .add( Restrictions.isNull(\"age\") )\n"
+#~ " .add( Restrictions.eq(\"age\", new Integer(0) ) )\n"
+#~ " .add( Restrictions.eq(\"age\", new Integer(1) ) )\n"
+#~ " .add( Restrictions.eq(\"age\", new Integer(2) ) )\n"
+#~ " ) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.in( \"name\", new String[] {
\"Fritz\", \"Izi\", "
+#~ "\"Pk\" } ) )\n"
+#~ " .add( Restrictions.disjunction()\n"
+#~ " .add( Restrictions.isNull(\"age\") )\n"
+#~ " .add( Restrictions.eq(\"age\", new Integer(0) ) )\n"
+#~ " .add( Restrictions.eq(\"age\", new Integer(1) ) )\n"
+#~ " .add( Restrictions.eq(\"age\", new Integer(2) ) )\n"
+#~ " ) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.sqlRestriction(\"lower({alias}.name) like
lower(?)"
+#~ "\", \"Fritz%\", Hibernate.STRING) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.sqlRestriction(\"lower({alias}.name) like
lower(?)"
+#~ "\", \"Fritz%\", \n"
+#~ " Hibernate.STRING) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "Property age = Property.forName(\"age\");\n"
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.disjunction()\n"
+#~ " .add( age.isNull() )\n"
+#~ " .add( age.eq( new Integer(0) ) )\n"
+#~ " .add( age.eq( new Integer(1) ) )\n"
+#~ " .add( age.eq( new Integer(2) ) )\n"
+#~ " ) )\n"
+#~ " .add( Property.forName(\"name\").in( new String[] {
\"Fritz\", \"Izi"
+#~ "\", \"Pk\" } ) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "Property age = Property.forName(\"age\");\n"
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.disjunction()\n"
+#~ " .add( age.isNull() )\n"
+#~ " .add( age.eq( new Integer(0) ) )\n"
+#~ " .add( age.eq( new Integer(1) ) )\n"
+#~ " .add( age.eq( new Integer(2) ) )\n"
+#~ " ) )\n"
+#~ " .add( Property.forName(\"name\").in( new String[] {
\"Fritz\", \"Izi"
+#~ "\", \"Pk\" } ) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.like(\"name\", \"F%\")\n"
+#~ " .addOrder( Order.asc(\"name\") )\n"
+#~ " .addOrder( Order.desc(\"age\") )\n"
+#~ " .setMaxResults(50)\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.like(\"name\",
\"F%\")\n"
+#~ " .addOrder( Order.asc(\"name\") )\n"
+#~ " .addOrder( Order.desc(\"age\") )\n"
+#~ " .setMaxResults(50)\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Property.forName(\"name\").like(\"F%\") )\n"
+#~ " .addOrder( Property.forName(\"name\").asc() )\n"
+#~ " .addOrder( Property.forName(\"age\").desc() )\n"
+#~ " .setMaxResults(50)\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Property.forName(\"name\").like(\"F%\")
)\n"
+#~ " .addOrder( Property.forName(\"name\").asc() )\n"
+#~ " .addOrder( Property.forName(\"age\").desc() )\n"
+#~ " .setMaxResults(50)\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.like(\"name\", \"F%\") )\n"
+#~ " .createCriteria(\"kittens\")\n"
+#~ " .add( Restrictions.like(\"name\", \"F%\") )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.like(\"name\", \"F%\")
)\n"
+#~ " .createCriteria(\"kittens\")\n"
+#~ " .add( Restrictions.like(\"name\", \"F%\")
)\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
+#~ " .createAlias(\"kittens\", \"kt\")\n"
+#~ " .createAlias(\"mate\", \"mt\")\n"
+#~ " .add( Restrictions.eqProperty(\"kt.name\", \"mt.name\")
)\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .createAlias(\"kittens\", \"kt\")\n"
+#~ " .createAlias(\"mate\", \"mt\")\n"
+#~ " .add( Restrictions.eqProperty(\"kt.name\", \"mt.name\")
)\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
+#~ " .createCriteria(\"kittens\", \"kt\")\n"
+#~ " .add( Restrictions.eq(\"name\", \"F%\") )\n"
+#~ " .setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP)\n"
+#~ " .list();\n"
+#~ "Iterator iter = cats.iterator();\n"
+#~ "while ( iter.hasNext() ) {\n"
+#~ " Map map = (Map) iter.next();\n"
+#~ " Cat cat = (Cat) map.get(Criteria.ROOT_ALIAS);\n"
+#~ " Cat kitten = (Cat) map.get(\"kt\");\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .createCriteria(\"kittens\", \"kt\")\n"
+#~ " .add( Restrictions.eq(\"name\", \"F%\")
)\n"
+#~ " .setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP)\n"
+#~ " .list();\n"
+#~ "Iterator iter = cats.iterator();\n"
+#~ "while ( iter.hasNext() ) {\n"
+#~ " Map map = (Map) iter.next();\n"
+#~ " Cat cat = (Cat) map.get(Criteria.ROOT_ALIAS);\n"
+#~ " Cat kitten = (Cat) map.get(\"kt\");\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.like(\"name\", \"Fritz%\") )\n"
+#~ " .setFetchMode(\"mate\", FetchMode.EAGER)\n"
+#~ " .setFetchMode(\"kittens\", FetchMode.EAGER)\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List cats = sess.createCriteria(Cat.class)\n"
+#~ " .add( Restrictions.like(\"name\", \"Fritz%\")
)\n"
+#~ " .setFetchMode(\"mate\", FetchMode.EAGER)\n"
+#~ " .setFetchMode(\"kittens\", FetchMode.EAGER)\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Cat cat = new Cat();\n"
+#~ "cat.setSex('F');\n"
+#~ "cat.setColor(Color.BLACK);\n"
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .add( Example.create(cat) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "Cat cat = new Cat();\n"
+#~ "cat.setSex('F');\n"
+#~ "cat.setColor(Color.BLACK);\n"
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .add( Example.create(cat) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Example example = Example.create(cat)\n"
+#~ " .excludeZeroes() //exclude zero valued properties\n"
+#~ " .excludeProperty(\"color\") //exclude the property named
\"color\"\n"
+#~ " .ignoreCase() //perform case insensitive string "
+#~ "comparisons\n"
+#~ " .enableLike(); //use like for string comparisons\n"
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .add(example)\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "Example example = Example.create(cat)\n"
+#~ " .excludeZeroes() //exclude zero valued properties\n"
+#~ " .excludeProperty(\"color\") //exclude the property named
\"color\"\n"
+#~ " .ignoreCase() //perform case insensitive string "
+#~ "comparisons\n"
+#~ " .enableLike(); //use like for string comparisons\n"
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .add(example)\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List results = session.createCriteria(Cat.class)\n"
+#~ " .add( Example.create(cat) )\n"
+#~ " .createCriteria(\"mate\")\n"
+#~ " .add( Example.create( cat.getMate() ) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .add( Example.create(cat) )\n"
+#~ " .createCriteria(\"mate\")\n"
+#~ " .add( Example.create( cat.getMate() ) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Projections.rowCount() )\n"
+#~ " .add( Restrictions.eq(\"color\", Color.BLACK) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Projections.rowCount() )\n"
+#~ " .add( Restrictions.eq(\"color\", Color.BLACK) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Projections.projectionList()\n"
+#~ " .add( Projections.rowCount() )\n"
+#~ " .add( Projections.avg(\"weight\") )\n"
+#~ " .add( Projections.max(\"weight\") )\n"
+#~ " .add( Projections.groupProperty(\"color\") )\n"
+#~ " )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Projections.projectionList()\n"
+#~ " .add( Projections.rowCount() )\n"
+#~ " .add( Projections.avg(\"weight\") )\n"
+#~ " .add( Projections.max(\"weight\") )\n"
+#~ " .add( Projections.groupProperty(\"color\") )\n"
+#~ " )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Projections.alias(
Projections.groupProperty(\"color"
+#~ "\"), \"colr\" ) )\n"
+#~ " .addOrder( Order.asc(\"colr\") )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Projections.alias(
Projections.groupProperty(\"color"
+#~ "\"), \"colr\" ) )\n"
+#~ " .addOrder( Order.asc(\"colr\") )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection(
Projections.groupProperty(\"color\").as(\"colr\") )\n"
+#~ " .addOrder( Order.asc(\"colr\") )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection(
Projections.groupProperty(\"color\").as(\"colr\") )\n"
+#~ " .addOrder( Order.asc(\"colr\") )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Projections.projectionList()\n"
+#~ " .add( Projections.rowCount(), \"catCountByColor\" )\n"
+#~ " .add( Projections.avg(\"weight\"), \"avgWeight\"
)\n"
+#~ " .add( Projections.max(\"weight\"), \"maxWeight\"
)\n"
+#~ " .add( Projections.groupProperty(\"color\"),
\"color\" )\n"
+#~ " )\n"
+#~ " .addOrder( Order.desc(\"catCountByColor\") )\n"
+#~ " .addOrder( Order.desc(\"avgWeight\") )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Projections.projectionList()\n"
+#~ " .add( Projections.rowCount(), \"catCountByColor\" )\n"
+#~ " .add( Projections.avg(\"weight\"), \"avgWeight\"
)\n"
+#~ " .add( Projections.max(\"weight\"), \"maxWeight\"
)\n"
+#~ " .add( Projections.groupProperty(\"color\"),
\"color\" )\n"
+#~ " )\n"
+#~ " .addOrder( Order.desc(\"catCountByColor\") )\n"
+#~ " .addOrder( Order.desc(\"avgWeight\") )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List results = session.createCriteria(Domestic.class,
\"cat\")\n"
+#~ " .createAlias(\"kittens\", \"kit\")\n"
+#~ " .setProjection( Projections.projectionList()\n"
+#~ " .add( Projections.property(\"cat.name\"),
\"catName\" )\n"
+#~ " .add( Projections.property(\"kit.name\"),
\"kitName\" )\n"
+#~ " )\n"
+#~ " .addOrder( Order.asc(\"catName\") )\n"
+#~ " .addOrder( Order.asc(\"kitName\") )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List results = session.createCriteria(Domestic.class,
\"cat\")\n"
+#~ " .createAlias(\"kittens\", \"kit\")\n"
+#~ " .setProjection( Projections.projectionList()\n"
+#~ " .add( Projections.property(\"cat.name\"),
\"catName\" )\n"
+#~ " .add( Projections.property(\"kit.name\"),
\"kitName\" )\n"
+#~ " )\n"
+#~ " .addOrder( Order.asc(\"catName\") )\n"
+#~ " .addOrder( Order.asc(\"kitName\") )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Property.forName(\"name\") )\n"
+#~ " .add( Property.forName(\"color\").eq(Color.BLACK) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Property.forName(\"name\") )\n"
+#~ " .add( Property.forName(\"color\").eq(Color.BLACK) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Projections.projectionList()\n"
+#~ " .add( Projections.rowCount().as(\"catCountByColor\")
)\n"
+#~ " .add(
Property.forName(\"weight\").avg().as(\"avgWeight\") )\n"
+#~ " .add(
Property.forName(\"weight\").max().as(\"maxWeight\") )\n"
+#~ " .add(
Property.forName(\"color\").group().as(\"color\" )\n"
+#~ " )\n"
+#~ " .addOrder( Order.desc(\"catCountByColor\") )\n"
+#~ " .addOrder( Order.desc(\"avgWeight\") )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List results = session.createCriteria(Cat.class)\n"
+#~ " .setProjection( Projections.projectionList()\n"
+#~ " .add( Projections.rowCount().as(\"catCountByColor\")
)\n"
+#~ " .add(
Property.forName(\"weight\").avg().as(\"avgWeight\") )\n"
+#~ " .add(
Property.forName(\"weight\").max().as(\"maxWeight\") )\n"
+#~ " .add(
Property.forName(\"color\").group().as(\"color\" )\n"
+#~ " )\n"
+#~ " .addOrder( Order.desc(\"catCountByColor\") )\n"
+#~ " .addOrder( Order.desc(\"avgWeight\") )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[DetachedCriteria query =
DetachedCriteria.forClass(Cat.class)\n"
+#~ " .add( Property.forName(\"sex\").eq('F') );\n"
+#~ " \n"
+#~ "Session session = ....;\n"
+#~ "Transaction txn = session.beginTransaction();\n"
+#~ "List results = query.getExecutableCriteria(session).setMaxResults(100)."
+#~ "list();\n"
+#~ "txn.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "DetachedCriteria query = DetachedCriteria.forClass(Cat.class)\n"
+#~ " .add( Property.forName(\"sex\").eq('F') );\n"
+#~ " \n"
+#~ "Session session = ....;\n"
+#~ "Transaction txn = session.beginTransaction();\n"
+#~ "List results = query.getExecutableCriteria(session).setMaxResults(100)."
+#~ "list();\n"
+#~ "txn.commit();\n"
+#~ "session.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[DetachedCriteria avgWeight = DetachedCriteria.forClass(Cat."
+#~ "class)\n"
+#~ " .setProjection( Property.forName(\"weight\").avg() );\n"
+#~ "session.createCriteria(Cat.class)\n"
+#~ " .add( Property.forName(\"weight\").gt(avgWeight) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "DetachedCriteria avgWeight = DetachedCriteria.forClass(Cat.class)\n"
+#~ " .setProjection( Property.forName(\"weight\").avg() );\n"
+#~ "session.createCriteria(Cat.class)\n"
+#~ " .add( Property.forName(\"weight).gt(avgWeight) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[DetachedCriteria weights =
DetachedCriteria.forClass(Cat.class)\n"
+#~ " .setProjection( Property.forName(\"weight\") );\n"
+#~ "session.createCriteria(Cat.class)\n"
+#~ " .add( Subqueries.geAll(\"weight\", weights) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "DetachedCriteria weights = DetachedCriteria.forClass(Cat.class)\n"
+#~ " .setProjection( Property.forName(\"weight\") );\n"
+#~ "session.createCriteria(Cat.class)\n"
+#~ " .add( Subqueries.geAll(\"weight\", weights) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[DetachedCriteria avgWeightForSex =
DetachedCriteria.forClass(Cat."
+#~ "class, \"cat2\")\n"
+#~ " .setProjection( Property.forName(\"weight\").avg() )\n"
+#~ " .add(
Property.forName(\"cat2.sex\").eqProperty(\"cat.sex\") );\n"
+#~ "session.createCriteria(Cat.class, \"cat\")\n"
+#~ " .add( Property.forName(\"weight\").gt(avgWeightForSex) )\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "DetachedCriteria avgWeightForSex = DetachedCriteria.forClass(Cat.class, "
+#~ "\"cat2\")\n"
+#~ " .setProjection( Property.forName(\"weight\").avg() )\n"
+#~ " .add(
Property.forName(\"cat2.sex\").eqProperty(\"cat.sex\") );\n"
+#~ "session.createCriteria(Cat.class, \"cat\")\n"
+#~ " .add( Property.forName(\"weight).gt(avgWeightForSex) )\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"User\">\n"
+#~ " <cache usage=\"read-write\"/>\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"increment\"/>\n"
+#~ " </id>\n"
+#~ " <natural-id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " <property name=\"org\"/>\n"
+#~ " </natural-id>\n"
+#~ " <property name=\"password\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"User\">\n"
+#~ " <cache usage=\"read-write\"/>\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"increment\"/>\n"
+#~ " </id>\n"
+#~ " <natural-id>\n"
+#~ " <property name=\"name\"/>\n"
+#~ " <property name=\"org\"/>\n"
+#~ " </natural-id>\n"
+#~ " <property name=\"password\"/>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[session.createCriteria(User.class)\n"
+#~ " .add( Restrictions.naturalId()\n"
+#~ " .set(\"name\", \"gavin\")\n"
+#~ " .set(\"org\", \"hb\") \n"
+#~ " ).setCacheable(true)\n"
+#~ " .uniqueResult();]]>"
+#~ msgstr ""
+#~ "session.createCriteria(User.class)\n"
+#~ " .add( Restrictions.naturalId()\n"
+#~ " .set(\"name\", \"gavin\")\n"
+#~ " .set(\"org\", \"hb\") \n"
+#~ " ).setCacheable(true)\n"
+#~ " .uniqueResult();"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_hql.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_hql.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_hql.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,42 +1,41 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-23T01:43:45\n"
+"PO-Revision-Date: 2010-01-13 17:08+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: query_hql.xml:29
#, no-c-format
msgid "HQL: The Hibernate Query Language"
-msgstr "HQL: The Hibernate Query Language"
+msgstr "HQL: Hibernate クエリ言語"
#. Tag: para
-#: query_hql.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate uses a powerful query language (HQL) that is similar in appearance
"
"to SQL. Compared with SQL, however, HQL is fully object-oriented and "
"understands notions like inheritance, polymorphism and association."
msgstr ""
-"HibernateはSQLに非常によく似た(意図的に似せた)強力な問い合わせ言語を備えてい"
-"ます。 しかしSQLに似た構文に惑わされないでください。HQLは完全にオブジェクト指"
-"向であり、 継承、ポリモーフィズム、関連といった概念を理解します。"
+"Hibernate は SQL に非常によく似た (意図的に似せた) 強力な問い合わせ言語を備え"
+"ています。しかし SQL に似た構文に惑わされないでください。 HQL は完全にオブ"
+"ジェクト指向であり、継承、ポリモーフィズム、関連といった概念を理解します。"
#. Tag: title
-#: query_hql.xml:38
#, no-c-format
msgid "Case Sensitivity"
msgstr "大文字と小文字の区別"
#. Tag: para
-#: query_hql.xml:40
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"With the exception of names of Java classes and properties, queries are
case-"
"insensitive. So <literal>SeLeCT</literal> is the same as
<literal>sELEct</"
@@ -44,260 +43,158 @@
"hibernate.eg.FOO</literal> is not
<literal>org.hibernate.eg.Foo</literal>, "
"and <literal>foo.barSet</literal> is not
<literal>foo.BARSET</literal>."
msgstr ""
-"クエリはJavaのクラス名とプロパティ名を除いて大文字、小文字を区別しません。 "
+"クエリは Java のクラス名とプロパティ名を除いて大文字、小文字を区別しません。"
"従って <literal>SeLeCT</literal> は <literal>sELEct</literal>
と同じで、かつ "
-"<literal>SELECT</literal> とも同じですが
<literal>net.sf.hibernate.eg.FOO</"
-"literal> は <literal>net.sf.hibernate.eg.Foo</literal> とは違い、かつ
"
+"<literal>SELECT</literal> とも同じですが
<literal>org.hibernate.eg.FOO</"
+"literal> は <literal>org.hibernate.eg.Foo</literal> とは違い、かつ "
"<literal>foo.barSet</literal> は
<literal>foo.BARSET</literal> とも違います。"
#. Tag: para
-#: query_hql.xml:51
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This manual uses lowercase HQL keywords. Some users find queries with "
"uppercase keywords more readable, but this convention is unsuitable for "
"queries embedded in Java code."
msgstr ""
-"このマニュアルでは小文字のHQLキーワードを使用します。 大文字のキーワードのク"
-"エリの方が読みやすいと感じるユーザーもいると思います。 ですが、Javaコード内に"
-"埋め込まれたときには見づらいと思います。"
+"このマニュアルでは小文字の HQL キーワードを使用します。大文字のキーワードのク"
+"エリの方が読みやすいと感じるユーザーもいると思います。ですが、 Java コード内"
+"に埋め込まれたときには見づらいと思います。"
#. Tag: title
-#: query_hql.xml:59
#, no-c-format
msgid "The from clause"
-msgstr "from節"
+msgstr "from 節"
#. Tag: para
-#: query_hql.xml:61
#, no-c-format
msgid "The simplest possible Hibernate query is of the form:"
-msgstr "もっとも単純なHibernateクエリは次の形式です。"
+msgstr "もっとも単純な Hibernate クエリは次の形式です:"
-#. Tag: programlisting
-#: query_hql.xml:65
-#, no-c-format
-msgid "<![CDATA[from eg.Cat]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:67
#, fuzzy, no-c-format
msgid ""
"This returns all instances of the class <literal>eg.Cat</literal>. You
do "
"not usually need to qualify the class name, since
<literal>auto-import</"
"literal> is the default. For example:"
msgstr ""
-"これは単純に <literal>eg.Cat</literal> クラスのインスタンスをすべて返しま"
-"す。 必ずしもクラス名を修飾する(クラスにパッケージ名を付ける)必要はありませ"
-"ん。 というのも、<literal>auto-import</literal> がデフォルトになっているから"
-"です。 そのためほとんどの場合、このように書くだけで十分です。"
+"これは単純に <literal>eg.Cat</literal> クラスのインスタンスをすべて返しま"
+"す。必ずしもクラス名を修飾する(クラスにパッケージ名を付ける)必要はありませ"
+"ん。というのも、 <literal>auto-import</literal> がデフォルトになっているから"
+"です。そのためほとんどの場合、このように書くだけで十分です:"
-#. Tag: programlisting
-#: query_hql.xml:73
-#, no-c-format
-msgid "<![CDATA[from Cat]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:75
#, no-c-format
msgid ""
"In order to refer to the <literal>Cat</literal> in other parts of the
query, "
"you will need to assign an <emphasis>alias</emphasis>. For
example:"
msgstr ""
-#. Tag: programlisting
-#: query_hql.xml:81 query_hql.xml:396
-#, no-c-format
-msgid "<![CDATA[from Cat as cat]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:83
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This query assigns the alias <literal>cat</literal> to
<literal>Cat</"
"literal> instances, so you can use that alias later in the query. The "
"<literal>as</literal> keyword is optional. You could also write:"
msgstr ""
"このクエリでは <literal>Cat</literal> インスタンスに
<literal>cat</literal> "
-"という別名を付けています。 そのため、後でこのクエリ内で、この別名を使うことが"
+"という別名を付けています。そのため、後でこのクエリ内で、この別名を使うことが"
"できます。 <literal>as</literal> キーワードはオプションです。つまりこのように"
"書くこともできます:"
-#. Tag: programlisting
-#: query_hql.xml:89
-#, no-c-format
-msgid "<![CDATA[from Cat cat]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:91
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Multiple classes can appear, resulting in a cartesian product or
\"cross\" "
"join."
-msgstr "直積、あるいはクロス結合によって多数のクラスが出現することもあります。"
-
-#. Tag: programlisting
-#: query_hql.xml:95
-#, no-c-format
-msgid "<![CDATA[from Formula, Parameter]]>"
msgstr ""
+"直積、あるいは「クロス」結合によって多数のクラスが出現することもあります。"
-#. Tag: programlisting
-#: query_hql.xml:96
-#, no-c-format
-msgid "<![CDATA[from Formula as form, Parameter as param]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:98
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is good practice to name query aliases using an initial lowercase as this
"
"is consistent with Java naming standards for local variables (e.g. "
"<literal>domesticCat</literal>)."
msgstr ""
-"ローカル変数のJavaのネーミング基準と一致した、 頭文字に小文字を使ったクエリの"
-"別名を付けることはいい習慣です(例えば <literal>domesticCat</literal> )。"
+"ローカル変数の Java のネーミング基準と一致した、頭文字に小文字を使ったクエリ"
+"の別名を付けることはいい習慣です (例えば <literal>domesticCat</literal>)。"
#. Tag: title
-#: query_hql.xml:107
#, no-c-format
msgid "Associations and joins"
msgstr "関連と結合"
#. Tag: para
-#: query_hql.xml:109
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also assign aliases to associated entities or to elements of a "
"collection of values using a <literal>join</literal>. For
example:"
msgstr ""
-"関連するエンティティあるいは値コレクションの要素にも、<literal>結合</"
+"関連するエンティティあるいは値コレクションの要素にも、 <literal>結合</"
"literal> を使って別名を割り当てることが出来ます。"
-#. Tag: programlisting
-#: query_hql.xml:114
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[from Cat as cat\n"
-" inner join cat.mate as mate\n"
-" left outer join cat.kittens as kitten]]>"
-msgstr ""
+msgid "The supported join types are borrowed from ANSI SQL:"
+msgstr "サポートしている結合のタイプは ANSI SQL と同じです。"
-#. Tag: programlisting
-#: query_hql.xml:116
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[from Cat as cat left join cat.mate.kittens as
kittens]]>"
-msgstr ""
+msgid "<literal>inner join</literal>"
+msgstr "<literal>inner join</literal>"
-#. Tag: programlisting
-#: query_hql.xml:118
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[from Formula form full join form.parameter param]]>"
-msgstr ""
+msgid "<literal>left outer join</literal>"
+msgstr "<literal>left outer join</literal>"
#. Tag: para
-#: query_hql.xml:120
-#, fuzzy, no-c-format
-msgid "The supported join types are borrowed from ANSI SQL:"
-msgstr "サポートしている結合のタイプはANSI SQLと同じです。"
-
-#. Tag: literal
-#: query_hql.xml:127
#, no-c-format
-msgid "inner join"
-msgstr "inner join"
+msgid "<literal>right outer join</literal>"
+msgstr "<literal>right outer join</literal>"
-#. Tag: literal
-#: query_hql.xml:132
-#, no-c-format
-msgid "left outer join"
-msgstr "left outer join"
-
-#. Tag: literal
-#: query_hql.xml:137
-#, no-c-format
-msgid "right outer join"
-msgstr "right outer join"
-
#. Tag: para
-#: query_hql.xml:141
#, no-c-format
msgid "<literal>full join</literal> (not usually useful)"
msgstr "<literal>full join</literal> (たいていの場合使いづらい)"
#. Tag: para
-#: query_hql.xml:147
#, no-c-format
msgid ""
"The <literal>inner join</literal>, <literal>left outer
join</literal> and "
"<literal>right outer join</literal> constructs may be
abbreviated."
msgstr ""
-"<literal>inner join</literal>、<literal>left outer
join</literal>、"
-"<literal>right outer join</literal>には省略形を使うこともできます。"
+"<literal>inner join</literal>、 <literal>left outer
join</literal>、 "
+"<literal>right outer join</literal> には省略形を使うこともできます。"
-#. Tag: programlisting
-#: query_hql.xml:152
-#, no-c-format
-msgid ""
-"<![CDATA[from Cat as cat\n"
-" join cat.mate as mate\n"
-" left join cat.kittens as kitten]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:154
#, no-c-format
msgid ""
"You may supply extra join conditions using the HQL
<literal>with</literal> "
"keyword."
msgstr ""
-"HQLの <literal>with</literal> キーワードを使うと、結合条件を付け加えることが"
+"HQL の <literal>with</literal> キーワードを使うと、結合条件を付け加えることが"
"できます。"
-#. Tag: programlisting
-#: query_hql.xml:159
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[from Cat as cat\n"
-" left join cat.kittens as kitten\n"
-" with kitten.bodyWeight > 10.0]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:161
-#, fuzzy, no-c-format
-msgid ""
"A \"fetch\" join allows associations or collections of values to be
"
"initialized along with their parent objects using a single select. This is "
"particularly useful in the case of a collection. It effectively overrides "
"the outer join and lazy declarations of the mapping file for associations "
-"and collections. See <xref linkend=\"performance-fetching\"/> for
more "
+"and collections. See <xref linkend=\"performance-fetching\" /> for
more "
"information."
msgstr ""
-"加えて、「フェッチ」結合は関連や値のコレクションを親オブジェクトと一緒に1度の"
-"select句で初期化します。 これは特にコレクションの場合に有用です。これは実質"
-"上、関連とコレクションに対するマッピング定義ファイルの外部結合とlazy初期化の"
-"定義を上書きすることになります。 <xref linkend=\"performance-fetching\"/> に"
-"より多くの情報があります。"
+"加えて、「フェッチ」結合は関連や値のコレクションを親オブジェクトと一緒に1度"
+"の select 句で初期化します。これは特にコレクションの場合に有用です。これは実"
+"質上、関連とコレクションに対するマッピング定義ファイルの外部結合と lazy 初期"
+"化の定義を上書きすることになります。 <xref linkend=\"performance-fetching\"/"
+"> により多くの情報があります。"
-#. Tag: programlisting
-#: query_hql.xml:169
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[from Cat as cat\n"
-" inner join fetch cat.mate\n"
-" left join fetch cat.kittens]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:171
-#, fuzzy, no-c-format
-msgid ""
"A fetch join does not usually need to assign an alias, because the "
"associated objects should not be used in the <literal>where</literal>
clause "
"(or any other clause). The associated objects are also not returned directly
"
@@ -305,26 +202,15 @@
"The only reason you might need an alias is if you are recursively join "
"fetching a further collection:"
msgstr ""
-"結合によるフェッチは関連するオブジェクトが <literal>where</literal> 節(または"
-"他のどんな節でも) で使われてはならないので、通常別名を割り当てる必要がありま"
-"せん。また関連オブジェクトは問い合わせ結果として 直接返されません。代わりに親"
-"オブジェクトを通してアクセスできます。 コレクションを再帰的に結合フェッチする"
-"場合のみ、別名が必要になります。"
+"結合によるフェッチは関連するオブジェクトが <literal>where</literal> 節 (また"
+"は他のどんな節でも) で使われてはならないので、通常別名を割り当てる必要があり"
+"ません。また関連オブジェクトは問い合わせ結果として直接返されません。代わりに"
+"親オブジェクトを通してアクセスできます。コレクションを再帰的に結合フェッチす"
+"る場合のみ、別名が必要になります:"
-#. Tag: programlisting
-#: query_hql.xml:179
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[from Cat as cat\n"
-" inner join fetch cat.mate\n"
-" left join fetch cat.kittens child\n"
-" left join fetch child.kittens]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:181
-#, fuzzy, no-c-format
-msgid ""
"The <literal>fetch</literal> construct cannot be used in queries called
"
"using <literal>iterate()</literal> (though
<literal>scroll()</literal> can "
"be used). <literal>Fetch</literal> should be used together with "
@@ -342,22 +228,21 @@
msgstr ""
"<literal>fetch</literal> 構文は <literal>iterate()</literal>
を使ったクエリ呼"
"び出しで使用できないことに注意してください (一方で <literal>scroll()</"
-"literal> は使用できます)。 また、これらの操作は結果の行に基づいているため、 "
+"literal> は使用できます)。また、これらの操作は結果の行に基づいているため、 "
"<literal>fetch</literal> は
<literal>setMaxResults()</literal> や "
-"<literal>setFirstResult()</literal> と一緒に使用すべきではありません。 通常"
-"eagerなコレクションフェッチをすると重複が出てしまうため、あなたが期待するよう"
-"な行数にはならないのです。 そしてまた <literal>fetch</literal> は、アドホック"
-"な <literal>with</literal> 条件を 一緒に使うこともできません。 一つのクエリで"
+"<literal>setFirstResult()</literal> と一緒に使用すべきではありません。通常 "
+"eager なコレクションフェッチをすると重複が出てしまうため、あなたが期待するよ"
+"うな行数にはならないのです。そしてまた <literal>fetch</literal> は、アドホッ"
+"クな <literal>with</literal> 条件を一緒に使うこともできません。一つのクエリで"
"複数のコレクションを結合フェッチすることにより直積を作成できるので、この場合"
-"注意してください。 また、複数のコレクションに対する結合フェッチはbagマッピン"
-"グに対して予期せぬ結果をもたらすことがあるので、 この場合のクエリの作成には注"
-"意してください。 最後に <literal>全外部結合によるフェッチ</literal> と "
+"注意してください。また、複数のコレクションに対する結合フェッチは bag マッピン"
+"グに対して予期せぬ結果をもたらすことがあるので、この場合のクエリの作成には注"
+"意してください。最後に <literal>全外部結合によるフェッチ</literal> と "
"<literal>右外部結合によるフェッチ</literal> は有用ではないことに注意してくだ"
"さい。"
#. Tag: para
-#: query_hql.xml:196
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you are using property-level lazy fetching (with bytecode "
"instrumentation), it is possible to force Hibernate to fetch the lazy "
@@ -365,53 +250,35 @@
"properties</literal>."
msgstr ""
"もしプロパティレベルの遅延フェッチを使う場合(内部的にバイトコード処理をする"
-"場合)、 <literal>fetch all properties</literal> を使うことで Hibernateに遅延"
-"プロパティを速やかに(最初のクエリで)フェッチさせることができます。"
+"場合)、 <literal>fetch all properties</literal> を使うことで Hibernate に遅"
+"延プロパティを速やかに(最初のクエリで)フェッチさせることができます。"
-#. Tag: programlisting
-#: query_hql.xml:202
-#, no-c-format
-msgid "<![CDATA[from Document fetch all properties order by name]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:203
-#, no-c-format
-msgid ""
-"<![CDATA[from Document doc fetch all properties where lower(doc.name) like
'%"
-"cats%']]>"
-msgstr ""
-
#. Tag: title
-#: query_hql.xml:208
#, no-c-format
msgid "Forms of join syntax"
msgstr "結合構文の形式"
#. Tag: para
-#: query_hql.xml:210
#, no-c-format
msgid ""
"HQL supports two forms of association joining:
<literal>implicit</literal> "
"and <literal>explicit</literal>."
msgstr ""
-"HQLは2つの関連結合形式をサポートします:<literal>暗黙的</literal> と "
+"HQL は2つの関連結合形式をサポートします: <literal>暗黙的</literal> と "
"<literal>明示的</literal>。"
#. Tag: para
-#: query_hql.xml:214
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The queries shown in the previous section all use the
<literal>explicit</"
"literal> form, that is, where the join keyword is explicitly used in the "
"from clause. This is the recommended form."
msgstr ""
"これまでのセクションでお見せした使い方はすべて <literal>明示的な</literal> 形"
-"式で、 from節で明示的にjoinキーワードを使っています。 この形式をおすすめしま"
-"す。"
+"式で、 from 節で明示的に join キーワードを使っています。この形式をおすすめし"
+"ます。"
#. Tag: para
-#: query_hql.xml:219
#, no-c-format
msgid ""
"The <literal>implicit</literal> form does not use the join keyword.
Instead, "
@@ -419,56 +286,43 @@
"literal> joins can appear in any of the HQL clauses.
<literal>implicit</"
"literal> join result in inner joins in the resulting SQL statement."
msgstr ""
-"<literal>暗黙的</literal> フォームは、joinキーワードを使いません。代わりに、"
-"参照する関連に ドット表記を使います。<literal>暗黙的</literal> 結合は、さまざ"
-"まなHQLに出てきます。 <literal>暗黙的</literal> 結合の結果は、SQLステートメン"
-"トの内部結合結果です。"
+"<literal>暗黙的</literal> フォームは、 join キーワードを使いません。代わり"
+"に、参照する関連にドット表記を使います。 <literal>暗黙的</literal> 結合は、さ"
+"まざまな HQL に出てきます。 <literal>暗黙的</literal> 結合の結果は、 SQL ス"
+"テートメントの内部結合結果です。"
-#. Tag: programlisting
-#: query_hql.xml:226
-#, no-c-format
-msgid "<![CDATA[from Cat as cat where cat.mate.name like
'%s%']]>"
-msgstr ""
-
#. Tag: title
-#: query_hql.xml:230
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Referring to identifier property"
-msgstr "Refering to identifier property"
+msgstr "識別子プロパティの参照"
#. Tag: para
-#: query_hql.xml:232
-#, fuzzy, no-c-format
+#, no-c-format
msgid "There are 2 ways to refer to an entity's identifier property:"
-msgstr ""
-"There are, generally speaking, 2 ways to refer to an entity's identifier
"
-"property:"
+msgstr "エンティティの識別子プロパティは、一般的に2つの方法で参照されます:"
#. Tag: para
-#: query_hql.xml:237
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The special property (lowercase) <literal>id</literal> may be used to
"
"reference the identifier property of an entity <emphasis>provided that the
"
"entity does not define a non-identifier property named id</emphasis>."
msgstr ""
-"The special property (lowercase) <literal>id</literal> may be used to
"
-"reference the identifier property of an entity <emphasis>provided that
"
-"entity does not define a non-identifier property named id</emphasis>."
+"特別なプロパティ (小文字) <literal>id</literal> は、 <emphasis>id と名付けら"
+"れた非識別子プロパティを定義しないエンティティを与えられた</emphasis> エン"
+"ティティの識別子プロパティを参照するのに使用されます。"
#. Tag: para
-#: query_hql.xml:244
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If the entity defines a named identifier property, you can use that property
"
"name."
msgstr ""
-"If the entity defines a named identifier property, you may use that property
"
-"name."
+"もしエンティティが名付けられた識別子プロパティを定義したら、そのプロパティ名"
+"を使用できます。"
#. Tag: para
-#: query_hql.xml:250
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"References to composite identifier properties follow the same naming rules. "
"If the entity has a non-identifier property named id, the composite "
@@ -476,15 +330,13 @@
"the special <literal>id</literal> property can be used to reference the
"
"identifier property."
msgstr ""
-"References to composite identifier properties follow the same naming rules. "
-"If the entity has a non-identifier property named id, the composite "
-"identifier property can only be referenced by its defined named; otherwise, "
-"the special <literal>id</literal> property can be used to rerference
the "
-"identifier property."
+"複合識別子プロパティへの参照は同じ命名ルールに従います。もしエンティティが "
+"id と名付けられた非識別子プロパティを持っていたら、複合識別子プロパティはその"
+"定義された名前で参照することができます。そうでないと、特別な <literal>id</"
+"literal> プロパティは、識別子プロパティを参照するのに使用されます。"
#. Tag: para
-#: query_hql.xml:258
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Please note that, starting in version 3.2.2, this has changed significantly.
"
"In previous versions, <literal>id</literal>
<emphasis>always</emphasis> "
@@ -492,279 +344,146 @@
"ramification of that decision was that non-identifier properties named "
"<literal>id</literal> could never be referenced in Hibernate
queries."
msgstr ""
-"Note: this has changed significantly starting in version 3.2.2. In previous "
-"versions, <literal>id</literal><emphasis>always</emphasis>
referred to the "
-"identifier property no matter what its actual name. A ramification of that "
-"decision was that non-identifier properties named <literal>id</literal>
"
-"could never be referenced in Hibernate queries."
+"注記: これは、バージョン 3.2.2 から大幅に変更しました。前バージョンでは、 "
+"<literal>id</literal> は、その実際の名前に関係なく
<emphasis>常に</emphasis> "
+"識別子プロパティを参照していました。その結果、 <literal>id</literal> と名付け"
+"られた非識別子プロパティは、 Hibernate で決して参照されませんでした。"
#. Tag: title
-#: query_hql.xml:269
#, no-c-format
msgid "The select clause"
-msgstr "Select節"
+msgstr "Select 節"
#. Tag: para
-#: query_hql.xml:271
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>select</literal> clause picks which objects and properties
to "
"return in the query result set. Consider the following:"
msgstr ""
"<literal>select</literal> 節は以下のようにどのオブジェクトと属性をクエリリザ"
-"ルトセットに返すかを選択します。:"
+"ルトセットに返すかを選択します:"
-#. Tag: programlisting
-#: query_hql.xml:276
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select mate\n"
-"from Cat as cat\n"
-" inner join cat.mate as mate]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:278
-#, fuzzy, no-c-format
-msgid ""
"The query will select <literal>mate</literal>s of other
<literal>Cat</"
"literal>s. You can express this query more compactly as:"
msgstr ""
"上記のクエリは他の <literal>Cat</literal> の <literal>mate</literal>
を選択し"
-"ます。 実際には次のように、より簡潔に表現できます。:"
+"ます。実際には次のように、より簡潔に表現できます:"
-#. Tag: programlisting
-#: query_hql.xml:283
-#, no-c-format
-msgid "<![CDATA[select cat.mate from Cat cat]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:285
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Queries can return properties of any value type including properties of "
"component type:"
msgstr ""
"クエリはコンポーネント型のプロパティを含む、あらゆる値型のプロパティも返せま"
-"す。:"
+"す:"
-#. Tag: programlisting
-#: query_hql.xml:289
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select cat.name from DomesticCat cat\n"
-"where cat.name like 'fri%']]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:291
-#, no-c-format
-msgid "<![CDATA[select cust.name.firstName from Customer as cust]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:293
-#, fuzzy, no-c-format
-msgid ""
"Queries can return multiple objects and/or properties as an array of type "
"<literal>Object[]</literal>:"
msgstr ""
-"クエリは複数のオブジェクトと(または)プロパティを <literal>Object[]</literal> "
-"型の配列として返せます。"
+"クエリは複数のオブジェクトと (または) プロパティを <literal>Object[]</"
+"literal> 型の配列として返せます。"
-#. Tag: programlisting
-#: query_hql.xml:298
-#, no-c-format
-msgid ""
-"<![CDATA[select mother, offspr, mate.name\n"
-"from DomesticCat as mother\n"
-" inner join mother.mate as mate\n"
-" left outer join mother.kittens as offspr]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:300
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Or as a <literal>List</literal>:"
msgstr "もしくは <literal>List</literal> として、"
-#. Tag: programlisting
-#: query_hql.xml:304
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select new list(mother, offspr, mate.name)\n"
-"from DomesticCat as mother\n"
-" inner join mother.mate as mate\n"
-" left outer join mother.kittens as offspr]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:306
-#, fuzzy, no-c-format
-msgid ""
"Or - assuming that the class <literal>Family</literal> has an
appropriate "
"constructor - as an actual typesafe Java object:"
msgstr ""
"あるいは <literal>Family</literal> クラスが適切なコンストラクタを持っていると"
"するならば、"
-#. Tag: programlisting
-#: query_hql.xml:310
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select new Family(mother, mate, offspr)\n"
-"from DomesticCat as mother\n"
-" join mother.mate as mate\n"
-" left join mother.kittens as offspr]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:313
-#, fuzzy, no-c-format
-msgid ""
"You can assign aliases to selected expressions using
<literal>as</literal>:"
-msgstr "select節に <literal>as</literal> を使って別名をつけることもできます。"
+msgstr "select 節に <literal>as</literal> を使って別名をつけることもできます。"
-#. Tag: programlisting
-#: query_hql.xml:317
-#, no-c-format
-msgid ""
-"<![CDATA[select max(bodyWeight) as max, min(bodyWeight) as min, count(*) as
"
-"n\n"
-"from Cat cat]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:319
#, no-c-format
msgid ""
"This is most useful when used together with <literal>select new
map</"
"literal>:"
msgstr "<literal>select new map</literal> と一緒に使うときに最も役立ちます:"
-#. Tag: programlisting
-#: query_hql.xml:323
-#, no-c-format
-msgid ""
-"<![CDATA[select new map( max(bodyWeight) as max, min(bodyWeight) as min, "
-"count(*) as n )\n"
-"from Cat cat]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:325
#, no-c-format
msgid ""
"This query returns a <literal>Map</literal> from aliases to selected
values."
-msgstr "このクエリは別名からselectした値へ <literal>Map</literal> を返します。"
+msgstr ""
+"このクエリは別名から select した値へ <literal>Map</literal> を返します。"
#. Tag: title
-#: query_hql.xml:332
#, no-c-format
msgid "Aggregate functions"
msgstr "集約関数"
#. Tag: para
-#: query_hql.xml:334
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"HQL queries can even return the results of aggregate functions on
properties:"
-msgstr "HQLのクエリはプロパティの集約関数の結果も返せます:"
+msgstr "HQL のクエリはプロパティの集約関数の結果も返せます:"
-#. Tag: programlisting
-#: query_hql.xml:338
-#, no-c-format
-msgid ""
-"<![CDATA[select avg(cat.weight), sum(cat.weight), max(cat.weight), count"
-"(cat)\n"
-"from Cat cat]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:349
-#, fuzzy, no-c-format
+#, no-c-format
msgid "The supported aggregate functions are:"
msgstr "サポートしている集約関数は以下のものです。"
-#. Tag: literal
-#: query_hql.xml:356
+#. Tag: para
#, no-c-format
-msgid "avg(...), sum(...), min(...), max(...)"
-msgstr "avg(...), sum(...), min(...), max(...)"
+msgid "<literal>avg(...), sum(...), min(...), max(...)</literal>"
+msgstr "<literal>avg(...), sum(...), min(...), max(...)</literal>"
-#. Tag: literal
-#: query_hql.xml:361
+#. Tag: para
#, no-c-format
-msgid "count(*)"
-msgstr "count(*)"
+msgid "<literal>count(*)</literal>"
+msgstr "<literal>count(*)</literal>"
-#. Tag: literal
-#: query_hql.xml:366
+#. Tag: para
#, no-c-format
-msgid "count(...), count(distinct ...), count(all...)"
-msgstr "count(...), count(distinct ...), count(all...)"
+msgid "<literal>count(...), count(distinct ...),
count(all...)</literal>"
+msgstr "<literal>count(...), count(distinct ...),
count(all...)</literal>"
#. Tag: para
-#: query_hql.xml:371
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can use arithmetic operators, concatenation, and recognized SQL "
"functions in the select clause:"
msgstr ""
-"select節において算術操作、連結と承認されたSQL関数を使うことができます。"
+"select 節において算術操作、連結と承認された SQL 関数を使うことができます:"
-#. Tag: programlisting
-#: query_hql.xml:376
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select cat.weight + sum(kitten.weight)\n"
-"from Cat cat\n"
-" join cat.kittens kitten\n"
-"group by cat.id, cat.weight]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:378
-#, no-c-format
-msgid ""
-"<![CDATA[select firstName||' '||initial||' '||upper(lastName)
from Person]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:380
-#, fuzzy, no-c-format
-msgid ""
"The <literal>distinct</literal> and <literal>all</literal>
keywords can be "
"used and have the same semantics as in SQL."
msgstr ""
-"SQLと同じ意味を持つ <literal>distinct</literal> と
<literal>all</literal> "
+"SQL と同じ意味を持つ <literal>distinct</literal> と
<literal>all</literal> "
"キーワードを使うことができます。"
-#. Tag: programlisting
-#: query_hql.xml:385
-#, no-c-format
-msgid ""
-"<![CDATA[select distinct cat.name from Cat cat\n"
-"\n"
-"select count(distinct cat.name), count(cat) from Cat cat]]>"
-msgstr ""
-
#. Tag: title
-#: query_hql.xml:390
#, no-c-format
msgid "Polymorphic queries"
-msgstr "ポリモーフィックなクエリ"
+msgstr "ポリモーフィズムを使ったクエリ"
#. Tag: para
-#: query_hql.xml:392
#, no-c-format
msgid "A query like:"
msgstr "次のようなクエリ:"
#. Tag: para
-#: query_hql.xml:398
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"returns instances not only of <literal>Cat</literal>, but also of
subclasses "
"like <literal>DomesticCat</literal>. Hibernate queries can name "
@@ -773,141 +492,98 @@
"that extend that class or implement the interface. The following query would
"
"return all persistent objects:"
msgstr ""
-"<literal>Cat</literal>
インスタンスだけではなく、<literal>DomesticCat</"
-"literal> のようなサブクラスも返されます。Hibernateクエリは <emphasis>どんな</"
-"emphasis> Javaクラスやインターフェイスも <literal>from</literal> 節に入れるこ"
-"とができます。 クエリはそのクラスを拡張した、もしくはインターフェイスを実装し"
-"た全ての永続クラスを返します。 次のクエリは永続オブジェクトをすべて返します:"
+"<literal>Cat</literal> インスタンスだけではなく、
<literal>DomesticCat</"
+"literal> のようなサブクラスも返されます。 Hibernate クエリは <emphasis>どんな"
+"</emphasis> Java クラスやインターフェースも <literal>from</literal>
節に入れ"
+"ることができます。クエリはそのクラスを拡張した、もしくはインターフェースを実"
+"装した全ての永続クラスを返します。次のクエリは永続オブジェクトをすべて返しま"
+"す:"
-#. Tag: programlisting
-#: query_hql.xml:406
-#, no-c-format
-msgid "<![CDATA[from java.lang.Object o]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:408
#, no-c-format
msgid ""
"The interface <literal>Named</literal> might be implemented by various
"
"persistent classes:"
msgstr ""
-"<literal>Named</literal> インターフェイスは様々な永続クラスによって実装されま"
+"<literal>Named</literal> インターフェースは様々な永続クラスによって実装されま"
"す。:"
-#. Tag: programlisting
-#: query_hql.xml:413
-#, no-c-format
-msgid "<![CDATA[from Named n, Named m where n.name = m.name]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:415
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"These last two queries will require more than one SQL
<literal>SELECT</"
"literal>. This means that the <literal>order by</literal> clause
does not "
"correctly order the whole result set. It also means you cannot call these "
"queries using <literal>Query.scroll()</literal>."
msgstr ""
-"最後の二つのクエリは、二つ以上のSQL <literal>SELECT</literal> を要求している"
-"ことに注意してください。 このことは <literal>order by</literal> 節がリザルト"
-"セット全体を正確には整列しないことを意味します (さらにそれは、<literal>Query."
+"最後の2つのクエリは、2つ以上の SQL <literal>SELECT</literal> を要求しているこ"
+"とに注意してください。このことは <literal>order by</literal> 節がリザルトセッ"
+"ト全体を正確には整列しないことを意味します (さらにそれは、 <literal>Query."
"scroll()</literal> を使用してこれらのクエリを呼ぶことができないことを意味しま"
"す。)。"
#. Tag: title
-#: query_hql.xml:424
#, no-c-format
msgid "The where clause"
-msgstr "where節"
+msgstr "where 節"
#. Tag: para
-#: query_hql.xml:426
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>where</literal> clause allows you to refine the list of
"
"instances returned. If no alias exists, you can refer to properties by name:"
msgstr ""
"<literal>where</literal> 節は返されるインスタンスのリストを絞ることができま"
-"す。 もし別名がない場合、名前でプロパティを参照します。"
+"す。もし別名がない場合、名前でプロパティを参照します。"
-#. Tag: programlisting
-#: query_hql.xml:431
-#, no-c-format
-msgid "<![CDATA[from Cat where name='Fritz']]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:433
#, no-c-format
msgid "If there is an alias, use a qualified property name:"
-msgstr "もし別名がある場合、修飾名を使ってください。"
+msgstr "もし別名がある場合、修飾名を使ってください:"
-#. Tag: programlisting
-#: query_hql.xml:437
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[from Cat as cat where cat.name='Fritz']]>"
+msgid "This returns instances of <literal>Cat</literal> named
'Fritz'."
msgstr ""
+"名前が 'Fritz' という <literal>Cat</literal> のインスタンスを返します。"
#. Tag: para
-#: query_hql.xml:439
-#, fuzzy, no-c-format
-msgid "This returns instances of <literal>Cat</literal> named
'Fritz'."
-msgstr "名前が'Fritz'という <literal>Cat</literal>
のインスタンスを返します。"
+#, no-c-format
+msgid "The following query:"
+msgstr ""
#. Tag: para
-#: query_hql.xml:443
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
-"The following query: <programlisting><![CDATA[select foo\n"
-"from Foo foo, Bar bar\n"
-"where foo.startDate = bar.date]]></programlisting> returns all instances
of "
-"<literal>Foo</literal> with an instance of
<literal>bar</literal> with a "
-"<literal>date</literal> property equal to the
<literal>startDate</literal> "
-"property of the <literal>Foo</literal>. Compound path expressions make
the "
-"<literal>where</literal> clause extremely powerful. Consider the
following:"
+"returns all instances of <literal>Foo</literal> with an instance of
"
+"<literal>bar</literal> with a <literal>date</literal>
property equal to the "
+"<literal>startDate</literal> property of the
<literal>Foo</literal>. "
+"Compound path expressions make the <literal>where</literal> clause
extremely "
+"powerful. Consider the following:"
msgstr ""
-"上のHQLは、<literal>Foo</literal> の
<literal>startDate</literal> プロパティ"
-"と等しい <literal>date</literal> プロパティを持った
<literal>bar</literal> イ"
-"ンスタンスが存在する、 すべての <literal>Foo</literal> インスタンスを返しま"
-"す。 コンパウンドパス式(例えば「cat.mate.name」)は <literal>where</"
-"literal> 節を非常に強力にします。注目:"
+"上の HQL は、 <literal>Foo</literal> の
<literal>startDate</literal> プロパ"
+"ティと等しい <literal>date</literal> プロパティを持った <literal>bar</"
+"literal> インスタンスが存在する、すべての <literal>Foo</literal> インスタンス"
+"を返します。コンパウンドパス式は <literal>where</literal> 節を非常に強力にし"
+"ます。注目:"
-#. Tag: programlisting
-#: query_hql.xml:454
-#, no-c-format
-msgid "<![CDATA[from Cat cat where cat.mate.name is not null]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:456
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This query translates to an SQL query with a table (inner) join. For
example:"
msgstr ""
-"このクエリはテーブル結合(内部結合)を持つSQLクエリに変換されます。 その代わ"
+"このクエリはテーブル結合(内部結合)を持つ SQL クエリに変換されます。その代わ"
"りに以下のように書くと、"
-#. Tag: programlisting
-#: query_hql.xml:461
-#, no-c-format
-msgid ""
-"<![CDATA[from Foo foo\n"
-"where foo.bar.baz.customer.address.city is not null]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:463
-#, fuzzy, no-c-format
+#, no-c-format
msgid "would result in a query that would require four table joins in SQL."
msgstr ""
-"もし上のクエリを記述したらクエリ内に4つのテーブル結合を必要とするSQLクエリに"
-"変換されます。"
+"もし上のクエリを記述したらクエリ内に4つのテーブル結合を必要とする SQL クエリ"
+"に変換されます。"
#. Tag: para
-#: query_hql.xml:467
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>=</literal> operator can be used to compare not only
"
"properties, but also instances:"
@@ -915,51 +591,24 @@
"<literal>=</literal> 演算子は以下のように、プロパティだけでなくインスタンスを"
"比較するためにも使われます。:"
-#. Tag: programlisting
-#: query_hql.xml:472
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[from Cat cat, Cat rival where cat.mate = rival.mate]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:474
-#, no-c-format
msgid ""
-"<![CDATA[select cat, mate\n"
-"from Cat cat, Cat mate\n"
-"where cat.mate = mate]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:476
-#, fuzzy, no-c-format
-msgid ""
"The special property (lowercase) <literal>id</literal> can be used to
"
"reference the unique identifier of an object. See <xref
linkend=\"queryhql-"
-"identifier-property\"/> for more information."
+"identifier-property\" /> for more information."
msgstr ""
-"<literal>id</literal> (小文字)は特別なプロパティであり、 オブジェクトのユニー"
-"クな識別子を参照するために使用できます。(さらに、そのプロパティ名を使用できま"
-"す。)"
+"<literal>id</literal> (小文字) は特別なプロパティであり、オブジェクトのユニー"
+"クな識別子を参照するために使用できます。詳細については <xref linkend="
+"\"queryhql-identifier-property\"/> を参照ください。"
-#. Tag: programlisting
-#: query_hql.xml:482
-#, no-c-format
-msgid ""
-"<![CDATA[from Cat as cat where cat.id = 123\n"
-"\n"
-"from Cat as cat where cat.mate.id = 69]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:484
-#, fuzzy, no-c-format
+#, no-c-format
msgid "The second query is efficient and does not require a table join."
-msgstr "2番目のクエリは効率的です。テーブル結合が必要ありません!"
+msgstr "2番目のクエリは効率的です。テーブル結合が必要ありません。"
#. Tag: para
-#: query_hql.xml:488
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Properties of composite identifiers can also be used. Consider the following
"
"example where <literal>Person</literal> has composite identifiers
consisting "
@@ -967,151 +616,105 @@
msgstr ""
"また複合識別子のプロパティも使用できます。ここで <literal>Person</literal> "
"が <literal>country</literal> と
<literal>medicareNumber</literal> からなる複"
-"合識別子を持つと仮定します。"
+"合識別子を持つと仮定します。識別子プロパティ参照についての詳細は、前回と同様"
+"に <xref linkend=\"queryhql-identifier-property\"/> を参照ください。"
-#. Tag: programlisting
-#: query_hql.xml:494
-#, no-c-format
-msgid ""
-"<![CDATA[from bank.Person person\n"
-"where person.id.country = 'AU'\n"
-" and person.id.medicareNumber = 123456]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:496
-#, no-c-format
-msgid ""
-"<![CDATA[from bank.Account account\n"
-"where account.owner.id.country = 'AU'\n"
-" and account.owner.id.medicareNumber = 123456]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:498
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Once again, the second query does not require a table join."
-msgstr "もう一度言いますが、2番目のクエリにはテーブル結合が必要ありません。"
+msgstr "繰り返しますが、2番目のクエリにはテーブル結合が必要ありません。"
#. Tag: para
-#: query_hql.xml:502
#, no-c-format
msgid ""
-"See <xref linkend=\"queryhql-identifier-property\"/> for more
information "
+"See <xref linkend=\"queryhql-identifier-property\" /> for more
information "
"regarding referencing identifier properties)"
msgstr ""
#. Tag: para
-#: query_hql.xml:507
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The special property <literal>class</literal> accesses the
discriminator "
"value of an instance in the case of polymorphic persistence. A Java class "
"name embedded in the where clause will be translated to its discriminator "
"value."
msgstr ""
-"同様に <literal>class</literal> は特別なプロパティであり、 ポリモーフィックな"
-"永続化におけるインスタンスのdiscriminator値にアクセスします。 where節に埋め込"
-"まれたJavaのクラス名はそのdiscriminator値に変換されます。"
+"同様に <literal>class</literal> は特別なプロパティであり、ポリモーフィックな"
+"永続化におけるインスタンスの discriminator 値にアクセスします。 where 節に埋"
+"め込まれた Java のクラス名はその discriminator 値に変換されます。"
-#. Tag: programlisting
-#: query_hql.xml:513
-#, no-c-format
-msgid "<![CDATA[from Cat cat where cat.class = DomesticCat]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:515
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also use components or composite user types, or properties of said "
-"component types. See <xref linkend=\"queryhql-components\"/> for
more "
+"component types. See <xref linkend=\"queryhql-components\" /> for
more "
"information."
msgstr ""
-"またコンポーネントや複合ユーザ型(またそのコンポーネントのコンポーネントなど)"
-"のプロパティも指定できます。 しかし決して(コンポーネントのプロパティではな"
-"く)コンポーネント型のプロパティで終了するパス式を使わないでください。 例えば"
-"もし <literal>store.owner</literal> が
<literal>address</literal> コンポーネ"
-"ントを持つエンティティならば以下のような結果となります。"
+"またコンポーネントや複合ユーザー型、又はそのコンポーネントのプロパティも使用"
+"できます。詳細については、 <xref linkend=\"queryhql-components\"/> を参照下さ"
+"い。"
#. Tag: para
-#: query_hql.xml:520
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An \"any\" type has the special properties
<literal>id</literal> and "
"<literal>class</literal> that allows you to express a join in the
following "
"way (where <literal>AuditLog.item</literal> is a property mapped with
"
"<literal><any></literal>):"
msgstr ""
-"\"any\"型は特別なプロパティである <literal>id</literal> と
<literal>class</"
-"literal> を持ち、 以下の方法で結合を表現することを可能にします"
+"\"any\" 型は特別なプロパティである <literal>id</literal> と
<literal>class</"
+"literal> を持ち、以下の方法で結合を表現することを可能にします "
"(<literal>AuditLog.item</literal> は
<literal><any></literal> でマッピ"
"ングされたプロパティです)。"
-#. Tag: programlisting
-#: query_hql.xml:526
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[from AuditLog log, Payment payment\n"
-"where log.item.class = 'Payment' and log.item.id = payment.id]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:528
-#, fuzzy, no-c-format
-msgid ""
"The <literal>log.item.class</literal> and
<literal>payment.class</literal> "
"would refer to the values of completely different database columns in the "
"above query."
msgstr ""
-"<literal>log.item.class</literal> と
<literal>payment.class</literal> が 上記"
+"<literal>log.item.class</literal> と
<literal>payment.class</literal> が上記"
"のクエリ中で全く異なるデータベースカラムの値を参照するということに注意してく"
"ださい。"
#. Tag: title
-#: query_hql.xml:536
#, no-c-format
msgid "Expressions"
msgstr "Expressions 式"
#. Tag: para
-#: query_hql.xml:538
#, fuzzy, no-c-format
msgid ""
"Expressions used in the <literal>where</literal> clause include the
"
"following:"
msgstr ""
-"SQLの <literal>where</literal> 節で記述することが出来る式のほとんどをHQLでも"
-"記述できます。:"
+"SQL の <literal>where</literal> 節で記述することが出来る式のほとんどを HQL で"
+"も記述できます:"
#. Tag: para
-#: query_hql.xml:545
-#, fuzzy, no-c-format
+#, no-c-format
msgid "mathematical operators: <literal>+, -, *, /</literal>"
msgstr "算術演算子:<literal>+, -, *, /</literal>"
#. Tag: para
-#: query_hql.xml:550
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"binary comparison operators: <literal>=, >=, <=,
<>, !=, like</"
"literal>"
msgstr "2項比較演算子:<literal>=, >=, <=, <>, !=,
like</literal>"
#. Tag: para
-#: query_hql.xml:555
#, no-c-format
msgid "logical operations <literal>and, or, not</literal>"
msgstr "論理演算子:<literal>and, or, not</literal>"
#. Tag: para
-#: query_hql.xml:560
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Parentheses <literal>( )</literal> that indicates grouping"
msgstr "グループ分けを表す括弧:<literal>( )</literal>"
#. Tag: para
-#: query_hql.xml:565
#, no-c-format
msgid ""
"<literal>in</literal>, <literal>not in</literal>,
<literal>between</"
@@ -1125,18 +728,16 @@
"<literal>member of</literal> and <literal>not member
of</literal>"
#. Tag: para
-#: query_hql.xml:578
#, no-c-format
msgid ""
"\"Simple\" case, <literal>case ... when ... then ... else ...
end</literal>, "
"and \"searched\" case, <literal>case when ... then ... else ...
end</literal>"
msgstr ""
-"\"シンプル\"なcase <literal>case ... when ... then ... else ...
end</"
-"literal>、 \"探索的\"なcase <literal>case when ... then ... else ...
end</"
+"\"シンプル\"な case <literal>case ... when ... then ... else ...
end</"
+"literal>、 \"探索的\"な case <literal>case when ... then ... else ...
end</"
"literal>"
#. Tag: para
-#: query_hql.xml:584
#, no-c-format
msgid ""
"string concatenation <literal>...||...</literal> or
<literal>concat(...,...)"
@@ -1146,8 +747,7 @@
"</literal>"
#. Tag: para
-#: query_hql.xml:589
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>current_date()</literal>,
<literal>current_time()</literal>, and "
"<literal>current_timestamp()</literal>"
@@ -1156,8 +756,7 @@
"<literal>current_timestamp()</literal>"
#. Tag: para
-#: query_hql.xml:595
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>second(...)</literal>,
<literal>minute(...)</literal>, <literal>hour"
"(...)</literal>, <literal>day(...)</literal>,
<literal>month(...)</literal>, "
@@ -1168,32 +767,28 @@
"<literal>year(...)</literal>,"
#. Tag: para
-#: query_hql.xml:602
#, no-c-format
msgid ""
"Any function or operator defined by EJB-QL 3.0: <literal>substring(),
trim"
"(), lower(), upper(), length(), locate(), abs(), sqrt(), bit_length(), mod()"
"</literal>"
msgstr ""
-"EJB-QL 3.0で定義されている関数や演算子: <literal>substring(), trim(), lower"
-"(), upper(), length(), locate(), abs(), sqrt(), bit_length()</literal>"
+"EJB-QL 3.0 で定義されている関数や演算子: <literal>substring(), trim(), lower"
+"(), upper(), length(), locate(), abs(), sqrt(), bit_length(),
mod()</literal>"
#. Tag: para
-#: query_hql.xml:608
#, no-c-format
msgid "<literal>coalesce()</literal> and
<literal>nullif()</literal>"
msgstr "<literal>coalesce()</literal> と
<literal>nullif()</literal>"
#. Tag: para
-#: query_hql.xml:613
#, no-c-format
msgid ""
"<literal>str()</literal> for converting numeric or temporal values to a
"
"readable string"
-msgstr "数字や時間の値をStringにコンバートする <literal>str()</literal>)"
+msgstr "数字や時間の値を String にコンバートする <literal>str()</literal>"
#. Tag: para
-#: query_hql.xml:619
#, no-c-format
msgid ""
"<literal>cast(... as ...)</literal>, where the second argument is the
name "
@@ -1201,24 +796,22 @@
"<literal>cast()</literal> and <literal>extract()</literal>
is supported by "
"the underlying database"
msgstr ""
-"2番目の引数がHibernate型の名前である <literal>cast(... as ...)</literal> と "
-"<literal>extract(... from ...)</literal>。 ただし使用するデータベースがANSI "
-"<literal>cast()</literal> と <literal>extract()</literal>
をサポートする場合"
-"に限ります。"
+"2番目の引数が Hibernate 型の名前である <literal>cast(... as ...)</literal> "
+"と <literal>extract(... from ...)</literal>。ただし使用するデータベースが "
+"ANSI <literal>cast()</literal> と
<literal>extract()</literal> をサポートする"
+"場合に限ります。"
#. Tag: para
-#: query_hql.xml:627
#, no-c-format
msgid ""
"the HQL <literal>index()</literal> function, that applies to aliases of
a "
"joined indexed collection"
msgstr ""
-"結合したインデックス付きのコレクションの別名に適用されるHQLの <literal>index"
-"()</literal> 関数。"
+"結合したインデックス付きのコレクションの別名に適用される HQL の "
+"<literal>index()</literal> 関数。"
#. Tag: para
-#: query_hql.xml:633
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"HQL functions that take collection-valued path expressions: <literal>size(),
"
"minelement(), maxelement(), minindex(), maxindex()</literal>, along with the
"
@@ -1226,33 +819,30 @@
"functions that can be quantified using <literal>some, all, exists, any,
in</"
"literal>."
msgstr ""
-"コレクション値のパス式を取るHQL関数: <literal>size(), minelement(), "
+"コレクション値のパス式を取る HQL 関数: <literal>size(), minelement(), "
"maxelement(), minindex(), maxindex()</literal> 。 <literal>some, all,
"
"exists, any, in</literal> を使って修飾することができる特別な "
"<literal>elements()</literal> と <literal>indices</literal>
関数と一緒に使い"
"ます。"
#. Tag: para
-#: query_hql.xml:641
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Any database-supported SQL scalar function like
<literal>sign()</literal>, "
"<literal>trunc()</literal>, <literal>rtrim()</literal>, and
<literal>sin()</"
"literal>"
msgstr ""
-"<literal>sign()</literal>, <literal>trunc()</literal>,
<literal>rtrim()</"
-"literal>, <literal>sin()</literal> のようなデータベースがサポートするSQLスカ"
-"ラ関数。"
+"<literal>sign()</literal>、 <literal>trunc()</literal>、
<literal>rtrim()</"
+"literal>、 <literal>sin()</literal> のようなデータベースがサポートする SQL ス"
+"カラ関数。"
#. Tag: para
-#: query_hql.xml:647
#, no-c-format
msgid "JDBC-style positional parameters <literal>?</literal>"
-msgstr "JDBCスタイルの位置パラメータ <literal>?</literal>"
+msgstr "JDBC スタイルの位置パラメータ <literal>?</literal>"
#. Tag: para
-#: query_hql.xml:652
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"named parameters <literal>:name</literal>,
<literal>:start_date</literal>, "
"and <literal>:x1</literal>"
@@ -1261,138 +851,76 @@
"literal>, <literal>:x1</literal>"
#. Tag: para
-#: query_hql.xml:657
#, no-c-format
msgid ""
"SQL literals <literal>'foo'</literal>,
<literal>69</literal>, <literal>6.66E"
"+2</literal>, <literal>'1970-01-01
10:00:01.0'</literal>"
msgstr ""
-"SQLリテラル:<literal>'foo'</literal>,
<literal>69</literal>, <literal>6.66E"
-"+2</literal>, <literal>'1970-01-01
10:00:01.0'</literal>"
+"SQL リテラル: <literal>'foo'</literal>、
<literal>69</literal>、 "
+"<literal>6.66E+2</literal>、 <literal>'1970-01-01
10:00:01.0'</literal>"
#. Tag: para
-#: query_hql.xml:663
#, no-c-format
msgid ""
"Java <literal>public static final</literal> constants
<literal>eg.Color."
"TABBY</literal>"
msgstr ""
-"Javaの <literal>public static final</literal>
定数:<literal>eg.Color.TABBY</"
-"literal>"
+"Java の <literal>public static final</literal> 定数:
<literal>eg.Color."
+"TABBY</literal>"
#. Tag: para
-#: query_hql.xml:669
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>in</literal> and <literal>between</literal> can be
used as follows:"
msgstr ""
"<literal>in</literal> と <literal>between</literal>
は以下のように使用できま"
-"す。:"
+"す:"
-#. Tag: programlisting
-#: query_hql.xml:673
-#, no-c-format
-msgid "<![CDATA[from DomesticCat cat where cat.name between 'A' and
'B']]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:675
-#, no-c-format
-msgid ""
-"<![CDATA[from DomesticCat cat where cat.name in ( 'Foo', 'Bar',
'Baz' )]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:677
-#, fuzzy, no-c-format
+#, no-c-format
msgid "The negated forms can be written as follows:"
msgstr "また、否定形で記述することもできます。"
-#. Tag: programlisting
-#: query_hql.xml:681
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[from DomesticCat cat where cat.name not between 'A' and
'B']]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:683
-#, no-c-format
msgid ""
-"<![CDATA[from DomesticCat cat where cat.name not in ( 'Foo',
'Bar', 'Baz' )]]"
-">"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:685
-#, fuzzy, no-c-format
-msgid ""
"Similarly, <literal>is null</literal> and <literal>is not
null</literal> can "
"be used to test for null values."
msgstr ""
-"同様に <literal>is null</literal> や <literal>is not
null</literal> はnull値"
-"をテストするために使用できます。"
+"同様に <literal>is null</literal> や <literal>is not
null</literal> は null "
+"値をテストするために使用できます。"
#. Tag: para
-#: query_hql.xml:690
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Booleans can be easily used in expressions by declaring HQL query "
"substitutions in Hibernate configuration:"
msgstr ""
-"Hibernate設定ファイルでHQL query substitutionsを定義すれば、boolean値を式の中"
-"で簡単に使用できま。:"
+"Hibernate 設定ファイルで HQL query substitutions を定義すれば、 boolean 値を"
+"式の中で簡単に使用できます:"
-#. Tag: programlisting
-#: query_hql.xml:695
-#, no-c-format
-msgid ""
-"<![CDATA[<property name=\"hibernate.query.substitutions\">true
1, false 0</"
-"property>]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:697
#, no-c-format
msgid ""
"This will replace the keywords <literal>true</literal> and
<literal>false</"
"literal> with the literals <literal>1</literal> and
<literal>0</literal> in "
"the translated SQL from this HQL:"
msgstr ""
-"こうすることで下記のHQLをSQLに変換するときに <literal>true</literal> , "
-"<literal>false</literal> キーワードは <literal>1</literal> ,
<literal>0</"
-"literal> に置き換えられます。:"
+"こうすることで下記の HQL を SQL に変換するときに <literal>true</literal> 、 "
+"<literal>false</literal> キーワードは <literal>1</literal> 、
<literal>0</"
+"literal> に置き換えられます:"
-#. Tag: programlisting
-#: query_hql.xml:702
-#, no-c-format
-msgid "<![CDATA[from Cat cat where cat.alive = true]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:704
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can test the size of a collection with the special property "
"<literal>size</literal> or the special
<literal>size()</literal> function."
msgstr ""
"特別なプロパティ <literal>size</literal>、または特別な関数
<literal>size()</"
-"literal> を使ってコレクションのサイズをテストできます。:"
+"literal> を使ってコレクションのサイズをテストできます:"
-#. Tag: programlisting
-#: query_hql.xml:709
-#, no-c-format
-msgid "<![CDATA[from Cat cat where cat.kittens.size > 0]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:711
-#, no-c-format
-msgid "<![CDATA[from Cat cat where size(cat.kittens) > 0]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:713
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For indexed collections, you can refer to the minimum and maximum indices "
"using <literal>minindex</literal> and
<literal>maxindex</literal> functions. "
@@ -1400,34 +928,14 @@
"of basic type using the <literal>minelement</literal> and "
"<literal>maxelement</literal> functions. For example:"
msgstr ""
-"インデックス付きのコレクションでは、<literal>minindex</literal> と "
+"インデックス付きのコレクションでは、 <literal>minindex</literal> と "
"<literal>maxindex</literal> 関数を使って、インデックスの最小値と最大値を参照"
-"できます。 同様に、<literal>minelement</literal> と
<literal>maxelement</"
-"literal> を使って、 基本型のコレクション要素の最小値と最大値を参照できます。"
+"できます。同様に、 <literal>minelement</literal> と
<literal>maxelement</"
+"literal> を使って、基本型のコレクション要素の最小値と最大値を参照できます。"
-#. Tag: programlisting
-#: query_hql.xml:721
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[from Calendar cal where maxelement(cal.holidays) >
current_date]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:723
-#, no-c-format
-msgid "<![CDATA[from Order order where maxindex(order.items) >
100]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:725
-#, no-c-format
-msgid "<![CDATA[from Order order where minelement(order.items) >
10000]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:727
-#, fuzzy, no-c-format
-msgid ""
"The SQL functions <literal>any, some, all, exists, in</literal> are
"
"supported when passed the element or index set of a collection "
"(<literal>elements</literal> and <literal>indices</literal>
functions) or "
@@ -1435,227 +943,83 @@
msgstr ""
"コレクションの要素やインデックスのセット(<literal>elements</literal> と "
"<literal>indices</literal> 関数)、または副問い合わせ(後述)の結果が受け取れ"
-"るときは、 SQL関数 <literal>any, some, all, exists, in</literal> がサポートさ"
-"れます。"
+"るときは、 SQL 関数 <literal>any, some, all, exists, in</literal> がサポート"
+"されます。"
-#. Tag: programlisting
-#: query_hql.xml:733
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select mother from Cat as mother, Cat as kit\n"
-"where kit in elements(foo.kittens)]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:735
-#, no-c-format
-msgid ""
-"<![CDATA[select p from NameList list, Person p\n"
-"where p.name = some elements(list.names)]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:737
-#, no-c-format
-msgid "<![CDATA[from Cat cat where exists elements(cat.kittens)]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:739
-#, no-c-format
-msgid "<![CDATA[from Player p where 3 > all elements(p.scores)]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:741
-#, no-c-format
-msgid "<![CDATA[from Show show where 'fizard' in
indices(show.acts)]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:743
-#, fuzzy, no-c-format
-msgid ""
"Note that these constructs - <literal>size</literal>,
<literal>elements</"
"literal>, <literal>indices</literal>,
<literal>minindex</literal>, "
"<literal>maxindex</literal>, <literal>minelement</literal>,
"
"<literal>maxelement</literal> - can only be used in the where clause in
"
"Hibernate3."
msgstr ""
-"<literal>size</literal>, <literal>elements</literal>,
<literal>indices</"
-"literal>, <literal>minindex</literal>,
<literal>maxindex</literal>, "
-"<literal>minelement</literal>,
<literal>maxelement</literal> はHibernate3の"
-"where節だけで利用可能であることに注意してください。"
+"<literal>size</literal>、 <literal>elements</literal>、
<literal>indices</"
+"literal>、 <literal>minindex</literal>、
<literal>maxindex</literal>、 "
+"<literal>minelement</literal>、
<literal>maxelement</literal> は Hibernate3 "
+"の where 節だけで利用可能であることに注意してください。"
#. Tag: para
-#: query_hql.xml:750
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Elements of indexed collections (arrays, lists, and maps) can be referred to
"
"by index in a where clause only:"
msgstr ""
-"インデックス付きのコレクション(arrays, lists, maps)の要素は、 インデックス"
-"で参照できます(where節内でのみ)。"
+"インデックス付きのコレクション(arrays, lists, maps)の要素は、インデックスで"
+"参照できます(where節内でのみ):"
-#. Tag: programlisting
-#: query_hql.xml:755
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[from Order order where order.items[0].id = 1234]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:757
-#, no-c-format
msgid ""
-"<![CDATA[select person from Person person, Calendar calendar\n"
-"where calendar.holidays['national day'] = person.birthDay\n"
-" and person.nationality.calendar = calendar]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:759
-#, no-c-format
-msgid ""
-"<![CDATA[select item from Item item, Order order\n"
-"where order.items[ order.deliveredItemIndices[0] ] = item and order.id =
11]]"
-">"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:761
-#, no-c-format
-msgid ""
-"<![CDATA[select item from Item item, Order order\n"
-"where order.items[ maxindex(order.items) ] = item and order.id = 11]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:763
-#, fuzzy, no-c-format
-msgid ""
"The expression inside <literal>[]</literal> can even be an arithmetic
"
"expression:"
msgstr "<literal>[]</literal> 内部の式は、算術式でも構いません。"
-#. Tag: programlisting
-#: query_hql.xml:767
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select item from Item item, Order order\n"
-"where order.items[ size(order.items) - 1 ] = item]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:769
-#, fuzzy, no-c-format
-msgid ""
"HQL also provides the built-in <literal>index()</literal> function for
"
"elements of a one-to-many association or collection of values."
msgstr ""
-"一対多関連や値のコレクションの要素に対しては、HQLは組み込みの <literal>index"
-"()</literal> 関数も用意しています。"
+"一対多関連や値のコレクションの要素に対しては、 HQL は組み込みの "
+"<literal>index()</literal> 関数も用意しています。"
-#. Tag: programlisting
-#: query_hql.xml:774
-#, no-c-format
-msgid ""
-"<![CDATA[select item, index(item) from Order order\n"
-" join order.items item\n"
-"where index(item) < 5]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:776
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Scalar SQL functions supported by the underlying database can be used:"
msgstr ""
-"ベースとなるデータベースがサポートしているスカラーSQL関数が使用できます"
+"ベースとなるデータベースがサポートしているスカラー SQL 関数が使用できます:"
-#. Tag: programlisting
-#: query_hql.xml:780
-#, no-c-format
-msgid "<![CDATA[from DomesticCat cat where upper(cat.name) like
'FRI%']]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:782
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Consider how much longer and less readable the following query would be in "
"SQL:"
msgstr ""
-"もしまだ全てを理解していないなら、下のクエリをSQLでどれだけ長く、読みづらく出"
-"来るか考えてください。:"
+"もしまだ全てを理解していないなら、下のクエリを SQL でどれだけ長く、読みづらく"
+"出来るか考えてください:"
-#. Tag: programlisting
-#: query_hql.xml:787
-#, no-c-format
-msgid ""
-"<![CDATA[select cust\n"
-"from Product prod,\n"
-" Store store\n"
-" inner join store.customers cust\n"
-"where prod.name = 'widget'\n"
-" and store.location.name in ( 'Melbourne', 'Sydney' )\n"
-" and prod = all elements(cust.currentOrder.lineItems)]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:789
#, no-c-format
msgid "<emphasis>Hint:</emphasis> something like"
msgstr "<emphasis>ヒント:</emphasis> 例えばこのように出来ます。"
-#. Tag: programlisting
-#: query_hql.xml:793
-#, no-c-format
-msgid ""
-"<![CDATA[SELECT cust.name, cust.address, cust.phone, cust.id, cust."
-"current_order\n"
-"FROM customers cust,\n"
-" stores store,\n"
-" locations loc,\n"
-" store_customers sc,\n"
-" product prod\n"
-"WHERE prod.name = 'widget'\n"
-" AND store.loc_id = loc.id\n"
-" AND loc.name IN ( 'Melbourne', 'Sydney' )\n"
-" AND sc.store_id = store.id\n"
-" AND sc.cust_id = cust.id\n"
-" AND prod.id = ALL(\n"
-" SELECT item.prod_id\n"
-" FROM line_items item, orders o\n"
-" WHERE item.order_id = o.id\n"
-" AND cust.current_order = o.id\n"
-" )]]>"
-msgstr ""
-
#. Tag: title
-#: query_hql.xml:798
#, no-c-format
msgid "The order by clause"
-msgstr "order by節"
+msgstr "order by 節"
#. Tag: para
-#: query_hql.xml:800
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The list returned by a query can be ordered by any property of a returned "
"class or components:"
msgstr ""
-"クエリが返すlistは、返されるクラスやコンポーネントの任意の属性によって並べ替"
-"えられます。:"
+"クエリが返す list は、返されるクラスやコンポーネントの任意の属性によって並べ"
+"替えられます:"
-#. Tag: programlisting
-#: query_hql.xml:804
-#, no-c-format
-msgid ""
-"<![CDATA[from DomesticCat cat\n"
-"order by cat.name asc, cat.weight desc, cat.birthdate]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:806
#, no-c-format
msgid ""
"The optional <literal>asc</literal> or
<literal>desc</literal> indicate "
@@ -1665,104 +1029,57 @@
"か降順の整列を示します。"
#. Tag: title
-#: query_hql.xml:813
#, no-c-format
msgid "The group by clause"
-msgstr "group by節"
+msgstr "group by 節"
#. Tag: para
-#: query_hql.xml:815
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A query that returns aggregate values can be grouped by any property of a "
"returned class or components:"
msgstr ""
"集約値を返すクエリは、返されるクラスやコンポーネントの任意のプロパティによっ"
-"てグループ化できます。:"
+"てグループ化できます:"
-#. Tag: programlisting
-#: query_hql.xml:819
-#, no-c-format
-msgid ""
-"<![CDATA[select cat.color, sum(cat.weight), count(cat)\n"
-"from Cat cat\n"
-"group by cat.color]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:821
-#, no-c-format
-msgid ""
-"<![CDATA[select foo.id, avg(name), max(name)\n"
-"from Foo foo join foo.names name\n"
-"group by foo.id]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:823
#, no-c-format
msgid "A <literal>having</literal> clause is also allowed."
msgstr "<literal>having</literal> 節も使えます。"
-#. Tag: programlisting
-#: query_hql.xml:827
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select cat.color, sum(cat.weight), count(cat)\n"
-"from Cat cat\n"
-"group by cat.color\n"
-"having cat.color in (eg.Color.TABBY, eg.Color.BLACK)]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:829
-#, fuzzy, no-c-format
-msgid ""
"SQL functions and aggregate functions are allowed in the
<literal>having</"
"literal> and <literal>order by</literal> clauses if they are
supported by "
"the underlying database (i.e., not in MySQL)."
msgstr ""
"もし使用するデータベースがサポートしているなら、 <literal>having</literal> "
-"と <literal>order by</literal> 節でSQL関数と集約関数が使えます (例えばMySQL"
-"にはありません)。"
+"と <literal>order by</literal> 節で SQL 関数と集約関数が使えます(例えば "
+"MySQL にはありません)。"
-#. Tag: programlisting
-#: query_hql.xml:835
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select cat\n"
-"from Cat cat\n"
-" join cat.kittens kitten\n"
-"group by cat.id, cat.name, cat.other, cat.properties\n"
-"having avg(kitten.weight) > 100\n"
-"order by count(kitten) asc, sum(kitten.weight) desc]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:837
-#, fuzzy, no-c-format
-msgid ""
"Neither the <literal>group by</literal> clause nor the
<literal>order by</"
"literal> clause can contain arithmetic expressions. Hibernate also does not
"
"currently expand a grouped entity, so you cannot write <literal>group by
"
"cat</literal> if all properties of <literal>cat</literal> are
non-"
"aggregated. You have to list all non-aggregated properties explicitly."
msgstr ""
-"Note that neither the <literal>group by</literal> clause nor the
"
-"<literal>order by</literal> clause may contain arithmetic expressions.
Also "
-"note that Hibernate currently does not expand a grouped entity, so you can't
"
-"write <literal>group by cat</literal> if all properties of
<literal>cat</"
-"literal> are non-aggregated. You have to list all non-aggregated properties
"
-"explicitly."
+"<literal>group by</literal> 節や <literal>order by</literal>
節に算術式を含む"
+"ことができないことに注意してください。また、 Hibernate は今のところグループ"
+"エンティティを拡張しないことにも注意してください。したがって、もし "
+"<literal>cat</literal> の全てのプロパティが非集合体の場合、 <literal>group "
+"by cat</literal> を書くことはできません。全ての非集合体のプロパティを明示的に"
+"リストする必要があります。"
#. Tag: title
-#: query_hql.xml:849
#, no-c-format
msgid "Subqueries"
msgstr "副問い合わせ"
#. Tag: para
-#: query_hql.xml:851
#, no-c-format
msgid ""
"For databases that support subselects, Hibernate supports subqueries within "
@@ -1770,85 +1087,36 @@
"aggregate function call). Even correlated subqueries (subqueries that refer "
"to an alias in the outer query) are allowed."
msgstr ""
-"サブセレクトをサポートするデータベースのため、Hibernateは副問い合わせをサポー"
-"トしています。 副問い合わせは括弧で囲まなければなりません(SQLの集約関数呼び"
-"出しによる事が多いです)。 関連副問い合わせ(外部クエリ中の別名を参照する副問"
-"い合わせのこと)さえ許可されます。"
+"サブセレクトをサポートするデータベースのため、 Hibernate は副問い合わせをサ"
+"ポートしています。副問い合わせは括弧で囲まなければなりません( SQL の集約関数"
+"呼び出しによる事が多いです)。関連副問い合わせ (外部クエリ中の別名を参照する"
+"副問い合わせのこと) さえ許可されます。"
-#. Tag: programlisting
-#: query_hql.xml:857
-#, no-c-format
-msgid ""
-"<![CDATA[from Cat as fatcat\n"
-"where fatcat.weight > (\n"
-" select avg(cat.weight) from DomesticCat cat\n"
-")]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:859
-#, no-c-format
-msgid ""
-"<![CDATA[from DomesticCat as cat\n"
-"where cat.name = some (\n"
-" select name.nickName from Name as name\n"
-")]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:861
-#, no-c-format
-msgid ""
-"<![CDATA[from Cat as cat\n"
-"where not exists (\n"
-" from Cat as mate where mate.mate = cat\n"
-")]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:863
-#, no-c-format
-msgid ""
-"<![CDATA[from DomesticCat as cat\n"
-"where cat.name not in (\n"
-" select name.nickName from Name as name\n"
-")]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:865
-#, no-c-format
-msgid ""
-"<![CDATA[select cat.id, (select max(kit.weight) from cat.kitten kit)\n"
-"from Cat as cat]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:867
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Note that HQL subqueries can occur only in the select or where
clauses."
msgstr ""
-"HQL副問い合わせは、selectまたはwhere節だけで使われることに注意してください。"
+"HQL 副問い合わせは、 select または where 節だけで使われることに注意してくださ"
+"い。"
#. Tag: para
-#: query_hql.xml:871
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Note that subqueries can also utilize <literal>row value
constructor</"
-"literal> syntax. See <xref linkend=\"queryhql-tuple\"/> for more
information."
+"literal> syntax. See <xref linkend=\"queryhql-tuple\" /> for
more "
+"information."
msgstr ""
-"Note that subqueries can also utilize <literal>row value
constructor</"
-"literal> syntax. See <xref linkend=\"queryhql-tuple\"/> for more
details."
+"サブクエリは <literal>row value constructor</literal> 構文も使用できることを"
+"覚えておいてください。詳細については <xref linkend=\"queryhql-tuple\"/> を参"
+"照してください。"
#. Tag: title
-#: query_hql.xml:879
#, no-c-format
msgid "HQL examples"
-msgstr "HQLの例"
+msgstr "HQL の例"
#. Tag: para
-#: query_hql.xml:881
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate queries can be quite powerful and complex. In fact, the power of "
"the query language is one of Hibernate's main strengths. The following "
@@ -1856,14 +1124,13 @@
"projects. Please note that most queries you will write will be much simpler "
"than the following examples."
msgstr ""
-"Hibernateクエリは非常に強力で複雑にできます。実際、クエリ言語の威力は"
-"Hibernateの主要なセールスポイントの一つです。 ここに最近のプロジェクトで使用"
-"したクエリと非常によく似た例があります。 ほとんどのクエリはこれらの例より簡単"
-"に記述できることに注意してください!"
+"Hibernate クエリは非常に強力で複雑にできます。実際、クエリ言語の威力は "
+"Hibernate の主要なセールスポイントの一つです。ここに最近のプロジェクトで使用"
+"したクエリと非常によく似た例があります。ほとんどのクエリはこれらの例より簡単"
+"に記述できることに注意してください。"
#. Tag: para
-#: query_hql.xml:887
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following query returns the order id, number of items, the given minimum
"
"total value and the total value of the order for all unpaid orders for a "
@@ -1873,68 +1140,23 @@
"<literal>PRODUCT</literal>, <literal>CATALOG</literal> and
<literal>PRICE</"
"literal> tables has four inner joins and an (uncorrelated) subselect."
msgstr ""
-"以下のクエリは特定の顧客と与えられた最小の合計値に対する未払い注文の注文ID、 "
-"商品の数、注文の合計を合計値で整列して返します。 価格を決定する際、現在のカタ"
-"ログを使います。結果として返されるSQLクエリは <literal>ORDER</literal>, "
-"<literal>ORDER_LINE</literal>, <literal>PRODUCT</literal>,
<literal>CATALOG</"
-"literal> および <literal>PRICE</literal> テーブルに対し4つの内部結合と (関連"
-"しない)副問い合わせを持ちます。"
+"以下のクエリは特定の顧客と与えられた最小の合計値に対する未払い注文の注文 "
+"ID 、商品の数、注文の合計を合計値で整列して返します。価格を決定する際、現在の"
+"カタログを使います。結果として返される SQL クエリは <literal>ORDER</"
+"literal>、 <literal>ORDER_LINE</literal>、
<literal>PRODUCT</literal>、 "
+"<literal>CATALOG</literal> および <literal>PRICE</literal>
テーブルに対し4つ"
+"の内部結合と (関連しない) 副問い合わせを持ちます。"
-#. Tag: programlisting
-#: query_hql.xml:896
-#, no-c-format
-msgid ""
-"<![CDATA[select order.id, sum(price.amount), count(item)\n"
-"from Order as order\n"
-" join order.lineItems as item\n"
-" join item.product as product,\n"
-" Catalog as catalog\n"
-" join catalog.prices as price\n"
-"where order.paid = false\n"
-" and order.customer = :customer\n"
-" and price.product = product\n"
-" and catalog.effectiveDate < sysdate\n"
-" and catalog.effectiveDate >= all (\n"
-" select cat.effectiveDate\n"
-" from Catalog as cat\n"
-" where cat.effectiveDate < sysdate\n"
-" )\n"
-"group by order\n"
-"having sum(price.amount) > :minAmount\n"
-"order by sum(price.amount) desc]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:898
#, no-c-format
msgid ""
"What a monster! Actually, in real life, I'm not very keen on subqueries, so
"
"my query was really more like this:"
msgstr ""
-"何て巨大なクエリなのでしょう! 普段私は副問い合わせをあまり使いません。した"
+"何て巨大なクエリなのでしょう。普段私は副問い合わせをあまり使いません。した"
"がって私のクエリは実際には以下のようになります。:"
-#. Tag: programlisting
-#: query_hql.xml:903
-#, no-c-format
-msgid ""
-"<![CDATA[select order.id, sum(price.amount), count(item)\n"
-"from Order as order\n"
-" join order.lineItems as item\n"
-" join item.product as product,\n"
-" Catalog as catalog\n"
-" join catalog.prices as price\n"
-"where order.paid = false\n"
-" and order.customer = :customer\n"
-" and price.product = product\n"
-" and catalog = :currentCatalog\n"
-"group by order\n"
-"having sum(price.amount) > :minAmount\n"
-"order by sum(price.amount) desc]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:905
#, no-c-format
msgid ""
"The next query counts the number of payments in each status, excluding all "
@@ -1945,58 +1167,21 @@
"<literal>PAYMENT_STATUS_CHANGE</literal> tables."
msgstr ""
"次のクエリは各ステータスの支払い数を数えます。ただしすべての支払いが現在の利"
-"用者による 最新のステータス変更である <literal>AWAITING_APPROVAL</literal> で"
-"ある場合を除きます。 このクエリは2つの内部結合と <literal>PAYMENT</literal>, "
+"用者による最新のステータス変更である <literal>AWAITING_APPROVAL</literal> で"
+"ある場合を除きます。このクエリは2つの内部結合と <literal>PAYMENT</literal>, "
"<literal>PAYMENT_STATUS</literal> および
<literal>PAYMENT_STATUS_CHANGE</"
-"literal> テーブルに対する関連副問い合わせを備えたSQLクエリに変換されます。"
+"literal> テーブルに対する関連副問い合わせを備えた SQL クエリに変換されます。"
-#. Tag: programlisting
-#: query_hql.xml:913
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select count(payment), status.name\n"
-"from Payment as payment\n"
-" join payment.currentStatus as status\n"
-" join payment.statusChanges as statusChange\n"
-"where payment.status.name <> PaymentStatus.AWAITING_APPROVAL\n"
-" or (\n"
-" statusChange.timeStamp = (\n"
-" select max(change.timeStamp)\n"
-" from PaymentStatusChange change\n"
-" where change.payment = payment\n"
-" )\n"
-" and statusChange.user <> :currentUser\n"
-" )\n"
-"group by status.name, status.sortOrder\n"
-"order by status.sortOrder]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:915
-#, fuzzy, no-c-format
-msgid ""
"If the <literal>statusChanges</literal> collection was mapped as a
list, "
"instead of a set, the query would have been much simpler to write."
msgstr ""
-"もし私がsetの代わりにlistとして <literal>statusChanges</literal> コレクション"
-"を マッピングしたならば、はるかに簡単にクエリを記述できるでしょう。"
+"もし set の代わりに list として <literal>statusChanges</literal> コレクション"
+"をマッピングしたならば、はるかに簡単にクエリを記述できるでしょう。"
-#. Tag: programlisting
-#: query_hql.xml:920
-#, no-c-format
-msgid ""
-"<![CDATA[select count(payment), status.name\n"
-"from Payment as payment\n"
-" join payment.currentStatus as status\n"
-"where payment.status.name <> PaymentStatus.AWAITING_APPROVAL\n"
-" or payment.statusChanges[ maxIndex(payment.statusChanges) ].user <>
:"
-"currentUser\n"
-"group by status.name, status.sortOrder\n"
-"order by status.sortOrder]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:922
#, no-c-format
msgid ""
"The next query uses the MS SQL Server <literal>isNull()</literal>
function "
@@ -2007,314 +1192,150 @@
"<literal>ACCOUNT_TYPE</literal>,
<literal>ORGANIZATION</literal> and "
"<literal>ORG_USER</literal> tables."
msgstr ""
-"次のクエリは現在のユーザが所属する組織に対するアカウントおよび未払いの支払い"
-"を すべて返すMS SQL Server の <literal>isNull()</literal> 関数を使用していま"
-"す。 このクエリは3つの内部結合と1つの外部結合 、 そして <literal>ACCOUNT</"
-"literal>, <literal>PAYMENT</literal>,
<literal>PAYMENT_STATUS</literal>, "
-"<literal>ACCOUNT_TYPE</literal>,
<literal>ORGANIZATION</literal> および "
-"<literal>ORG_USER</literal> テーブルに対する副問い合わせ持ったSQLに変換されま"
-"す。"
+"次のクエリは現在のユーザーが所属する組織に対するアカウントおよび未払いの支払"
+"いをすべて返す MS SQL Server の <literal>isNull()</literal> 関数を使用してい"
+"ます。このクエリは3つの内部結合と1つの外部結合、そして <literal>ACCOUNT</"
+"literal>、 <literal>PAYMENT</literal>、
<literal>PAYMENT_STATUS</literal>、 "
+"<literal>ACCOUNT_TYPE</literal>、
<literal>ORGANIZATION</literal> および "
+"<literal>ORG_USER</literal> テーブルに対する副問い合わせ持った SQL に変換され"
+"ます。"
-#. Tag: programlisting
-#: query_hql.xml:931
-#, no-c-format
-msgid ""
-"<![CDATA[select account, payment\n"
-"from Account as account\n"
-" left outer join account.payments as payment\n"
-"where :currentUser in elements(account.holder.users)\n"
-" and PaymentStatus.UNPAID = isNull(payment.currentStatus.name, "
-"PaymentStatus.UNPAID)\n"
-"order by account.type.sortOrder, account.accountNumber,
payment.dueDate]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:933
#, no-c-format
msgid ""
"For some databases, we would need to do away with the (correlated)
subselect."
msgstr ""
-"いくつかのデータベースについては、(関連させられた)副問い合わせの使用を避ける"
-"必要があるでしょう。"
+"いくつかのデータベースについては、 (関連させられた) 副問い合わせの使用を避け"
+"る必要があるでしょう。"
-#. Tag: programlisting
-#: query_hql.xml:937
-#, no-c-format
-msgid ""
-"<![CDATA[select account, payment\n"
-"from Account as account\n"
-" join account.holder.users as user\n"
-" left outer join account.payments as payment\n"
-"where :currentUser = user\n"
-" and PaymentStatus.UNPAID = isNull(payment.currentStatus.name, "
-"PaymentStatus.UNPAID)\n"
-"order by account.type.sortOrder, account.accountNumber,
payment.dueDate]]>"
-msgstr ""
-
#. Tag: title
-#: query_hql.xml:942
#, no-c-format
msgid "Bulk update and delete"
-msgstr "大量のUPDATEとDELETE"
+msgstr "大量の UPDATE と DELETE"
#. Tag: para
-#: query_hql.xml:944
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"HQL now supports <literal>update</literal>,
<literal>delete</literal> and "
"<literal>insert ... select ...</literal> statements. See <xref
linkend="
-"\"batch-direct\"/> for more information."
+"\"batch-direct\" /> for more information."
msgstr ""
-"HQLは今は <literal>update</literal> と
<literal>delete</literal>、"
-"<literal>insert ... select ...</literal> ステートメントをHQLに入れることをサ"
-"ポートしています。 <xref linkend=\"batch-direct\"/> に詳細があります。"
+"HQL は現在 <literal>update</literal> と
<literal>delete</literal>、 "
+"<literal>insert ... select ...</literal> ステートメントをサポートしています。"
+"詳細については <xref linkend=\"batch-direct\"/> を参照ください。"
#. Tag: title
-#: query_hql.xml:952
#, no-c-format
msgid "Tips & Tricks"
msgstr "Tips & Tricks"
#. Tag: para
-#: query_hql.xml:954
-#, fuzzy, no-c-format
+#, no-c-format
msgid "You can count the number of query results without returning them:"
-msgstr "実際に結果を返さなくてもクエリの結果数を数えることができます。:"
+msgstr "実際に結果を返さなくてもクエリの結果数を数えることができます:"
-#. Tag: programlisting
-#: query_hql.xml:958
-#, no-c-format
-msgid ""
-"<![CDATA[( (Integer) session.createQuery(\"select count(*) from
....\")."
-"iterate().next() ).intValue()]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:960
#, no-c-format
msgid "To order a result by the size of a collection, use the following
query:"
msgstr ""
-"コレクションのサイズにより結果を並べ替えるためには以下のクエリを使用します。:"
+"コレクションのサイズにより結果を並べ替えるためには以下のクエリを使用します:"
-#. Tag: programlisting
-#: query_hql.xml:964
-#, no-c-format
-msgid ""
-"<![CDATA[select usr.id, usr.name\n"
-"from User as usr\n"
-" left join usr.messages as msg\n"
-"group by usr.id, usr.name\n"
-"order by count(msg)]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:966
#, no-c-format
msgid ""
"If your database supports subselects, you can place a condition upon "
"selection size in the where clause of your query:"
msgstr ""
-"使用しているデータベースがサブセレクトをサポートする場合、クエリのwhere節でサ"
-"イズによる選択条件を設定できます:"
+"使用しているデータベースがサブセレクトをサポートする場合、クエリの where 節で"
+"サイズによる選択条件を設定できます:"
-#. Tag: programlisting
-#: query_hql.xml:971
-#, no-c-format
-msgid "<![CDATA[from User usr where size(usr.messages) >= 1]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:973
-#, fuzzy, no-c-format
+#, no-c-format
msgid "If your database does not support subselects, use the following query:"
msgstr ""
"使用しているデータベースがサブセレクトをサポートしない場合は、次のクエリを使"
"用してください:"
-#. Tag: programlisting
-#: query_hql.xml:977
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[select usr.id, usr.name\n"
-"from User usr.name\n"
-" join usr.messages msg\n"
-"group by usr.id, usr.name\n"
-"having count(msg) >= 1]]>"
-msgstr ""
-
-#. Tag: para
-#: query_hql.xml:980
-#, fuzzy, no-c-format
-msgid ""
"As this solution cannot return a <literal>User</literal> with zero
messages "
"because of the inner join, the following form is also useful:"
msgstr ""
-"内部結合をしているせいで上の解決法がmessageの件数が ゼロの <literal>User</"
-"literal> を返すことができないならば、以下の形式が使えます。"
+"内部結合をしているせいで上の解決法が message の件数がゼロの <literal>User</"
+"literal> を返すことができないならば、以下の形式が使えます:"
-#. Tag: programlisting
-#: query_hql.xml:985
-#, no-c-format
-msgid ""
-"<![CDATA[select usr.id, usr.name\n"
-"from User as usr\n"
-" left join usr.messages as msg\n"
-"group by usr.id, usr.name\n"
-"having count(msg) = 0]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:987
#, no-c-format
msgid "Properties of a JavaBean can be bound to named query parameters:"
msgstr ""
-"JavaBeanのプロパティは、名前付きのクエリパラメータに結びつけることが出来ま"
-"す。:"
+"JavaBean のプロパティは、名前付きのクエリパラメータに結びつけることが出来ま"
+"す:"
-#. Tag: programlisting
-#: query_hql.xml:991
-#, no-c-format
-msgid ""
-"<![CDATA[Query q = s.createQuery(\"from foo Foo as foo where foo.name=:name
"
-"and foo.size=:size\");\n"
-"q.setProperties(fooBean); // fooBean has getName() and getSize()\n"
-"List foos = q.list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:993
#, no-c-format
msgid ""
"Collections are pageable by using the <literal>Query</literal>
interface "
"with a filter:"
msgstr ""
-"コレクションはフィルタ付き <literal>Query</literal> インターフェイスを使用す"
-"ることでページをつけることができます。:"
+"コレクションはフィルタ付き <literal>Query</literal> インターフェースを使用す"
+"ることでページをつけることができます:"
-#. Tag: programlisting
-#: query_hql.xml:997
-#, no-c-format
-msgid ""
-"<![CDATA[Query q = s.createFilter( collection, \"\" ); // the trivial
"
-"filter\n"
-"q.setMaxResults(PAGE_SIZE);\n"
-"q.setFirstResult(PAGE_SIZE * pageNumber);\n"
-"List page = q.list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:999
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Collection elements can be ordered or grouped using a query filter:"
msgstr ""
-"コレクションの要素はクエリフィルタを使って、並べ替えやグループ分けが出来ま"
-"す。:"
+"コレクションの要素はクエリフィルタを使って、並べ替えやグループ分けが出来ます:"
-#. Tag: programlisting
-#: query_hql.xml:1003
-#, no-c-format
-msgid ""
-"<![CDATA[Collection orderedCollection = s.filter( collection, \"order by
"
-"this.amount\" );\n"
-"Collection counts = s.filter( collection, \"select this.type, count(this)
"
-"group by this.type\" );]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:1005
#, no-c-format
msgid "You can find the size of a collection without initializing it:"
-msgstr "コレクションを初期化せずにコレクションのサイズを得ることができます。:"
+msgstr "コレクションを初期化せずにコレクションのサイズを得ることができます:"
-#. Tag: programlisting
-#: query_hql.xml:1009
-#, no-c-format
-msgid ""
-"<![CDATA[( (Integer) session.createQuery(\"select count(*) from
....\")."
-"iterate().next() ).intValue();]]>"
-msgstr ""
-
#. Tag: title
-#: query_hql.xml:1014
#, no-c-format
msgid "Components"
-msgstr "translator-credits"
+msgstr "コンポーネント"
#. Tag: para
-#: query_hql.xml:1016
#, no-c-format
msgid ""
"Components can be used similarly to the simple value types that are used in "
"HQL queries. They can appear in the <literal>select</literal> clause as
"
"follows:"
msgstr ""
+"HQL クエリでシンプルな値型を使用できるので、コンポーネントは、あらゆる点で使"
+"用できます。これは <literal>select</literal> 節の中に現われます:"
-#. Tag: programlisting
-#: query_hql.xml:1021 query_hql.xml:1067
-#, no-c-format
-msgid "<![CDATA[select p.name from Person p]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:1022
-#, no-c-format
-msgid "<![CDATA[select p.name.first from Person p]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:1024
#, no-c-format
msgid ""
"where the Person's name property is a component. Components can also be used
"
"in the <literal>where</literal> clause:"
msgstr ""
+"人名のプロパティがコンポーネントの場所。コンポーネントは、 <literal>where</"
+"literal> 節でも使用可能です:"
-#. Tag: programlisting
-#: query_hql.xml:1029
-#, no-c-format
-msgid "<![CDATA[from Person p where p.name = :name]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:1030
-#, no-c-format
-msgid "<![CDATA[from Person p where p.name.first = :firstName]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:1032
#, no-c-format
msgid "Components can also be used in the <literal>order by</literal>
clause:"
-msgstr ""
+msgstr "コンポーネントは <literal>order by</literal> 節でも使用可能です:"
-#. Tag: programlisting
-#: query_hql.xml:1036
-#, no-c-format
-msgid "<![CDATA[from Person p order by p.name]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_hql.xml:1037
-#, no-c-format
-msgid "<![CDATA[from Person p order by p.name.first]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:1039
#, no-c-format
msgid ""
-"Another common use of components is in <link
linkend=\"queryhql-tuple\">row "
-"value constructors</link>."
+"Another common use of components is in row value constructors (<xref
linkend="
+"\"queryhql-tuple\" />)."
msgstr ""
+"コンポーネントの他の一般的な使用は、 <xref linkend=\"queryhql-tuple\"/> 行値"
+"コンストラクタにあります。"
#. Tag: title
-#: query_hql.xml:1045
#, no-c-format
msgid "Row value constructor syntax"
-msgstr ""
+msgstr "行値コンストラクタ構文"
#. Tag: para
-#: query_hql.xml:1047
#, no-c-format
msgid ""
"HQL supports the use of ANSI SQL <literal>row value
constructor</literal> "
@@ -2323,71 +1344,975 @@
"generally referring to multi-valued comparisons, typically associated with "
"components. Consider an entity Person which defines a name component:"
msgstr ""
+"下に位置するデータベースが ANSI SQL <literal>row value constructor</literal> "
+"構文 (<literal>tuple</literal> 構文とよばれることもあります) をサポートしてい"
+"ないとしても、 HQL はその使用をサポートしています。ここでは、一般的にコンポー"
+"ネントと連繋するマルチバリュー比較について触れます。ネームコンポーネントを定"
+"義する Person エンティティを考えましょう:"
-#. Tag: programlisting
-#: query_hql.xml:1054
-#, no-c-format
-msgid ""
-"<![CDATA[from Person p where p.name.first='John' and p.name."
-"last='Jingleheimer-Schmidt']]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:1056
#, no-c-format
msgid ""
"That is valid syntax although it is a little verbose. You can make this more
"
"concise by using <literal>row value constructor</literal>
syntax:"
msgstr ""
+"それは少々詳細になりますが、有効な構文です。より簡潔にし、 <literal>row "
+"value constructor</literal> 構文を使用するのがよいでしょう:"
-#. Tag: programlisting
-#: query_hql.xml:1061
-#, no-c-format
-msgid "<![CDATA[from Person p where p.name=('John',
'Jingleheimer-Schmidt')]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:1063
#, no-c-format
msgid ""
"It can also be useful to specify this in the <literal>select</literal>
"
"clause:"
-msgstr ""
+msgstr "それを <literal>select</literal> 節で指定するのも効果的です。"
#. Tag: para
-#: query_hql.xml:1069
#, no-c-format
msgid ""
"Using <literal>row value constructor</literal> syntax can also be
beneficial "
"when using subqueries that need to compare against multiple values:"
msgstr ""
+"次に <literal>row value constructor</literal> 構文の使用が有効なときは、サブ"
+"クエリを使用して複数の値と比較する必要があるときです:"
-#. Tag: programlisting
-#: query_hql.xml:1074
-#, no-c-format
-msgid ""
-"<![CDATA[from Cat as cat\n"
-"where not ( cat.name, cat.color ) in (\n"
-" select cat.name, cat.color from DomesticCat cat\n"
-")]]>"
-msgstr ""
-
#. Tag: para
-#: query_hql.xml:1076
#, no-c-format
msgid ""
"One thing to consider when deciding if you want to use this syntax, is that "
"the query will be dependent upon the ordering of the component sub-"
"properties in the metadata."
msgstr ""
+"この構文を使用するかどうか決定するときに考慮しなければならないことは、クエリ"
+"がメタデータ内のコンポーネントのサブプロパティの順番に依存していることです。"
+#, fuzzy
+#~ msgid "<![CDATA[from eg.Cat]]>"
+#~ msgstr "from eg.Cat"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat as cat]]>"
+#~ msgstr "from Cat as cat"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat cat]]>"
+#~ msgstr "from Cat cat"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Formula, Parameter]]>"
+#~ msgstr "from Formula, Parameter"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Formula as form, Parameter as param]]>"
+#~ msgstr "from Formula as form, Parameter as param"
+
+#, fuzzy
#~ msgid ""
-#~ "Most of the time, you will need to assign an
<emphasis>alias</emphasis>, "
-#~ "since you will want to refer to the <literal>Cat</literal> in other
parts "
-#~ "of the query."
+#~ "<![CDATA[from Cat as cat\n"
+#~ " inner join cat.mate as mate\n"
+#~ " left outer join cat.kittens as kitten]]>"
#~ msgstr ""
-#~ "ほとんどの場合クエリのほかの部分で <literal>Cat</literal> を参照するの"
-#~ "で、別名を割り当てる必要があるでしょう。"
+#~ "from Cat as cat\n"
+#~ " inner join cat.mate as mate\n"
+#~ " left outer join cat.kittens as kitten"
-#~ msgid "or as an actual typesafe Java object,"
-#~ msgstr "または、タイプセーフなJavaオブジェクトを返せます。"
+#, fuzzy
+#~ msgid "<![CDATA[from Cat as cat left join cat.mate.kittens as
kittens]]>"
+#~ msgstr "from Cat as cat left join cat.mate.kittens as kittens"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Formula form full join form.parameter param]]>"
+#~ msgstr "from Formula form full join form.parameter param"
+
+#~ msgid "inner join"
+#~ msgstr "inner join"
+
+#~ msgid "left outer join"
+#~ msgstr "left outer join"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Cat as cat\n"
+#~ " join cat.mate as mate\n"
+#~ " left join cat.kittens as kitten]]>"
+#~ msgstr ""
+#~ "from Cat as cat\n"
+#~ " join cat.mate as mate\n"
+#~ " left join cat.kittens as kitten"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Cat as cat\n"
+#~ " left join cat.kittens as kitten\n"
+#~ " with kitten.bodyWeight > 10.0]]>"
+#~ msgstr ""
+#~ "from Cat as cat\n"
+#~ " left join cat.kittens as kitten\n"
+#~ " with kitten.bodyWeight > 10.0"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Cat as cat\n"
+#~ " inner join fetch cat.mate\n"
+#~ " left join fetch cat.kittens]]>"
+#~ msgstr ""
+#~ "from Cat as cat\n"
+#~ " inner join fetch cat.mate\n"
+#~ " left join fetch cat.kittens"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Cat as cat\n"
+#~ " inner join fetch cat.mate\n"
+#~ " left join fetch cat.kittens child\n"
+#~ " left join fetch child.kittens]]>"
+#~ msgstr ""
+#~ "from Cat as cat\n"
+#~ " inner join fetch cat.mate\n"
+#~ " left join fetch cat.kittens child\n"
+#~ " left join fetch child.kittens"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Document fetch all properties order by name]]>"
+#~ msgstr "from Document fetch all properties order by name"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Document doc fetch all properties where lower(doc.name) "
+#~ "like '%cats%']]>"
+#~ msgstr ""
+#~ "from Document doc fetch all properties where lower(doc.name) like
'%"
+#~ "cats%'"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat as cat where cat.mate.name like
'%s%']]>"
+#~ msgstr "from Cat as cat where cat.mate.name like
'%s%'"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select mate\n"
+#~ "from Cat as cat\n"
+#~ " inner join cat.mate as mate]]>"
+#~ msgstr ""
+#~ "select mate\n"
+#~ "from Cat as cat\n"
+#~ " inner join cat.mate as mate"
+
+#, fuzzy
+#~ msgid "<![CDATA[select cat.mate from Cat cat]]>"
+#~ msgstr "select cat.mate from Cat cat"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select cat.name from DomesticCat cat\n"
+#~ "where cat.name like 'fri%']]>"
+#~ msgstr ""
+#~ "select cat.name from DomesticCat cat\n"
+#~ "where cat.name like 'fri%'"
+
+#, fuzzy
+#~ msgid "<![CDATA[select cust.name.firstName from Customer as cust]]>"
+#~ msgstr "select cust.name.firstName from Customer as cust"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select mother, offspr, mate.name\n"
+#~ "from DomesticCat as mother\n"
+#~ " inner join mother.mate as mate\n"
+#~ " left outer join mother.kittens as offspr]]>"
+#~ msgstr ""
+#~ "select mother, offspr, mate.name\n"
+#~ "from DomesticCat as mother\n"
+#~ " inner join mother.mate as mate\n"
+#~ " left outer join mother.kittens as offspr"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select new list(mother, offspr, mate.name)\n"
+#~ "from DomesticCat as mother\n"
+#~ " inner join mother.mate as mate\n"
+#~ " left outer join mother.kittens as offspr]]>"
+#~ msgstr ""
+#~ "select new list(mother, offspr, mate.name)\n"
+#~ "from DomesticCat as mother\n"
+#~ " inner join mother.mate as mate\n"
+#~ " left outer join mother.kittens as offspr"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select new Family(mother, mate, offspr)\n"
+#~ "from DomesticCat as mother\n"
+#~ " join mother.mate as mate\n"
+#~ " left join mother.kittens as offspr]]>"
+#~ msgstr ""
+#~ "select new Family(mother, mate, offspr)\n"
+#~ "from DomesticCat as mother\n"
+#~ " join mother.mate as mate\n"
+#~ " left join mother.kittens as offspr"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select max(bodyWeight) as max, min(bodyWeight) as min, count(*)
"
+#~ "as n\n"
+#~ "from Cat cat]]>"
+#~ msgstr ""
+#~ "select max(bodyWeight) as max, min(bodyWeight) as min, count(*) as n\n"
+#~ "from Cat cat"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select new map( max(bodyWeight) as max, min(bodyWeight) as min,
"
+#~ "count(*) as n )\n"
+#~ "from Cat cat]]>"
+#~ msgstr ""
+#~ "select new map( max(bodyWeight) as max, min(bodyWeight) as min, count(*) "
+#~ "as n )\n"
+#~ "from Cat cat"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select avg(cat.weight), sum(cat.weight), max(cat.weight),
count"
+#~ "(cat)\n"
+#~ "from Cat cat]]>"
+#~ msgstr ""
+#~ "select avg(cat.weight), sum(cat.weight), max(cat.weight), count(cat)\n"
+#~ "from Cat cat"
+
+#~ msgid "count(*)"
+#~ msgstr "count(*)"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select cat.weight + sum(kitten.weight)\n"
+#~ "from Cat cat\n"
+#~ " join cat.kittens kitten\n"
+#~ "group by cat.id, cat.weight]]>"
+#~ msgstr ""
+#~ "select cat.weight + sum(kitten.weight)\n"
+#~ "from Cat cat\n"
+#~ " join cat.kittens kitten\n"
+#~ "group by cat.id, cat.weight"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select firstName||' '||initial||' '||upper(lastName)
from "
+#~ "Person]]>"
+#~ msgstr "select firstName||' '||initial||' '||upper(lastName) from
Person"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select distinct cat.name from Cat cat\n"
+#~ "\n"
+#~ "select count(distinct cat.name), count(cat) from Cat cat]]>"
+#~ msgstr ""
+#~ "select distinct cat.name from Cat cat\n"
+#~ "\n"
+#~ "select count(distinct cat.name), count(cat) from Cat cat"
+
+#, fuzzy
+#~ msgid "<![CDATA[from java.lang.Object o]]>"
+#~ msgstr "from java.lang.Object o"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Named n, Named m where n.name = m.name]]>"
+#~ msgstr "from Named n, Named m where n.name = m.name"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat where name='Fritz']]>"
+#~ msgstr "from Cat where name='Fritz'"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat as cat where cat.name='Fritz']]>"
+#~ msgstr "from Cat as cat where cat.name='Fritz'"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select foo\n"
+#~ "from Foo foo, Bar bar\n"
+#~ "where foo.startDate = bar.date]]>"
+#~ msgstr ""
+#~ "select foo\n"
+#~ "from Foo foo, Bar bar\n"
+#~ "where foo.startDate = bar.date"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat cat where cat.mate.name is not null]]>"
+#~ msgstr "from Cat cat where cat.mate.name is not null"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Foo foo\n"
+#~ "where foo.bar.baz.customer.address.city is not null]]>"
+#~ msgstr ""
+#~ "from Foo foo\n"
+#~ "where foo.bar.baz.customer.address.city is not null"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat cat, Cat rival where cat.mate =
rival.mate]]>"
+#~ msgstr "from Cat cat, Cat rival where cat.mate = rival.mate"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select cat, mate\n"
+#~ "from Cat cat, Cat mate\n"
+#~ "where cat.mate = mate]]>"
+#~ msgstr ""
+#~ "select cat, mate\n"
+#~ "from Cat cat, Cat mate\n"
+#~ "where cat.mate = mate"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Cat as cat where cat.id = 123\n"
+#~ "\n"
+#~ "from Cat as cat where cat.mate.id = 69]]>"
+#~ msgstr ""
+#~ "from Cat as cat where cat.id = 123\n"
+#~ "\n"
+#~ "from Cat as cat where cat.mate.id = 69"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from bank.Person person\n"
+#~ "where person.id.country = 'AU'\n"
+#~ " and person.id.medicareNumber = 123456]]>"
+#~ msgstr ""
+#~ "from bank.Person person\n"
+#~ "where person.id.country = 'AU'\n"
+#~ " and person.id.medicareNumber = 123456"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from bank.Account account\n"
+#~ "where account.owner.id.country = 'AU'\n"
+#~ " and account.owner.id.medicareNumber = 123456]]>"
+#~ msgstr ""
+#~ "from bank.Account account\n"
+#~ "where account.owner.id.country = 'AU'\n"
+#~ " and account.owner.id.medicareNumber = 123456"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat cat where cat.class = DomesticCat]]>"
+#~ msgstr "from Cat cat where cat.class = DomesticCat"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from AuditLog log, Payment payment\n"
+#~ "where log.item.class = 'Payment' and log.item.id =
payment.id]]>"
+#~ msgstr ""
+#~ "from AuditLog log, Payment payment\n"
+#~ "where log.item.class = 'Payment' and log.item.id = payment.id"
+
+#, fuzzy
+#~ msgid "<![CDATA[from DomesticCat cat where cat.name between 'A' and
'B']]>"
+#~ msgstr "from DomesticCat cat where cat.name between 'A' and
'B'"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from DomesticCat cat where cat.name in ( 'Foo',
'Bar', 'Baz' )]]>"
+#~ msgstr "from DomesticCat cat where cat.name in ( 'Foo', 'Bar',
'Baz' )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from DomesticCat cat where cat.name not between 'A' and
'B']]>"
+#~ msgstr "from DomesticCat cat where cat.name not between 'A' and
'B'"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from DomesticCat cat where cat.name not in ( 'Foo',
'Bar', "
+#~ "'Baz' )]]>"
+#~ msgstr "from DomesticCat cat where cat.name not in ( 'Foo',
'Bar', 'Baz' )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property
name=\"hibernate.query.substitutions\">true 1, false "
+#~ "0</property>]]>"
+#~ msgstr ""
+#~ "<property name=\"hibernate.query.substitutions\">true 1,
false "
+#~ "0</property>"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat cat where cat.alive = true]]>"
+#~ msgstr "from Cat cat where cat.alive = true"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat cat where cat.kittens.size > 0]]>"
+#~ msgstr "from Cat cat where cat.kittens.size > 0"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat cat where size(cat.kittens) > 0]]>"
+#~ msgstr "from Cat cat where size(cat.kittens) > 0"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Calendar cal where maxelement(cal.holidays) >
current_date]]"
+#~ ">"
+#~ msgstr "from Calendar cal where maxelement(cal.holidays) >
current_date"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Order order where maxindex(order.items) >
100]]>"
+#~ msgstr "from Order order where maxindex(order.items) > 100"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Order order where minelement(order.items) >
10000]]>"
+#~ msgstr "from Order order where minelement(order.items) > 10000"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select mother from Cat as mother, Cat as kit\n"
+#~ "where kit in elements(foo.kittens)]]>"
+#~ msgstr ""
+#~ "select mother from Cat as mother, Cat as kit\n"
+#~ "where kit in elements(foo.kittens)"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select p from NameList list, Person p\n"
+#~ "where p.name = some elements(list.names)]]>"
+#~ msgstr ""
+#~ "select p from NameList list, Person p\n"
+#~ "where p.name = some elements(list.names)"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Cat cat where exists elements(cat.kittens)]]>"
+#~ msgstr "from Cat cat where exists elements(cat.kittens)"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Player p where 3 > all elements(p.scores)]]>"
+#~ msgstr "from Player p where 3 > all elements(p.scores)"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Show show where 'fizard' in
indices(show.acts)]]>"
+#~ msgstr "from Show show where 'fizard' in indices(show.acts)"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Order order where order.items[0].id = 1234]]>"
+#~ msgstr "from Order order where order.items[0].id = 1234"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select person from Person person, Calendar calendar\n"
+#~ "where calendar.holidays['national day'] = person.birthDay\n"
+#~ " and person.nationality.calendar = calendar]]>"
+#~ msgstr ""
+#~ "select person from Person person, Calendar calendar\n"
+#~ "where calendar.holidays['national day'] = person.birthDay\n"
+#~ " and person.nationality.calendar = calendar"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select item from Item item, Order order\n"
+#~ "where order.items[ order.deliveredItemIndices[0] ] = item and order.id = "
+#~ "11]]>"
+#~ msgstr ""
+#~ "select item from Item item, Order order\n"
+#~ "where order.items[ order.deliveredItemIndices[0] ] = item and order.id = "
+#~ "11"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select item from Item item, Order order\n"
+#~ "where order.items[ maxindex(order.items) ] = item and order.id = 11]]>"
+#~ msgstr ""
+#~ "select item from Item item, Order order\n"
+#~ "where order.items[ maxindex(order.items) ] = item and order.id = 11"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select item from Item item, Order order\n"
+#~ "where order.items[ size(order.items) - 1 ] = item]]>"
+#~ msgstr ""
+#~ "select item from Item item, Order order\n"
+#~ "where order.items[ size(order.items) - 1 ] = item"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select item, index(item) from Order order\n"
+#~ " join order.items item\n"
+#~ "where index(item) < 5]]>"
+#~ msgstr ""
+#~ "select item, index(item) from Order order\n"
+#~ " join order.items item\n"
+#~ "where index(item) < 5"
+
+#, fuzzy
+#~ msgid "<![CDATA[from DomesticCat cat where upper(cat.name) like
'FRI%']]>"
+#~ msgstr "from DomesticCat cat where upper(cat.name) like
'FRI%'"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select cust\n"
+#~ "from Product prod,\n"
+#~ " Store store\n"
+#~ " inner join store.customers cust\n"
+#~ "where prod.name = 'widget'\n"
+#~ " and store.location.name in ( 'Melbourne', 'Sydney'
)\n"
+#~ " and prod = all elements(cust.currentOrder.lineItems)]]>"
+#~ msgstr ""
+#~ "select cust\n"
+#~ "from Product prod,\n"
+#~ " Store store\n"
+#~ " inner join store.customers cust\n"
+#~ "where prod.name = 'widget'\n"
+#~ " and store.location.name in ( 'Melbourne', 'Sydney'
)\n"
+#~ " and prod = all elements(cust.currentOrder.lineItems)"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[SELECT cust.name, cust.address, cust.phone, cust.id, cust."
+#~ "current_order\n"
+#~ "FROM customers cust,\n"
+#~ " stores store,\n"
+#~ " locations loc,\n"
+#~ " store_customers sc,\n"
+#~ " product prod\n"
+#~ "WHERE prod.name = 'widget'\n"
+#~ " AND store.loc_id = loc.id\n"
+#~ " AND loc.name IN ( 'Melbourne', 'Sydney' )\n"
+#~ " AND sc.store_id = store.id\n"
+#~ " AND sc.cust_id = cust.id\n"
+#~ " AND prod.id = ALL(\n"
+#~ " SELECT item.prod_id\n"
+#~ " FROM line_items item, orders o\n"
+#~ " WHERE item.order_id = o.id\n"
+#~ " AND cust.current_order = o.id\n"
+#~ " )]]>"
+#~ msgstr ""
+#~ "SELECT cust.name, cust.address, cust.phone, cust.id, cust.current_order\n"
+#~ "FROM customers cust,\n"
+#~ " stores store,\n"
+#~ " locations loc,\n"
+#~ " store_customers sc,\n"
+#~ " product prod\n"
+#~ "WHERE prod.name = 'widget'\n"
+#~ " AND store.loc_id = loc.id\n"
+#~ " AND loc.name IN ( 'Melbourne', 'Sydney' )\n"
+#~ " AND sc.store_id = store.id\n"
+#~ " AND sc.cust_id = cust.id\n"
+#~ " AND prod.id = ALL(\n"
+#~ " SELECT item.prod_id\n"
+#~ " FROM line_items item, orders o\n"
+#~ " WHERE item.order_id = o.id\n"
+#~ " AND cust.current_order = o.id\n"
+#~ " )"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from DomesticCat cat\n"
+#~ "order by cat.name asc, cat.weight desc, cat.birthdate]]>"
+#~ msgstr ""
+#~ "from DomesticCat cat\n"
+#~ "order by cat.name asc, cat.weight desc, cat.birthdate"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select cat.color, sum(cat.weight), count(cat)\n"
+#~ "from Cat cat\n"
+#~ "group by cat.color]]>"
+#~ msgstr ""
+#~ "select cat.color, sum(cat.weight), count(cat)\n"
+#~ "from Cat cat\n"
+#~ "group by cat.color"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select foo.id, avg(name), max(name)\n"
+#~ "from Foo foo join foo.names name\n"
+#~ "group by foo.id]]>"
+#~ msgstr ""
+#~ "select foo.id, avg(name), max(name)\n"
+#~ "from Foo foo join foo.names name\n"
+#~ "group by foo.id"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select cat.color, sum(cat.weight), count(cat)\n"
+#~ "from Cat cat\n"
+#~ "group by cat.color\n"
+#~ "having cat.color in (eg.Color.TABBY, eg.Color.BLACK)]]>"
+#~ msgstr ""
+#~ "select cat.color, sum(cat.weight), count(cat)\n"
+#~ "from Cat cat\n"
+#~ "group by cat.color\n"
+#~ "having cat.color in (eg.Color.TABBY, eg.Color.BLACK)"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select cat\n"
+#~ "from Cat cat\n"
+#~ " join cat.kittens kitten\n"
+#~ "group by cat.id, cat.name, cat.other, cat.properties\n"
+#~ "having avg(kitten.weight) > 100\n"
+#~ "order by count(kitten) asc, sum(kitten.weight) desc]]>"
+#~ msgstr ""
+#~ "select cat\n"
+#~ "from Cat cat\n"
+#~ " join cat.kittens kitten\n"
+#~ "group by cat.id, cat.name, cat.other, cat.properties\n"
+#~ "having avg(kitten.weight) > 100\n"
+#~ "order by count(kitten) asc, sum(kitten.weight) desc"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Cat as fatcat\n"
+#~ "where fatcat.weight > (\n"
+#~ " select avg(cat.weight) from DomesticCat cat\n"
+#~ ")]]>"
+#~ msgstr ""
+#~ "from Cat as fatcat\n"
+#~ "where fatcat.weight > (\n"
+#~ " select avg(cat.weight) from DomesticCat cat\n"
+#~ ")"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from DomesticCat as cat\n"
+#~ "where cat.name = some (\n"
+#~ " select name.nickName from Name as name\n"
+#~ ")]]>"
+#~ msgstr ""
+#~ "from DomesticCat as cat\n"
+#~ "where cat.name = some (\n"
+#~ " select name.nickName from Name as name\n"
+#~ ")"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Cat as cat\n"
+#~ "where not exists (\n"
+#~ " from Cat as mate where mate.mate = cat\n"
+#~ ")]]>"
+#~ msgstr ""
+#~ "from Cat as cat\n"
+#~ "where not exists (\n"
+#~ " from Cat as mate where mate.mate = cat\n"
+#~ ")"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from DomesticCat as cat\n"
+#~ "where cat.name not in (\n"
+#~ " select name.nickName from Name as name\n"
+#~ ")]]>"
+#~ msgstr ""
+#~ "from DomesticCat as cat\n"
+#~ "where cat.name not in (\n"
+#~ " select name.nickName from Name as name\n"
+#~ ")"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select cat.id, (select max(kit.weight) from cat.kitten kit)\n"
+#~ "from Cat as cat]]>"
+#~ msgstr ""
+#~ "select cat.id, (select max(kit.weight) from cat.kitten kit)\n"
+#~ "from Cat as cat"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select order.id, sum(price.amount), count(item)\n"
+#~ "from Order as order\n"
+#~ " join order.lineItems as item\n"
+#~ " join item.product as product,\n"
+#~ " Catalog as catalog\n"
+#~ " join catalog.prices as price\n"
+#~ "where order.paid = false\n"
+#~ " and order.customer = :customer\n"
+#~ " and price.product = product\n"
+#~ " and catalog.effectiveDate < sysdate\n"
+#~ " and catalog.effectiveDate >= all (\n"
+#~ " select cat.effectiveDate\n"
+#~ " from Catalog as cat\n"
+#~ " where cat.effectiveDate < sysdate\n"
+#~ " )\n"
+#~ "group by order\n"
+#~ "having sum(price.amount) > :minAmount\n"
+#~ "order by sum(price.amount) desc]]>"
+#~ msgstr ""
+#~ "select order.id, sum(price.amount), count(item)\n"
+#~ "from Order as order\n"
+#~ " join order.lineItems as item\n"
+#~ " join item.product as product,\n"
+#~ " Catalog as catalog\n"
+#~ " join catalog.prices as price\n"
+#~ "where order.paid = false\n"
+#~ " and order.customer = :customer\n"
+#~ " and price.product = product\n"
+#~ " and catalog.effectiveDate < sysdate\n"
+#~ " and catalog.effectiveDate >= all (\n"
+#~ " select cat.effectiveDate\n"
+#~ " from Catalog as cat\n"
+#~ " where cat.effectiveDate < sysdate\n"
+#~ " )\n"
+#~ "group by order\n"
+#~ "having sum(price.amount) > :minAmount\n"
+#~ "order by sum(price.amount) desc"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select order.id, sum(price.amount), count(item)\n"
+#~ "from Order as order\n"
+#~ " join order.lineItems as item\n"
+#~ " join item.product as product,\n"
+#~ " Catalog as catalog\n"
+#~ " join catalog.prices as price\n"
+#~ "where order.paid = false\n"
+#~ " and order.customer = :customer\n"
+#~ " and price.product = product\n"
+#~ " and catalog = :currentCatalog\n"
+#~ "group by order\n"
+#~ "having sum(price.amount) > :minAmount\n"
+#~ "order by sum(price.amount) desc]]>"
+#~ msgstr ""
+#~ "select order.id, sum(price.amount), count(item)\n"
+#~ "from Order as order\n"
+#~ " join order.lineItems as item\n"
+#~ " join item.product as product,\n"
+#~ " Catalog as catalog\n"
+#~ " join catalog.prices as price\n"
+#~ "where order.paid = false\n"
+#~ " and order.customer = :customer\n"
+#~ " and price.product = product\n"
+#~ " and catalog = :currentCatalog\n"
+#~ "group by order\n"
+#~ "having sum(price.amount) > :minAmount\n"
+#~ "order by sum(price.amount) desc"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select count(payment), status.name\n"
+#~ "from Payment as payment\n"
+#~ " join payment.currentStatus as status\n"
+#~ " join payment.statusChanges as statusChange\n"
+#~ "where payment.status.name <> PaymentStatus.AWAITING_APPROVAL\n"
+#~ " or (\n"
+#~ " statusChange.timeStamp = (\n"
+#~ " select max(change.timeStamp)\n"
+#~ " from PaymentStatusChange change\n"
+#~ " where change.payment = payment\n"
+#~ " )\n"
+#~ " and statusChange.user <> :currentUser\n"
+#~ " )\n"
+#~ "group by status.name, status.sortOrder\n"
+#~ "order by status.sortOrder]]>"
+#~ msgstr ""
+#~ "select count(payment), status.name\n"
+#~ "from Payment as payment\n"
+#~ " join payment.currentStatus as status\n"
+#~ " join payment.statusChanges as statusChange\n"
+#~ "where payment.status.name <>
PaymentStatus.AWAITING_APPROVAL\n"
+#~ " or (\n"
+#~ " statusChange.timeStamp = (\n"
+#~ " select max(change.timeStamp)\n"
+#~ " from PaymentStatusChange change\n"
+#~ " where change.payment = payment\n"
+#~ " )\n"
+#~ " and statusChange.user <> :currentUser\n"
+#~ " )\n"
+#~ "group by status.name, status.sortOrder\n"
+#~ "order by status.sortOrder"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select count(payment), status.name\n"
+#~ "from Payment as payment\n"
+#~ " join payment.currentStatus as status\n"
+#~ "where payment.status.name <> PaymentStatus.AWAITING_APPROVAL\n"
+#~ " or payment.statusChanges[ maxIndex(payment.statusChanges) ].user <>
:"
+#~ "currentUser\n"
+#~ "group by status.name, status.sortOrder\n"
+#~ "order by status.sortOrder]]>"
+#~ msgstr ""
+#~ "select count(payment), status.name\n"
+#~ "from Payment as payment\n"
+#~ " join payment.currentStatus as status\n"
+#~ "where payment.status.name <>
PaymentStatus.AWAITING_APPROVAL\n"
+#~ " or payment.statusChanges[ maxIndex(payment.statusChanges) ].user
<"
+#~ "> :currentUser\n"
+#~ "group by status.name, status.sortOrder\n"
+#~ "order by status.sortOrder"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select account, payment\n"
+#~ "from Account as account\n"
+#~ " left outer join account.payments as payment\n"
+#~ "where :currentUser in elements(account.holder.users)\n"
+#~ " and PaymentStatus.UNPAID = isNull(payment.currentStatus.name, "
+#~ "PaymentStatus.UNPAID)\n"
+#~ "order by account.type.sortOrder, account.accountNumber,
payment.dueDate]]>"
+#~ msgstr ""
+#~ "select account, payment\n"
+#~ "from Account as account\n"
+#~ " left outer join account.payments as payment\n"
+#~ "where :currentUser in elements(account.holder.users)\n"
+#~ " and PaymentStatus.UNPAID = isNull(payment.currentStatus.name, "
+#~ "PaymentStatus.UNPAID)\n"
+#~ "order by account.type.sortOrder, account.accountNumber, payment.dueDate"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select account, payment\n"
+#~ "from Account as account\n"
+#~ " join account.holder.users as user\n"
+#~ " left outer join account.payments as payment\n"
+#~ "where :currentUser = user\n"
+#~ " and PaymentStatus.UNPAID = isNull(payment.currentStatus.name, "
+#~ "PaymentStatus.UNPAID)\n"
+#~ "order by account.type.sortOrder, account.accountNumber,
payment.dueDate]]>"
+#~ msgstr ""
+#~ "select account, payment\n"
+#~ "from Account as account\n"
+#~ " join account.holder.users as user\n"
+#~ " left outer join account.payments as payment\n"
+#~ "where :currentUser = user\n"
+#~ " and PaymentStatus.UNPAID = isNull(payment.currentStatus.name, "
+#~ "PaymentStatus.UNPAID)\n"
+#~ "order by account.type.sortOrder, account.accountNumber, payment.dueDate"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[( (Integer) session.createQuery(\"select count(*) from
....\")."
+#~ "iterate().next() ).intValue()]]>"
+#~ msgstr ""
+#~ "( (Integer) session.iterate(\"select count(*) from ....\").next()
)."
+#~ "intValue()"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select usr.id, usr.name\n"
+#~ "from User as usr\n"
+#~ " left join usr.messages as msg\n"
+#~ "group by usr.id, usr.name\n"
+#~ "order by count(msg)]]>"
+#~ msgstr ""
+#~ "select usr.id, usr.name\n"
+#~ "from User as usr\n"
+#~ " left join usr.messages as msg\n"
+#~ "group by usr.id, usr.name\n"
+#~ "order by count(msg)"
+
+#, fuzzy
+#~ msgid "<![CDATA[from User usr where size(usr.messages) >= 1]]>"
+#~ msgstr "from User usr where size(usr.messages) >= 1"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select usr.id, usr.name\n"
+#~ "from User usr.name\n"
+#~ " join usr.messages msg\n"
+#~ "group by usr.id, usr.name\n"
+#~ "having count(msg) >= 1]]>"
+#~ msgstr ""
+#~ "select usr.id, usr.name\n"
+#~ "from User usr.name\n"
+#~ " join usr.messages msg\n"
+#~ "group by usr.id, usr.name\n"
+#~ "having count(msg) >= 1"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[select usr.id, usr.name\n"
+#~ "from User as usr\n"
+#~ " left join usr.messages as msg\n"
+#~ "group by usr.id, usr.name\n"
+#~ "having count(msg) = 0]]>"
+#~ msgstr ""
+#~ "select usr.id, usr.name\n"
+#~ "from User as usr\n"
+#~ " left join usr.messages as msg\n"
+#~ "group by usr.id, usr.name\n"
+#~ "having count(msg) = 0"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Query q = s.createQuery(\"from foo Foo as foo where
foo.name=:"
+#~ "name and foo.size=:size\");\n"
+#~ "q.setProperties(fooBean); // fooBean has getName() and getSize()\n"
+#~ "List foos = q.list();]]>"
+#~ msgstr ""
+#~ "Query q = s.createQuery(\"from foo Foo as foo where foo.name=:name and
"
+#~ "foo.size=:size\");\n"
+#~ "q.setProperties(fooBean); // fooBean has getName() and getSize()\n"
+#~ "List foos = q.list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Query q = s.createFilter( collection, \"\" ); // the
trivial "
+#~ "filter\n"
+#~ "q.setMaxResults(PAGE_SIZE);\n"
+#~ "q.setFirstResult(PAGE_SIZE * pageNumber);\n"
+#~ "List page = q.list();]]>"
+#~ msgstr ""
+#~ "Query q = s.createFilter( collection, \"\" ); // the trivial
filter\n"
+#~ "q.setMaxResults(PAGE_SIZE);\n"
+#~ "q.setFirstResult(PAGE_SIZE * pageNumber);\n"
+#~ "List page = q.list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Collection orderedCollection = s.filter( collection, \"order by
"
+#~ "this.amount\" );\n"
+#~ "Collection counts = s.filter( collection, \"select this.type, count(this)
"
+#~ "group by this.type\" );]]>"
+#~ msgstr ""
+#~ "Collection orderedCollection = s.filter( collection, \"order by
this."
+#~ "amount\" );\n"
+#~ "Collection counts = s.filter( collection, \"select this.type, count(this)
"
+#~ "group by this.type\" );"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[( (Integer) session.createQuery(\"select count(*) from
....\")."
+#~ "iterate().next() ).intValue();]]>"
+#~ msgstr ""
+#~ "( (Integer) session.iterate(\"select count(*) from ....\").next()
)."
+#~ "intValue();"
+
+#, fuzzy
+#~ msgid "<![CDATA[select p.name from Person p]]>"
+#~ msgstr "select p.name from from Person p"
+
+#, fuzzy
+#~ msgid "<![CDATA[select p.name.first from Person p]]>"
+#~ msgstr "select p.name.first from from Person p"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Person p where p.name = :name]]>"
+#~ msgstr "from from Person p where p.name = :name"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Person p where p.name.first = :firstName]]>"
+#~ msgstr "from from Person p where p.name.first = :firstName"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Person p order by p.name]]>"
+#~ msgstr "from from Person p order by p.name"
+
+#, fuzzy
+#~ msgid "<![CDATA[from Person p order by p.name.first]]>"
+#~ msgstr "from from Person p order by p.name.first"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Person p where p.name.first='John' and p.name."
+#~ "last='Jingleheimer-Schmidt']]>"
+#~ msgstr ""
+#~ "from Person p where p.name.first='John' and
p.name.last='Jingleheimer-"
+#~ "Schmidt'"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Person p where p.name=('John',
'Jingleheimer-Schmidt')]]>"
+#~ msgstr "from Person p where p.name=('John',
'Jingleheimer-Schmidt')"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Cat as cat\n"
+#~ "where not ( cat.name, cat.color ) in (\n"
+#~ " select cat.name, cat.color from DomesticCat cat\n"
+#~ ")]]>"
+#~ msgstr ""
+#~ "from Cat as cat\n"
+#~ "where not ( cat.name, cat.color ) in (\n"
+#~ " select cat.name, cat.color from DomesticCat cat\n"
+#~ ")"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_sql.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_sql.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/query_sql.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,24 +1,25 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:27\n"
+"PO-Revision-Date: 2010-01-18 15:09+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: query_sql.xml:29
#, no-c-format
msgid "Native SQL"
-msgstr "ネイティブSQL"
+msgstr "ネイティブ SQL"
#. Tag: para
-#: query_sql.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also express queries in the native SQL dialect of your database. "
"This is useful if you want to utilize database-specific features such as "
@@ -26,118 +27,87 @@
"provides a clean migration path from a direct SQL/JDBC based application to "
"Hibernate."
msgstr ""
-"データベースのネイティブSQL方言を使ってクエリを表現することもできます。 クエ"
-"リヒントやOracleの <literal>CONNECT</literal> キーワードのように、 データベー"
-"ス独自の機能を利用したいときに使えます。 SQL/JDBCを直接使用しているアプリケー"
-"ションからHibernateへの移行も容易にしています。"
+"データベースのネイティブ SQL 方言を使ってクエリを表現することもできます。クエ"
+"リヒントや Oracle の <literal>CONNECT</literal> キーワードのように、データ"
+"ベース独自の機能を利用したいときに使えます。 SQL/JDBC を直接使用しているアプ"
+"リケーションから Hibernate への移行も容易にしています。"
#. Tag: para
-#: query_sql.xml:37
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate3 allows you to specify handwritten SQL, including stored "
"procedures, for all create, update, delete, and load operations."
msgstr ""
-"Hibernate3では、生成、更新、削除、読み込み処理のようなすべての SQL(ストアド"
-"プロシージャを含む)を手書きできます。"
+"Hibernate3 では、生成、更新、削除、読み込み処理のようなすべての SQL (ストア"
+"ドプロシージャを含む)を手書きできます。"
#. Tag: title
-#: query_sql.xml:41
-#, no-c-format
+#, fuzzy, no-c-format
msgid "Using a <literal>SQLQuery</literal>"
-msgstr "<literal>SQLQuery</literal> の使用"
+msgstr "もしくは <literal>List</literal> として、"
#. Tag: para
-#: query_sql.xml:43
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Execution of native SQL queries is controlled via the
<literal>SQLQuery</"
"literal> interface, which is obtained by calling <literal>Session."
"createSQLQuery()</literal>. The following sections describe how to use this
"
"API for querying."
msgstr ""
-"ネイティブなSQLクエリの実行は <literal>SQLQuery</literal> インターフェイスを"
-"通して制御します。 <literal>SQLQuery</literal> インターフェイスは "
-"<literal>Session.createSQLQuery()</literal> を呼び出して取得します。 このAPI"
+"ネイティブな SQL クエリの実行は <literal>SQLQuery</literal> インターフェース"
+"を通して制御します。 <literal>SQLQuery</literal> インターフェースは "
+"<literal>Session.createSQLQuery()</literal> を呼び出して取得します。この API "
"を使って問い合わせする方法を以下で説明します。"
#. Tag: title
-#: query_sql.xml:49
#, no-c-format
msgid "Scalar queries"
msgstr "スカラーのクエリ"
#. Tag: para
-#: query_sql.xml:51
#, no-c-format
msgid "The most basic SQL query is to get a list of scalars (values)."
-msgstr "最も基本的なSQLクエリはスカラー(値)のリストを得ることです。"
+msgstr "最も基本的な SQL クエリはスカラー(値)のリストを得ることです。"
-#. Tag: programlisting
-#: query_sql.xml:54
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[sess.createSQLQuery(\"SELECT * FROM CATS\").list();\n"
-"sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE FROM
CATS\").list();\n"
-"]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:56
-#, fuzzy, no-c-format
-msgid ""
"These will return a List of Object arrays (Object[]) with scalar values for "
"each column in the CATS table. Hibernate will use ResultSetMetadata to "
"deduce the actual order and types of the returned scalar values."
msgstr ""
-"これらはどちらも、CATSテーブルの各カラムのスカラー値を含む Object配列(Object"
-"[])のリストを返します。 返すスカラー値の実際の順番と型を推定するために、 "
-"HibernateはResultSetMetadataを使用します。"
+"これらはどちらも、 CATS テーブルの各カラムのスカラー値を含む Object 配列"
+"(Object[])のリストを返します。返すスカラー値の実際の順番と型を推定するため"
+"に、 Hibernate は ResultSetMetadata を使用します。"
#. Tag: para
-#: query_sql.xml:61
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"To avoid the overhead of using <literal>ResultSetMetadata</literal>, or
"
"simply to be more explicit in what is returned, one can use "
"<literal>addScalar()</literal>:"
msgstr ""
-"<literal>ResultSetMetadata</literal> を使用するオーバーヘッドを避けるため、 "
-"もしくは単に何が返されるか明確にするため、<literal>addScalar()</literal> を使"
+"<literal>ResultSetMetadata</literal> を使用するオーバーヘッドを避けるため、も"
+"しくは単に何が返されるか明確にするため、 <literal>addScalar()</literal> を使"
"えます。"
-#. Tag: programlisting
-#: query_sql.xml:65
-#, no-c-format
-msgid ""
-"<![CDATA[sess.createSQLQuery(\"SELECT * FROM CATS\")\n"
-" .addScalar(\"ID\", Hibernate.LONG)\n"
-" .addScalar(\"NAME\", Hibernate.STRING)\n"
-" .addScalar(\"BIRTHDATE\", Hibernate.DATE)\n"
-"]]>"
-msgstr ""
-
#. Tag: para
-#: query_sql.xml:67 query_sql.xml:113 query_sql.xml:198 query_sql.xml:349
#, no-c-format
msgid "This query specified:"
-msgstr "このクエリで指定されているものを下記に示します。"
+msgstr "このクエリで指定されているものを下記に示します:"
#. Tag: para
-#: query_sql.xml:71 query_sql.xml:117 query_sql.xml:353
#, no-c-format
msgid "the SQL query string"
-msgstr "SQLクエリ文字列"
+msgstr "SQL クエリ文字列"
#. Tag: para
-#: query_sql.xml:75
#, no-c-format
msgid "the columns and types to return"
msgstr "返されるカラムと型"
#. Tag: para
-#: query_sql.xml:79
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This will return Object arrays, but now it will not use "
"<literal>ResultSetMetadata</literal> but will instead explicitly get
the ID, "
@@ -146,47 +116,32 @@
"be returned, even though the query is using <literal>*</literal> and
could "
"return more than the three listed columns."
msgstr ""
-"これはまだObject配列を返しますが、 <literal>ResultSetMetdata</literal> を使用"
-"しません。 ただし、その代わりに基礎にあるリザルトセットから ID、NAME、"
-"BIRTHDATE カラムをそれぞれ Long、String、Short として明示的に取得します。 こ"
-"れは3つのカラムを返すのみであることも意味します。 たとえ、クエリが "
-"<literal>*</literal> を使用し、 列挙した3つより多くのカラムを返せるとしても"
-"です。"
+"これはまだ Object 配列を返しますが、 <literal>ResultSetMetdata</literal> を使"
+"用しません。ただし、その代わりに基礎にあるリザルトセットから ID、NAME、"
+"BIRTHDATE カラムをそれぞれ Long、String、Short として明示的に取得します。これ"
+"は3つのカラムを返すのみであることも意味します。たとえ、クエリが <literal>*</"
+"literal> を使用し、列挙した3つより多くのカラムを返せるとしてもです。"
#. Tag: para
-#: query_sql.xml:87
#, no-c-format
msgid ""
"It is possible to leave out the type information for all or some of the "
"scalars."
msgstr "スカラーの型情報を省くこともできます。"
-#. Tag: programlisting
-#: query_sql.xml:90
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[sess.createSQLQuery(\"SELECT * FROM CATS\")\n"
-" .addScalar(\"ID\", Hibernate.LONG)\n"
-" .addScalar(\"NAME\")\n"
-" .addScalar(\"BIRTHDATE\")\n"
-"]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:92
-#, fuzzy, no-c-format
-msgid ""
"This is essentially the same query as before, but now "
"<literal>ResultSetMetaData</literal> is used to determine the type of
NAME "
"and BIRTHDATE, where as the type of ID is explicitly specified."
msgstr ""
-"これは本質的に前と同じクエリですが、、 NAME と BIRTHDATE の型を決めるために "
-"<literal>ResultSetMetaData</literal> を使用します。一方、ID の型は明示的に指"
+"これは本質的に前と同じクエリですが、 NAME と BIRTHDATE の型を決めるために "
+"<literal>ResultSetMetaData</literal> を使用します。一方、 ID の型は明示的に指"
"定されています。"
#. Tag: para
-#: query_sql.xml:96
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"How the java.sql.Types returned from ResultSetMetaData is mapped to "
"Hibernate types is controlled by the Dialect. If a specific type is not "
@@ -194,18 +149,16 @@
"it via calls to <literal>registerHibernateType</literal> in the
Dialect."
msgstr ""
"ResultSetMetaData から返される java.sql.Types を Hibernate の型に マッピング"
-"することは、Dialect が制御します。 明示された型がマッピングされていないか、結"
+"することは、 Dialect が制御します。明示された型がマッピングされていないか、結"
"果の型が期待したものと異なる場合、 Dialect の "
-"<literal>registerHibernateType</literal> を呼び出し、 カスタマイズできます。"
+"<literal>registerHibernateType</literal> を呼び出し、カスタマイズできます。"
#. Tag: title
-#: query_sql.xml:104
#, no-c-format
msgid "Entity queries"
msgstr "エンティティのクエリ"
#. Tag: para
-#: query_sql.xml:106
#, no-c-format
msgid ""
"The above queries were all about returning scalar values, basically "
@@ -213,40 +166,27 @@
"get entity objects from a native sql query via
<literal>addEntity()</"
"literal>."
msgstr ""
-"ここまでのクエリは、すべてスカラー値を返すものでした。 基本的に、リザルトセッ"
-"トから「未加工」の値を返します。 以降では、<literal>addEntity()</literal> に"
-"より、ネイティブSQLクエリから エンティティオブジェクトを取得する方法を示しま"
+"ここまでのクエリは、すべてスカラー値を返すものでした。基本的に、リザルトセッ"
+"トから「未加工」の値を返します。以降では、 <literal>addEntity()</literal> に"
+"より、ネイティブ SQL クエリからエンティティオブジェクトを取得する方法を示しま"
"す。"
-#. Tag: programlisting
-#: query_sql.xml:111
-#, no-c-format
-msgid ""
-"<![CDATA[sess.createSQLQuery(\"SELECT * FROM
CATS\").addEntity(Cat.class);\n"
-"sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE FROM
CATS\").addEntity(Cat."
-"class);\n"
-"]]>"
-msgstr ""
-
#. Tag: para
-#: query_sql.xml:121
#, no-c-format
msgid "the entity returned by the query"
-msgstr "クエリが返すエンティティとSQLテーブルの別名"
+msgstr "クエリが返すエンティティと SQL テーブルの別名"
#. Tag: para
-#: query_sql.xml:125
#, no-c-format
msgid ""
"Assuming that Cat is mapped as a class with the columns ID, NAME and "
"BIRTHDATE the above queries will both return a List where each element is a "
"Cat entity."
msgstr ""
-"CatがID, NAME, BIRTHDATEのカラムを使ってクラスにマッピングされる場合、 上記の"
-"クエリはどちらも、要素がCatエンティティであるリストを返します。"
+"Cat が ID 、 NAME 、 BIRTHDATE のカラムを使ってクラスにマッピングされる場合、"
+"上記のクエリはどちらも、要素が Cat エンティティであるリストを返します。"
#. Tag: para
-#: query_sql.xml:129
#, no-c-format
msgid ""
"If the entity is mapped with a <literal>many-to-one</literal> to
another "
@@ -257,35 +197,23 @@
"to-one</literal> to a <literal>Dog</literal>:"
msgstr ""
"エンティティを別のエンティティに <literal>多対一</literal> でマッピングしてい"
-"る場合は、 ネイティブクエリを実行する際に、この別のエンティティを返すことも要"
-"求します。 さもなければ、データベース固有の「column not found(カラムが見つか"
-"りません)」エラーが発生します。 * 表記を使用した際は、追加のカラムが自動的に"
-"返されますが、 次の例のように、<literal>Dog</literal> に <literal>多対一</"
-"literal> であることを 明示することを私たちは好みます。"
+"る場合は、ネイティブクエリを実行する際に、この別のエンティティを返すことも要"
+"求します。さもなければ、データベース固有の「column not found(カラムが見つかり"
+"ません)」エラーが発生します。 * 表記を使用した際は、追加のカラムが自動的に返"
+"されますが、次の例のように、 <literal>Dog</literal> に <literal>多対一</"
+"literal> であることを明示することを私たちは好みます。"
-#. Tag: programlisting
-#: query_sql.xml:137
-#, no-c-format
-msgid ""
-"<![CDATA[sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE, DOG_ID FROM
CATS"
-"\").addEntity(Cat.class);\n"
-"]]>"
-msgstr ""
-
#. Tag: para
-#: query_sql.xml:139
#, no-c-format
msgid "This will allow cat.getDog() to function properly."
msgstr "これにより cat.getDog() が正しく機能します。"
#. Tag: title
-#: query_sql.xml:143
#, no-c-format
msgid "Handling associations and collections"
msgstr "関連とコレクションの操作"
#. Tag: para
-#: query_sql.xml:145
#, no-c-format
msgid ""
"It is possible to eagerly join in the <literal>Dog</literal> to avoid
the "
@@ -294,24 +222,12 @@
"association or collection."
msgstr ""
"プロキシを初期化するための余分な処理を避けるため、 <literal>Dog</literal> の"
-"中で即時結合できます。 これは <literal>addJoin()</literal> メソッドにより行い"
-"ます。 関連もしくはコレクションに結合できます。"
+"中で即時結合できます。これは <literal>addJoin()</literal> メソッドにより行い"
+"ます。関連もしくはコレクションに結合できます。"
-#. Tag: programlisting
-#: query_sql.xml:150
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[sess.createSQLQuery(\"SELECT c.ID, NAME, BIRTHDATE, DOG_ID, D_ID,
"
-"D_NAME FROM CATS c, DOGS d WHERE c.DOG_ID = d.D_ID\")\n"
-" .addEntity(\"cat\", Cat.class)\n"
-" .addJoin(\"cat.dog\");\n"
-"]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:152
-#, fuzzy, no-c-format
-msgid ""
"In this example, the returned <literal>Cat</literal>'s will have
their "
"<literal>dog</literal> property fully initialized without any extra
"
"roundtrip to the database. Notice that you added an alias name (\"cat\")
to "
@@ -319,81 +235,54 @@
"do the same eager joining for collections, e.g. if the
<literal>Cat</"
"literal> had a one-to-many to <literal>Dog</literal> instead."
msgstr ""
-"この例の中で、返される <literal>Cat</literal> は、 データベースへの余分処理な"
-"しで、 完全に初期化された <literal>dog</literal> プロパティを持ちます。 結合"
-"対象のプロパティへのパスを指定できるように、 別名(「cat」)を追加したことに"
-"注意してください。 コレクションの即時結合も同じようにできます。 たとえば、"
+"この例の中で、返される <literal>Cat</literal> は、データベースへの余分処理な"
+"しで、完全に初期化された <literal>dog</literal> プロパティを持ちます。結合対"
+"象のプロパティへのパスを指定できるように、別名(「cat」)を追加したことに注意"
+"してください。コレクションの即時結合も同じようにできます。たとえば、 "
"<literal>Cat</literal> が一対多で <literal>Dog</literal>
を持っていた場合、次"
"のようになります。"
-#. Tag: programlisting
-#: query_sql.xml:160
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE, D_ID, D_NAME,
"
-"CAT_ID FROM CATS c, DOGS d WHERE c.ID = d.CAT_ID\")\n"
-" .addEntity(\"cat\", Cat.class)\n"
-" .addJoin(\"cat.dogs\");\n"
-"]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:162
-#, fuzzy, no-c-format
-msgid ""
"At this stage you are reaching the limits of what is possible with native "
"queries, without starting to enhance the sql queries to make them usable in "
"Hibernate. Problems can arise when returning multiple entities of the same "
"type or when the default alias/column names are not enough."
msgstr ""
-"現在のところ、 Hibernateで使いやすくするためのSQLクエリの拡張なしに、 ネイ"
-"ティブクエリで何かを可能にする限界に来ています。 同じ型のエンティティを複数返"
-"す際や、デフォルトの別名や列名で十分ではない場合に、 問題は起こり始めます。"
+"現在のところ、 Hibernate で使いやすくするための SQL クエリの拡張なしに、ネイ"
+"ティブクエリで何かを可能にする限界に来ています。同じ型のエンティティを複数返"
+"す際や、デフォルトの別名や列名で十分ではない場合に、問題は起こり始めます。"
#. Tag: title
-#: query_sql.xml:170
#, no-c-format
msgid "Returning multiple entities"
msgstr "複数エンティティの取得"
#. Tag: para
-#: query_sql.xml:172
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Until now, the result set column names are assumed to be the same as the "
"column names specified in the mapping document. This can be problematic for "
"SQL queries that join multiple tables, since the same column names can "
"appear in more than one table."
msgstr ""
-"ここまでは、リザルトセットのカラム名は、 マッピングファイルで指定されたカラム"
-"名と同じであると仮定していました。 複数のテーブルが同じカラム名を持つ場合があ"
-"るため、 複数テーブルを結合するSQLクエリで問題となる場合があります。"
+"ここまでは、リザルトセットのカラム名は、マッピングドキュメントで指定されたカ"
+"ラム名と同じであると仮定していました。複数のテーブルが同じカラム名を持つ場合"
+"があるため、複数テーブルを結合する SQL クエリで問題となる場合があります。"
#. Tag: para
-#: query_sql.xml:177
#, no-c-format
msgid ""
"Column alias injection is needed in the following query (which most likely "
"will fail):"
msgstr ""
-"下記のような(失敗しそうな)クエリでは、 カラム別名インジェクション(column "
-"alias injection)が必要です。"
+"下記のような(失敗しそうな)クエリでは、カラム別名インジェクション(column "
+"alias injection)が必要です:"
-#. Tag: programlisting
-#: query_sql.xml:180
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[sess.createSQLQuery(\"SELECT c.*, m.* FROM CATS c, CATS m WHERE
c."
-"MOTHER_ID = c.ID\")\n"
-" .addEntity(\"cat\", Cat.class)\n"
-" .addEntity(\"mother\", Cat.class)\n"
-"]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:184
-#, fuzzy, no-c-format
-msgid ""
"The query was intended to return two Cat instances per row: a cat and its "
"mother. The query will, however, fail because there is a conflict of names; "
"the instances are mapped to the same column names. Also, on some databases "
@@ -401,48 +290,33 @@
"NAME\", etc. which are not equal to the columns specified in the mappings
"
"(\"ID\" and \"NAME\")."
msgstr ""
-"このクエリの意図は、 1行ごとに2つのCatインスタンス、つまり猫とその母親を返"
-"すということです。 同じカラム名にマッピングすることにより名前が衝突するため、"
-"このクエリは失敗します。 ベータベースによっては、返されるカラムの別名が \"c."
-"ID\"、\"c.NAME\" などの形式であり、 マッピングで指定されたカラム(\"ID\" と "
+"このクエリの意図は、1行ごとに2つの Cat インスタンス、つまり猫とその母親を返"
+"すということです。同じカラム名にマッピングすることにより名前が衝突するため、"
+"このクエリは失敗します。ベータベースによっては、返されるカラムの別名が \"c.ID"
+"\"、\"c.NAME\" などの形式であり、マッピングで指定されたカラム(\"ID\" と "
"\"NAME\")と等しくないため、失敗します。"
#. Tag: para
-#: query_sql.xml:193
#, no-c-format
msgid "The following form is not vulnerable to column name duplication:"
-msgstr "下記の形式は、カラム名が重複しても大丈夫です。"
+msgstr "下記の形式は、カラム名が重複しても大丈夫です:"
-#. Tag: programlisting
-#: query_sql.xml:196
-#, no-c-format
-msgid ""
-"<![CDATA[sess.createSQLQuery(\"SELECT {cat.*}, {mother.*} FROM CATS c,
CATS "
-"m WHERE c.MOTHER_ID = c.ID\")\n"
-" .addEntity(\"cat\", Cat.class)\n"
-" .addEntity(\"mother\", Cat.class)\n"
-"]]>"
-msgstr ""
-
#. Tag: para
-#: query_sql.xml:202
#, no-c-format
msgid ""
"the SQL query string, with placeholders for Hibernate to inject column "
"aliases"
msgstr ""
-"SQLクエリ文字列 (Hibernateがカラムの別名を挿入するためのプレースホルダを含"
+"SQL クエリ文字列 (Hibernate がカラムの別名を挿入するためのプレースホルダを含"
"む)"
#. Tag: para
-#: query_sql.xml:207
#, no-c-format
msgid "the entities returned by the query"
msgstr "クエリによって返されるエンティティ"
#. Tag: para
-#: query_sql.xml:211
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The {cat.*} and {mother.*} notation used above is a shorthand for \"all
"
"properties\". Alternatively, you can list the columns explicitly, but even
"
@@ -452,390 +326,287 @@
"from a different table (cat_log) to the one declared in the mapping "
"metadata. You can even use the property aliases in the where clause."
msgstr ""
-"上記で使用している {cat.*} と {mother.*} という表記は、 「すべてのプロパ"
-"ティ」を表す省略形です。 代わりに、明示的にカラムを列挙してもよいですが、 そ"
-"の場合は、Hibernateに各プロパティに対応するSQLカラムの別名を挿入させるべきで"
-"しょう。 カラムの別名のためのプレースホルダは、テーブルの別名によって修飾され"
-"たプロパティ名です。 下記の例では、別のテーブル cat_log から マッピングメタ"
-"データで定義された Cat とその母親を復元します。 もし好むなら、where節の中で"
+"上記で使用している {cat.*} と {mother.*} という表記は、「すべてのプロパティ」"
+"を表す省略形です。代わりに、明示的にカラムを列挙してもよいですが、その場合"
+"は、 Hibernate に各プロパティに対応する SQL カラムの別名を挿入させるべきで"
+"しょう。カラムの別名のためのプレースホルダは、テーブルの別名によって修飾され"
+"たプロパティ名です。下記の例では、別のテーブル cat_log から マッピングメタ"
+"データで定義された Cat とその母親を復元します。もし好むなら、 where 節の中で"
"も、プロパティの別名を使えます。"
-#. Tag: programlisting
-#: query_sql.xml:220
-#, no-c-format
-msgid ""
-"<![CDATA[String sql = \"SELECT ID as {c.id}, NAME as {c.name}, \" +
\n"
-" \"BIRTHDATE as {c.birthDate}, MOTHER_ID as {c.mother}, {mother.*}
"
-"\" +\n"
-" \"FROM CAT_LOG c, CAT_LOG m WHERE {c.mother} = c.ID\";\n"
-"\n"
-"List loggedCats = sess.createSQLQuery(sql)\n"
-" .addEntity(\"cat\", Cat.class)\n"
-" .addEntity(\"mother\", Cat.class).list()\n"
-"]]>"
-msgstr ""
-
#. Tag: title
-#: query_sql.xml:223
#, no-c-format
msgid "Alias and property references"
msgstr "別名とプロパティのリファレンス"
#. Tag: para
-#: query_sql.xml:225
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In most cases the above alias injection is needed. For queries relating to "
"more complex mappings, like composite properties, inheritance "
"discriminators, collections etc., you can use specific aliases that allow "
"Hibernate to inject the proper aliases."
msgstr ""
-"多くの場合、上記のような別名インジェクションが必要です。 ただし、複合プロパ"
-"ティ、継承識別子、コレクションなどのような より複雑なマッピングと関連するクエ"
-"リがなければです。 ある特定の別名を使用することにより、Hibernateは適切な別名"
+"多くの場合、上記のような別名インジェクションが必要です。ただし、複合プロパ"
+"ティ、継承識別子、コレクションなどのようなより複雑なマッピングと関連するクエ"
+"リがなければです。ある特定の別名を使用することにより、 Hibernate は適切な別名"
"を挿入できます。"
#. Tag: para
-#: query_sql.xml:230
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The following table shows the different ways you can use the alias "
"injection. Please note that the alias names in the result are simply "
"examples; each alias will have a unique and probably different name when "
"used."
msgstr ""
-"別名インジェクションとして使用できるものを下表に示します。 注意:下表の別名は"
-"一例です。 それぞれの別名は一意であり、使用する際にはおそらく異なる名前を持ち"
+"別名インジェクションとして使用できるものを下表に示します。注記:下表の別名は"
+"一例です。それぞれの別名は一意であり、使用する際にはおそらく異なる名前を持ち"
"ます。"
#. Tag: title
-#: query_sql.xml:236
#, no-c-format
msgid "Alias injection names"
msgstr "別名に挿入する名前"
#. Tag: entry
-#: query_sql.xml:247
#, no-c-format
msgid "Description"
msgstr "説明"
#. Tag: entry
-#: query_sql.xml:249
#, no-c-format
msgid "Syntax"
msgstr "構文"
#. Tag: entry
-#: query_sql.xml:251
#, no-c-format
msgid "Example"
msgstr "例"
#. Tag: entry
-#: query_sql.xml:257
#, no-c-format
msgid "A simple property"
msgstr "単純なプロパティ"
-#. Tag: literal
-#: query_sql.xml:259
+#. Tag: entry
#, no-c-format
-msgid "{[aliasname].[propertyname]"
-msgstr "{[aliasname].[propertyname]}"
+msgid "<literal>{[aliasname].[propertyname]</literal>"
+msgstr "<literal>{[aliasname].[propertyname]</literal>"
-#. Tag: literal
-#: query_sql.xml:261
+#. Tag: entry
#, no-c-format
-msgid "A_NAME as {item.name}"
-msgstr "A_NAME as {item.name}"
+msgid "<literal>A_NAME as {item.name}</literal>"
+msgstr "<literal>A_NAME as {item.name}</literal>"
#. Tag: entry
-#: query_sql.xml:265
#, no-c-format
msgid "A composite property"
msgstr "複合プロパティ"
-#. Tag: literal
-#: query_sql.xml:267
+#. Tag: entry
#, no-c-format
-msgid "{[aliasname].[componentname].[propertyname]}"
-msgstr "{[aliasname].[componentname].[propertyname]}"
+msgid
"<literal>{[aliasname].[componentname].[propertyname]}</literal>"
+msgstr
"<literal>{[aliasname].[componentname].[propertyname]}</literal>"
-#. Tag: literal
-#: query_sql.xml:269
+#. Tag: entry
#, no-c-format
-msgid "CURRENCY as {item.amount.currency}, VALUE as {item.amount.value}"
-msgstr "CURRENCY as {item.amount.currency}, VALUE as {item.amount.value}"
+msgid ""
+"<literal>CURRENCY as {item.amount.currency}, VALUE as
{item.amount.value}</"
+"literal>"
+msgstr ""
+"<literal>CURRENCY as {item.amount.currency}, VALUE as
{item.amount.value}</"
+"literal>"
#. Tag: entry
-#: query_sql.xml:274
#, no-c-format
msgid "Discriminator of an entity"
msgstr "エンティティのクラスを識別する値"
-#. Tag: literal
-#: query_sql.xml:276
+#. Tag: entry
#, no-c-format
-msgid "{[aliasname].class}"
-msgstr "{[aliasname].class}"
+msgid "<literal>{[aliasname].class}</literal>"
+msgstr "<literal>{[aliasname].class}</literal>"
-#. Tag: literal
-#: query_sql.xml:278
+#. Tag: entry
#, no-c-format
-msgid "DISC as {item.class}"
-msgstr "DISC as {item.class}"
+msgid "<literal>DISC as {item.class}</literal>"
+msgstr "<literal>DISC as {item.class}</literal>"
#. Tag: entry
-#: query_sql.xml:282
#, no-c-format
msgid "All properties of an entity"
msgstr "エンティティの全プロパティ"
-#. Tag: literal
-#: query_sql.xml:284 query_sql.xml:332
+#. Tag: entry
#, no-c-format
-msgid "{[aliasname].*}"
-msgstr "{[aliasname].*}"
+msgid "<literal>{[aliasname].*}</literal>"
+msgstr "<literal>{[aliasname].*}</literal>"
-#. Tag: literal
-#: query_sql.xml:286
+#. Tag: entry
#, no-c-format
-msgid "{item.*}"
-msgstr "{item.*}"
+msgid "<literal>{item.*}</literal>"
+msgstr "<literal>{item.*}</literal>"
#. Tag: entry
-#: query_sql.xml:290
#, no-c-format
msgid "A collection key"
msgstr "コレクションのキー"
-#. Tag: literal
-#: query_sql.xml:292
+#. Tag: entry
#, no-c-format
-msgid "{[aliasname].key}"
-msgstr "{[aliasname].key}"
+msgid "<literal>{[aliasname].key}</literal>"
+msgstr "<literal>{[aliasname].key}</literal>"
-#. Tag: literal
-#: query_sql.xml:294
+#. Tag: entry
#, no-c-format
-msgid "ORGID as {coll.key}"
-msgstr "ORGID as {coll.key}"
+msgid "<literal>ORGID as {coll.key}</literal>"
+msgstr "<literal>ORGID as {coll.key}</literal>"
#. Tag: entry
-#: query_sql.xml:298
#, no-c-format
msgid "The id of an collection"
-msgstr "コレクションのID"
+msgstr "コレクションの ID"
-#. Tag: literal
-#: query_sql.xml:300
+#. Tag: entry
#, no-c-format
-msgid "{[aliasname].id}"
-msgstr "{[aliasname].id}"
+msgid "<literal>{[aliasname].id}</literal>"
+msgstr "<literal>{[aliasname].id}</literal>"
-#. Tag: literal
-#: query_sql.xml:302
+#. Tag: entry
#, no-c-format
-msgid "EMPID as {coll.id}"
-msgstr "EMPID as {coll.id}"
+msgid "<literal>EMPID as {coll.id}</literal>"
+msgstr "<literal>EMPID as {coll.id}</literal>"
#. Tag: entry
-#: query_sql.xml:306
#, no-c-format
msgid "The element of an collection"
msgstr "コレクションの要素"
-#. Tag: literal
-#: query_sql.xml:308
+#. Tag: entry
#, no-c-format
-msgid "{[aliasname].element}"
-msgstr "{[aliasname].element}"
+msgid "<literal>{[aliasname].element}</literal>"
+msgstr "<literal>{[aliasname].element}</literal>"
-#. Tag: literal
-#: query_sql.xml:310
+#. Tag: entry
#, no-c-format
-msgid "XID as {coll.element}"
-msgstr "XID as {coll.element}"
+msgid "<literal>XID as {coll.element}</literal>"
+msgstr "<literal>XID as {coll.element}</literal>"
#. Tag: entry
-#: query_sql.xml:314
-#, fuzzy, no-c-format
+#, no-c-format
msgid "property of the element in the collection"
msgstr "コレクションの要素のプロパティ"
-#. Tag: literal
-#: query_sql.xml:316
+#. Tag: entry
#, no-c-format
-msgid "{[aliasname].element.[propertyname]}"
-msgstr "{[aliasname].element.[propertyname]}"
+msgid "<literal>{[aliasname].element.[propertyname]}</literal>"
+msgstr "<literal>{[aliasname].element.[propertyname]}</literal>"
-#. Tag: literal
-#: query_sql.xml:318
+#. Tag: entry
#, no-c-format
-msgid "NAME as {coll.element.name}"
-msgstr "NAME as {coll.element.name}"
+msgid "<literal>NAME as {coll.element.name}</literal>"
+msgstr "<literal>NAME as {coll.element.name}</literal>"
#. Tag: entry
-#: query_sql.xml:322
#, no-c-format
msgid "All properties of the element in the collection"
msgstr "コレクションの要素の全プロパティ"
-#. Tag: literal
-#: query_sql.xml:324
+#. Tag: entry
#, no-c-format
-msgid "{[aliasname].element.*}"
-msgstr "{[aliasname].element.*}"
+msgid "<literal>{[aliasname].element.*}</literal>"
+msgstr "<literal>{[aliasname].element.*}</literal>"
-#. Tag: literal
-#: query_sql.xml:326
+#. Tag: entry
#, no-c-format
-msgid "{coll.element.*}"
-msgstr "{coll.element.*}"
+msgid "<literal>{coll.element.*}</literal>"
+msgstr "<literal>{coll.element.*}</literal>"
#. Tag: entry
-#: query_sql.xml:330
#, no-c-format
msgid "All properties of the the collection"
msgstr "コレクションの全プロパティ"
-#. Tag: literal
-#: query_sql.xml:334
+#. Tag: entry
#, no-c-format
-msgid "{coll.*}"
-msgstr "{coll.*}"
+msgid "<literal>{coll.*}</literal>"
+msgstr "<literal>{coll.*}</literal>"
#. Tag: title
-#: query_sql.xml:343
#, no-c-format
msgid "Returning non-managed entities"
msgstr "管理されていないエンティティの取得"
#. Tag: para
-#: query_sql.xml:345
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is possible to apply a ResultTransformer to native SQL queries, allowing "
"it to return non-managed entities."
msgstr ""
-"ネイティブSQLクエリに ResultTransformer を適用できます。 下記のように、例え"
+"ネイティブ SQL クエリに ResultTransformer を適用できます。下記のように、例え"
"ば、管理されていないエンティティを返します。"
-#. Tag: programlisting
-#: query_sql.xml:347
-#, no-c-format
-msgid ""
-"<![CDATA[sess.createSQLQuery(\"SELECT NAME, BIRTHDATE FROM
CATS\")\n"
-" .setResultTransformer(Transformers.aliasToBean(CatDTO.class))]]>"
-msgstr ""
-
#. Tag: para
-#: query_sql.xml:357
#, no-c-format
msgid "a result transformer"
msgstr "結果を変換したもの"
#. Tag: para
-#: query_sql.xml:361
#, no-c-format
msgid ""
"The above query will return a list of <literal>CatDTO</literal> which
has "
"been instantiated and injected the values of NAME and BIRTHNAME into its "
"corresponding properties or fields."
msgstr ""
-"上記のクエリは、インスタンス化し、NAME と BIRTHDATE の値を 対応するプロパティ"
+"上記のクエリは、インスタンス化し、 NAME と BIRTHDATE の値を対応するプロパティ"
"もしくはフィールドに挿入した <literal>CatDTO</literal> のリストを返します。"
#. Tag: title
-#: query_sql.xml:368
#, no-c-format
msgid "Handling inheritance"
msgstr "継承の制御"
#. Tag: para
-#: query_sql.xml:370
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Native SQL queries which query for entities that are mapped as part of an "
"inheritance must include all properties for the baseclass and all its "
"subclasses."
msgstr ""
-"継承の一部としてマッピングされたエンティティを問い合わせるネイティブSQLクエリ"
-"は、 ベースのクラスとそのすべてのサブクラスのプロパティすべてを含まなければな"
-"りません。"
+"継承の一部としてマッピングされたエンティティを問い合わせるネイティブ SQL クエ"
+"リは、ベースのクラスとそのすべてのサブクラスのプロパティすべてを含まなければ"
+"なりません。"
#. Tag: title
-#: query_sql.xml:376
#, no-c-format
msgid "Parameters"
msgstr "パラメータ"
#. Tag: para
-#: query_sql.xml:378
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Native SQL queries support positional as well as named parameters:"
msgstr ""
-"ネイティブSQLクエリは、以下のように、 名前付きパラメータ(:name)と同様に位置"
-"パラメータをサポートします。"
+"ネイティブ SQL クエリは、以下のように、名前付きパラメータ(:name)と同様に位"
+"置パラメータをサポートします:"
-#. Tag: programlisting
-#: query_sql.xml:381
-#, no-c-format
-msgid ""
-"<![CDATA[Query query = sess.createSQLQuery(\"SELECT * FROM CATS WHERE NAME
"
-"like ?\").addEntity(Cat.class);\n"
-"List pusList = query.setString(0, \"Pus%\").list();\n"
-" \n"
-"query = sess.createSQLQuery(\"SELECT * FROM CATS WHERE NAME like
:name\")."
-"addEntity(Cat.class);\n"
-"List pusList = query.setString(\"name\", \"Pus%\").list();
]]>"
-msgstr ""
-
#. Tag: title
-#: query_sql.xml:389
#, no-c-format
msgid "Named SQL queries"
-msgstr "名前付きSQLクエリ"
+msgstr "名前付き SQL クエリ"
#. Tag: para
-#: query_sql.xml:391
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Named SQL queries can be defined in the mapping document and called in "
"exactly the same way as a named HQL query. In this case, you do "
"<emphasis>not</emphasis> need to call
<literal>addEntity()</literal>."
msgstr ""
-"名前付きSQLクエリはマッピングドキュメントで定義することができ、 名前付きHQLク"
-"エリと全く同じ方法で呼ぶことができます。 この場合、<literal>addEntity()</"
-"literal> を呼び出す必要は <emphasis>ない</emphasis> です。"
+"名前付き SQL クエリはマッピングドキュメントで定義することができ、名前付き "
+"HQL クエリと全く同じ方法で呼ぶことができます。この場合、 <literal>addEntity()"
+"</literal> を呼び出す必要は <emphasis>ありません</emphasis> 。"
-#. Tag: programlisting
-#: query_sql.xml:396
-#, no-c-format
-msgid ""
-"<![CDATA[<sql-query name=\"persons\">\n"
-" <return alias=\"person\"
class=\"eg.Person\"/>\n"
-" SELECT person.NAME AS {person.name},\n"
-" person.AGE AS {person.age},\n"
-" person.SEX AS {person.sex}\n"
-" FROM PERSON person\n"
-" WHERE person.NAME LIKE :namePattern\n"
-"</sql-query>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_sql.xml:398
-#, no-c-format
-msgid ""
-"<![CDATA[List people = sess.getNamedQuery(\"persons\")\n"
-" .setString(\"namePattern\", namePattern)\n"
-" .setMaxResults(50)\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: para
-#: query_sql.xml:400
#, fuzzy, no-c-format
msgid ""
"The <literal><return-join></literal> element is use to
join "
@@ -846,210 +617,92 @@
"<literal><return-join></literal> と
<literal><load-collection></"
"literal> 要素を使います。"
-#. Tag: programlisting
-#: query_sql.xml:404
-#, no-c-format
-msgid ""
-"<![CDATA[<sql-query name=\"personsWith\">\n"
-" <return alias=\"person\"
class=\"eg.Person\"/>\n"
-" <return-join alias=\"address\"
property=\"person.mailingAddress\"/>\n"
-" SELECT person.NAME AS {person.name},\n"
-" person.AGE AS {person.age},\n"
-" person.SEX AS {person.sex},\n"
-" address.STREET AS {address.street},\n"
-" address.CITY AS {address.city},\n"
-" address.STATE AS {address.state},\n"
-" address.ZIP AS {address.zip}\n"
-" FROM PERSON person\n"
-" JOIN ADDRESS address\n"
-" ON person.ID = address.PERSON_ID AND
address.TYPE='MAILING'\n"
-" WHERE person.NAME LIKE :namePattern\n"
-"</sql-query>]]>"
-msgstr ""
-
#. Tag: para
-#: query_sql.xml:406
#, no-c-format
msgid ""
"A named SQL query may return a scalar value. You must declare the column "
"alias and Hibernate type using the
<literal><return-scalar></literal> "
"element:"
msgstr ""
-"名前付きSQLクエリはスカラ値を返すこともできます。 <literal><return-"
-"scalar></literal> 要素を使って、 列の別名とHibernateの型を宣言しなければな"
-"りません。"
+"名前付き SQL クエリはスカラ値を返すこともできます。 <literal><return-"
+"scalar></literal> 要素を使って、列の別名と Hibernate の型を宣言しなければ"
+"なりません:"
-#. Tag: programlisting
-#: query_sql.xml:410
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<sql-query name=\"mySqlQuery\">\n"
-" <return-scalar column=\"name\"
type=\"string\"/>\n"
-" <return-scalar column=\"age\"
type=\"long\"/>\n"
-" SELECT p.NAME AS name,\n"
-" p.AGE AS age,\n"
-" FROM PERSON p WHERE p.NAME LIKE 'Hiber%'\n"
-"</sql-query>]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:412
-#, fuzzy, no-c-format
-msgid ""
"You can externalize the resultset mapping information in a
<literal><"
"resultset></literal> element which will allow you to either reuse them
"
"across several named queries or through the
<literal>setResultSetMapping()</"
"literal> API."
msgstr ""
-"リザルトセットのマッピング情報を <literal><resultset></literal>
に外出"
-"しすることができます。 複数の名前付きクエリで再利用したり、"
-"<literal>setResultSetMapping()</literal> APIを通して再利用したりできます。"
+"リザルトセットのマッピング情報を <literal><resultset></literal>
に外部"
+"化することができます。複数の名前付きクエリで再利用したり、 "
+"<literal>setResultSetMapping()</literal> API を通して再利用したりできます。"
-#. Tag: programlisting
-#: query_sql.xml:417
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<resultset name=\"personAddress\">\n"
-" <return alias=\"person\"
class=\"eg.Person\"/>\n"
-" <return-join alias=\"address\"
property=\"person.mailingAddress\"/>\n"
-"</resultset>\n"
-"\n"
-"<sql-query name=\"personsWith\"
resultset-ref=\"personAddress\">\n"
-" SELECT person.NAME AS {person.name},\n"
-" person.AGE AS {person.age},\n"
-" person.SEX AS {person.sex},\n"
-" address.STREET AS {address.street},\n"
-" address.CITY AS {address.city},\n"
-" address.STATE AS {address.state},\n"
-" address.ZIP AS {address.zip}\n"
-" FROM PERSON person\n"
-" JOIN ADDRESS address\n"
-" ON person.ID = address.PERSON_ID AND
address.TYPE='MAILING'\n"
-" WHERE person.NAME LIKE :namePattern\n"
-"</sql-query>]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:419
-#, fuzzy, no-c-format
-msgid ""
"You can, alternatively, use the resultset mapping information in your hbm "
"files directly in java code."
msgstr ""
-"代わりに、hbmファイル内のリザルトセットのマッピング情報を 直接Javaコードの中"
-"で使用できます。"
+"代わりに、 hbm ファイル内のリザルトセットのマッピング情報を直接 Java コードの"
+"中で使用できます。"
-#. Tag: programlisting
-#: query_sql.xml:422
-#, no-c-format
-msgid ""
-"<![CDATA[List cats = sess.createSQLQuery(\n"
-" \"select {cat.*}, {kitten.*} from cats cat, cats kitten where
kitten."
-"mother = cat.id\"\n"
-" )\n"
-" .setResultSetMapping(\"catAndKitten\")\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: title
-#: query_sql.xml:425
#, no-c-format
msgid "Using return-property to explicitly specify column/alias names"
msgstr "列と列の別名を明示的に指定するために return-property を使う"
#. Tag: para
-#: query_sql.xml:428
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can explicitly tell Hibernate what column aliases to use with "
"<literal><return-property></literal>, instead of using
the <literal>{}"
"</literal>-syntax to let Hibernate inject its own aliases.For example:"
msgstr ""
"別名を挿入するために <literal>{}</literal> 構文を使う代わりに、
<literal><"
-"return-property></literal> を使い、 どの列の別名を使うのかを明示できます。"
+"return-property></literal> を使い、どの列の別名を使うのかを明示できます。"
-#. Tag: programlisting
-#: query_sql.xml:433
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<sql-query name=\"mySqlQuery\">\n"
-" <return alias=\"person\"
class=\"eg.Person\">\n"
-" <return-property name=\"name\"
column=\"myName\"/>\n"
-" <return-property name=\"age\"
column=\"myAge\"/>\n"
-" <return-property name=\"sex\"
column=\"mySex\"/>\n"
-" </return>\n"
-" SELECT person.NAME AS myName,\n"
-" person.AGE AS myAge,\n"
-" person.SEX AS mySex,\n"
-" FROM PERSON person WHERE person.NAME LIKE :name\n"
-"</sql-query>\n"
-"]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:435
-#, fuzzy, no-c-format
-msgid ""
"<literal><return-property></literal> also works with
multiple columns. "
"This solves a limitation with the <literal>{}</literal>-syntax which
cannot "
"allow fine grained control of multi-column properties."
msgstr ""
-"<literal><return-property></literal> は複数の列も扱えます。
これは、複"
-"数列のプロパティをきめ細かく制御できないという、 <literal>{}</literal> 構文の"
-"制限を解決します。"
+"<literal><return-property></literal>
は複数の列も扱えます。これは、複数"
+"列のプロパティをきめ細かく制御できないという、 <literal>{}</literal> 構文の制"
+"限を解決します。"
-#. Tag: programlisting
-#: query_sql.xml:440
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<sql-query
name=\"organizationCurrentEmployments\">\n"
-" <return alias=\"emp\" class=\"Employment\">\n"
-" <return-property name=\"salary\">\n"
-" <return-column name=\"VALUE\"/>\n"
-" <return-column name=\"CURRENCY\"/>\n"
-" </return-property>\n"
-" <return-property name=\"endDate\"
column=\"myEndDate\"/>\n"
-" </return>\n"
-" SELECT EMPLOYEE AS {emp.employee}, EMPLOYER AS {emp.employer},\n"
-" STARTDATE AS {emp.startDate}, ENDDATE AS {emp.endDate},\n"
-" REGIONCODE as {emp.regionCode}, EID AS {emp.id}, VALUE, CURRENCY\n"
-" FROM EMPLOYMENT\n"
-" WHERE EMPLOYER = :id AND ENDDATE IS NULL\n"
-" ORDER BY STARTDATE ASC\n"
-"</sql-query>]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:442
-#, fuzzy, no-c-format
-msgid ""
"In this example <literal><return-property></literal> was
used in "
"combination with the <literal>{}</literal>-syntax for injection. This
allows "
"users to choose how they want to refer column and properties."
msgstr ""
"この例では、挿入のための <literal>{}</literal> 構文といっしょに、 "
"<literal><return-property></literal>
を使っていることに注意してくださ"
-"い。 列とプロパティをどのように参照するかを選べます。"
+"い。列とプロパティをどのように参照するかを選べます。"
#. Tag: para
-#: query_sql.xml:447
#, no-c-format
msgid ""
"If your mapping has a discriminator you must use
<literal><return-"
"discriminator></literal> to specify the discriminator column."
msgstr ""
"マッピングに discriminator が含まれている場合、 discriminator の列を指定する"
-"ために、<return-discriminator> を使わなければなりません。"
+"ために、 <literal><return-discriminator></literal>
を使わなければなりま"
+"せん。"
#. Tag: title
-#: query_sql.xml:453
#, no-c-format
msgid "Using stored procedures for querying"
msgstr "問い合わせするためにストアドプロシージャを使う"
#. Tag: para
-#: query_sql.xml:455
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate3 provides support for queries via stored procedures and functions.
"
"Most of the following documentation is equivalent for both. The stored "
@@ -1057,80 +710,37 @@
"able to work with Hibernate. An example of such a stored function in Oracle "
"9 and higher is as follows:"
msgstr ""
-"Hibernateはバージョン3から、ストアドプロシージャとストアド関数経由の問い合わ"
-"せが サポートされました。 以降の文書の多くは、両方に当てはまります。 ストアド"
-"プロシージャやストアド関数をHibernateで使うためには、 1番目の出力パラメータと"
+"Hibernate はバージョン3から、ストアドプロシージャとストアド関数経由の問い合わ"
+"せがサポートされました。以降の文書の多くは、両方に当てはまります。ストアドプ"
+"ロシージャやストアド関数を Hibernate で使うためには、1番目の出力パラメータと"
"してリザルトセットを返さなければなりません。 Oracle 9(もしくはそれ以上のバー"
-"ジョン)のストアドプロシージャの例を以下に示します。"
+"ジョン)のストアドプロシージャの例を以下に示します:"
-#. Tag: programlisting
-#: query_sql.xml:461
-#, no-c-format
-msgid ""
-"<![CDATA[CREATE OR REPLACE FUNCTION selectAllEmployments\n"
-" RETURN SYS_REFCURSOR\n"
-"AS\n"
-" st_cursor SYS_REFCURSOR;\n"
-"BEGIN\n"
-" OPEN st_cursor FOR\n"
-" SELECT EMPLOYEE, EMPLOYER,\n"
-" STARTDATE, ENDDATE,\n"
-" REGIONCODE, EID, VALUE, CURRENCY\n"
-" FROM EMPLOYMENT;\n"
-" RETURN st_cursor;\n"
-" END;]]>"
-msgstr ""
-
#. Tag: para
-#: query_sql.xml:463
#, no-c-format
msgid "To use this query in Hibernate you need to map it via a named query."
msgstr ""
-"Hibernateでこのクエリを使うためには、 名前付きクエリでマッピングする必要があ"
+"Hibernate でこのクエリを使うためには、名前付きクエリでマッピングする必要があ"
"ります。"
-#. Tag: programlisting
-#: query_sql.xml:466
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<sql-query name=\"selectAllEmployees_SP\"
callable=\"true\">\n"
-" <return alias=\"emp\" class=\"Employment\">\n"
-" <return-property name=\"employee\"
column=\"EMPLOYEE\"/>\n"
-" <return-property name=\"employer\"
column=\"EMPLOYER\"/>\n"
-" <return-property name=\"startDate\"
column=\"STARTDATE\"/>\n"
-" <return-property name=\"endDate\"
column=\"ENDDATE\"/>\n"
-" <return-property name=\"regionCode\"
column=\"REGIONCODE\"/>\n"
-" <return-property name=\"id\"
column=\"EID\"/>\n"
-" <return-property name=\"salary\">\n"
-" <return-column name=\"VALUE\"/>\n"
-" <return-column name=\"CURRENCY\"/>\n"
-" </return-property>\n"
-" </return>\n"
-" { ? = call selectAllEmployments() }\n"
-"</sql-query>]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:468
-#, fuzzy, no-c-format
-msgid ""
"Stored procedures currently only return scalars and entities.
<literal><"
"return-join></literal> and
<literal><load-collection></literal> are "
"not supported."
msgstr ""
-"注意:今のところ、ストアドプロシージャはスカラとエンティティを返すのみです。 "
+"注記:今のところ、ストアドプロシージャはスカラとエンティティを返すのみです。 "
"<literal><return-join></literal> と
<literal><load-collection></"
"literal> はサポートされていません。"
#. Tag: title
-#: query_sql.xml:473
#, no-c-format
msgid "Rules/limitations for using stored procedures"
msgstr "ストアドプロシージャを使う上でのルールと制限"
#. Tag: para
-#: query_sql.xml:475
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You cannot use stored procedures with Hibernate unless you follow some "
"procedure/function rules. If they do not follow those rules they are not "
@@ -1139,45 +749,41 @@
"different for each database, since database vendors have different stored "
"procedure semantics/syntax."
msgstr ""
-"Hibernateでストアドプロシージャや関数を使うためには、 そのプロシージャはいく"
-"つかのルールに準拠する必要があります。 ルールに準拠していないプロシージャは、"
-"Hibernateで使うことはできません。 それでも、準拠していないプロシージャを使い"
+"Hibernate でストアドプロシージャや関数を使うためには、そのプロシージャはいく"
+"つかのルールに準拠する必要があります。ルールに準拠していないプロシージャは、 "
+"Hibernate で使うことはできません。それでも、準拠していないプロシージャを使い"
"たいのであれば、 <literal>session.connection()</literal> を通じて実行しなけれ"
-"ばなりません。 ルールはデータベースごとに異なります。 ストアドプロシージャの"
-"セマンティックスとシンタックスは、 データベースベンダごとに異なるためです。"
+"ばなりません。ルールはデータベースごとに異なります。ストアドプロシージャのセ"
+"マンティックスとシンタックスは、データベースベンダごとに異なるためです。"
#. Tag: para
-#: query_sql.xml:482
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Stored procedure queries cannot be paged with
<literal>setFirstResult()/"
"setMaxResults()</literal>."
msgstr ""
-"<literal>setFirstResult()/setMaxResults()</literal> を使って、 ストアドプロ"
+"<literal>setFirstResult()/setMaxResults()</literal> を使って、ストアドプロ"
"シージャクエリをページ分けすることはできません。"
#. Tag: para
-#: query_sql.xml:485
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The recommended call form is standard SQL92: <literal>{ ? = call
functionName"
"(<parameters>) }</literal> or <literal>{ ? = call
procedureName(<"
"parameters>}</literal>. Native call syntax is not supported."
msgstr ""
-"推奨する呼び出し方は、標準であるSQL92に従うことです。 <literal>{ ? = call "
+"推奨する呼び出し方は、標準である SQL92 に従うことです。 <literal>{ ? = call "
"functionName(<parameters>) }</literal> や <literal>{ ? =
call "
-"procedureName(<parameters>) }</literal> です。 ネイティブな呼び出し構文"
-"はサポートされていません。"
+"procedureName(<parameters>}</literal> です。ネイティブな呼び出し構文は"
+"サポートされていません。"
#. Tag: para
-#: query_sql.xml:490
#, no-c-format
msgid "For Oracle the following rules apply:"
-msgstr "Oracleには下記のルールが適用されます。"
+msgstr "Oracle には下記のルールが適用されます:"
#. Tag: para
-#: query_sql.xml:494
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A function must return a result set. The first parameter of a procedure must
"
"be an <literal>OUT</literal> that returns a result set. This is done by
"
@@ -1185,49 +791,44 @@
"you need to define a <literal>REF CURSOR</literal> type. See Oracle
"
"literature for further information."
msgstr ""
-"関数はリザルトセットを返さなければなりません。 プロシージャの第一引数はリザル"
-"トセットを返すため、 <literal>OUT</literal> でなければなりません。 Oracle 9と"
-"10では、<literal>SYS_REFCURSOR</literal> を使うことによってできます。 Oracle"
-"では <literal>REF CURSOR</literal> 型を定義する必要があります。 Oracleの文献"
-"を参照してください。"
+"関数はリザルトセットを返さなければなりません。プロシージャの第一引数はリザル"
+"トセットを返すため、 <literal>OUT</literal> でなければなりません。 Oracle 9 "
+"と 10 では、 <literal>SYS_REFCURSOR</literal> を使うことによってできます。 "
+"Oracle では <literal>REF CURSOR</literal> 型を定義する必要があります。 "
+"Oracle の文献を参照してください。"
#. Tag: para
-#: query_sql.xml:503
#, no-c-format
msgid "For Sybase or MS SQL server the following rules apply:"
-msgstr "SybaseとMS SQLサーバーに適用されるルールを下記に示します。"
+msgstr "Sybase と MS SQL サーバーに適用されるルールを下記に示します:"
#. Tag: para
-#: query_sql.xml:507
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The procedure must return a result set. Note that since these servers can "
"return multiple result sets and update counts, Hibernate will iterate the "
"results and take the first result that is a result set as its return value. "
"Everything else will be discarded."
msgstr ""
-"プロシージャはリザルトセットを返さなければなりません。 サーバーは複数のリザル"
-"トセットと更新カウントを返しますが、 Hibernateは1つ目のリザルトセットだけを返"
-"すことに注意してください。 その他はすべて捨てられます。"
+"プロシージャはリザルトセットを返さなければなりません。サーバーは複数のリザル"
+"トセットと更新カウントを返しますが、 Hibernate は1つ目のリザルトセットだけを"
+"返すことに注意してください。その他はすべて捨てられます。"
#. Tag: para
-#: query_sql.xml:515
#, no-c-format
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 ""
-"プロシージャの中で <literal>SET NOCOUNT ON</literal> を有効にできれば、 おそ"
-"らく効率がよくなるでしょう。 しかし、これは必要条件ではありません。"
+"プロシージャの中で <literal>SET NOCOUNT ON</literal> を有効にできれば、おそら"
+"く効率がよくなるでしょう。しかし、これは必要条件ではありません。"
#. Tag: title
-#: query_sql.xml:525
#, no-c-format
msgid "Custom SQL for create, update and delete"
-msgstr "作成、更新、削除のためのカスタムSQL"
+msgstr "作成、更新、削除のためのカスタム SQL"
#. Tag: para
-#: query_sql.xml:527
#, no-c-format
msgid ""
"Hibernate3 can use custom SQL statements for create, update, and delete "
@@ -1237,79 +838,43 @@
"<literal><sql-delete></literal>, and
<literal><sql-update></"
"literal> override these strings:"
msgstr ""
-"Hibernate3は作成、更新、削除処理のためのカスタムSQL文を使用できます。 クラス"
-"とコレクションの永続化機構は、コンフィグレーション時に生成された文字列 "
-"(insertsql、deletesql、updatesqlなど)のセットをすでに保持しています。 これ"
+"Hibernate3 は作成、更新、削除処理のためのカスタム SQL 文を使用できます。クラ"
+"スとコレクションの永続化機構は、コンフィグレーション時に生成された文字列 "
+"(insertsql、deletesql、updatesql など)のセットをすでに保持しています。これ"
"らの文字列より、 <literal><sql-insert></literal>、
<literal><sql-"
"delete></literal>、
<literal><sql-update></literal> というマッピング"
-"タグが優先されます。"
+"タグが優先されます:"
-#. Tag: programlisting
-#: query_sql.xml:535
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"increment\"/>\n"
-" </id>\n"
-" <property name=\"name\" not-null=\"true\"/>\n"
-" <sql-insert>INSERT INTO PERSON (NAME, ID) VALUES ( UPPER(?), ?
)</sql-"
-"insert>\n"
-" <sql-update>UPDATE PERSON SET NAME=UPPER(?) WHERE
ID=?</sql-update>\n"
-" <sql-delete>DELETE FROM PERSON WHERE ID=?</sql-delete>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:537
-#, fuzzy, no-c-format
-msgid ""
"The SQL is directly executed in your database, so you can use any dialect "
"you like. This will reduce the portability of your mapping if you use "
"database specific SQL."
msgstr ""
-"SQLを直接データベースで実行するため、好みの方言を自由に使用できます。 データ"
-"ベース独自のSQLを使えば、当然マッピングのポータビリティが下がります。"
+"SQL を直接データベースで実行するため、好みの方言を自由に使用できます。データ"
+"ベース独自の SQL を使えば、当然マッピングのポータビリティが下がります。"
#. Tag: para
-#: query_sql.xml:541
#, no-c-format
msgid ""
"Stored procedures are supported if the <literal>callable</literal>
attribute "
"is set:"
msgstr ""
-"<literal>callable</literal> 属性をセットすれば、 ストアドプロシージャを使用で"
-"きます。"
+"<literal>callable</literal> 属性をセットすれば、ストアドプロシージャを使用で"
+"きます:"
-#. Tag: programlisting
-#: query_sql.xml:544
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"increment\"/>\n"
-" </id>\n"
-" <property name=\"name\" not-null=\"true\"/>\n"
-" <sql-insert callable=\"true\">{call createPerson (?,
?)}</sql-insert>\n"
-" <sql-delete callable=\"true\">{? = call deletePerson
(?)}</sql-delete>\n"
-" <sql-update callable=\"true\">{? = call updatePerson (?,
?)}</sql-"
-"update>\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:546
-#, fuzzy, no-c-format
-msgid ""
"The order of the positional parameters is vital, as they must be in the same
"
"sequence as Hibernate expects them."
msgstr ""
-"今のところ、位置パラメータの順番はとても重要です。 すなわち、Hibernateが期待"
+"今のところ、位置パラメータの順番はとても重要です。すなわち、 Hibernate が期待"
"する順序でなければなりません。"
#. Tag: para
-#: query_sql.xml:549
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can view the expected order by enabling debug logging for the "
"<literal>org.hibernate.persister.entity</literal> level. With this
level "
@@ -1318,153 +883,666 @@
"your custom SQL in the mapping files, as this will override the Hibernate "
"generated static SQL."
msgstr ""
-"<literal>org.hiberante.persister.entity</literal> レベルのデバッグログを 有効"
-"にすることによって、期待される順番を確かめられます。 このレベルを有効にするこ"
-"とにより、エンティティの作成、更新、削除などで 使用される静的なSQLが出力され"
-"ます。 (期待される順序を確認するためには、Hibernateが生成する静的なSQLをオー"
-"バーライドする カスタムSQLをマッピングファイルに含めないことを忘れないでくだ"
-"さい。)"
+"<literal>org.hiberante.persister.entity</literal> レベルのデバッグログを有効"
+"にすることによって、期待される順番を確かめられます。このレベルを有効にするこ"
+"とにより、エンティティの作成、更新、削除などで使用される静的な SQL が出力され"
+"ます。(期待される順序を確認するためには、 Hibernate が生成する静的な SQL を"
+"オーバーライドするカスタム SQL をマッピングファイルに含めないことを忘れないで"
+"ください。)"
#. Tag: para
-#: query_sql.xml:556
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The stored procedures are in most cases required to return the number of "
"rows inserted, updated and deleted, as Hibernate has some runtime checks for
"
"the success of the statement. Hibernate always registers the first statement
"
"parameter as a numeric output parameter for the CUD operations:"
msgstr ""
-"ストアドプロシージャは挿入/更新/削除された行数を返す必要があります (読み込み"
-"の場合は、返さないよりは返す方がよいです)。 実行時にHibernateがSQL文の成功を"
-"チェックするからです。 Hibernateは、CUD処理のための数値の出力パラメータとし"
-"て、 SQL文の最初のパラメータをいつも記録します。"
+"ストアドプロシージャは挿入/更新/削除された行数を返す必要があります(読み込み"
+"の場合は、返さないよりは返す方がよいです)。実行時に Hibernate が SQL 文の成"
+"功をチェックするからです。 Hibernate は、 CUD 処理のための数値の出力パラメー"
+"タとして、 SQL 文の最初のパラメータをいつも記録します:"
-#. Tag: programlisting
-#: query_sql.xml:562
-#, no-c-format
-msgid ""
-"<![CDATA[CREATE OR REPLACE FUNCTION updatePerson (uid IN NUMBER, uname IN
"
-"VARCHAR2)\n"
-" RETURN NUMBER IS\n"
-"BEGIN\n"
-"\n"
-" update PERSON\n"
-" set\n"
-" NAME = uname,\n"
-" where\n"
-" ID = uid;\n"
-"\n"
-" return SQL%ROWCOUNT;\n"
-"\n"
-"END updatePerson;]]>"
-msgstr ""
-
#. Tag: title
-#: query_sql.xml:566
#, no-c-format
msgid "Custom SQL for loading"
-msgstr "ロードのためのカスタムSQL"
+msgstr "ロードのためのカスタム SQL"
#. Tag: para
-#: query_sql.xml:568
-#, fuzzy, no-c-format
+#, no-c-format
msgid "You can also declare your own SQL (or HQL) queries for entity loading:"
msgstr ""
-"エンティティを読み込むための独自のSQL(もしくはHQL)クエリも宣言できます。"
+"エンティティを読み込むための独自の SQL (もしくは HQL)クエリも宣言できます:"
-#. Tag: programlisting
-#: query_sql.xml:571
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<sql-query name=\"person\">\n"
-" <return alias=\"pers\" class=\"Person\"
lock-mode=\"upgrade\"/>\n"
-" SELECT NAME AS {pers.name}, ID AS {pers.id}\n"
-" FROM PERSON\n"
-" WHERE ID=?\n"
-" FOR UPDATE\n"
-"</sql-query>]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:573
-#, fuzzy, no-c-format
-msgid ""
"This is just a named query declaration, as discussed earlier. You can "
"reference this named query in a class mapping:"
msgstr ""
-"これは、まさに(以前議論した)名前付きクエリの宣言です。 この名前付きクエリを"
-"クラスのマッピングから参照できます。"
+"これは、まさに(以前議論した)名前付きクエリの宣言です。この名前付きクエリを"
+"クラスのマッピングから参照できます:"
-#. Tag: programlisting
-#: query_sql.xml:576
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Person\">\n"
-" <id name=\"id\">\n"
-" <generator class=\"increment\"/>\n"
-" </id>\n"
-" <property name=\"name\" not-null=\"true\"/>\n"
-" <loader query-ref=\"person\"/>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: query_sql.xml:578
#, no-c-format
msgid "This even works with stored procedures."
msgstr "これはストアドプロシージャでさえも動作します。"
#. Tag: para
-#: query_sql.xml:580
-#, fuzzy, no-c-format
+#, no-c-format
msgid "You can even define a query for collection loading:"
-msgstr "次のように、コレクションをロードするためのクエリさえ定義してよいです。"
+msgstr "次のように、コレクションをロードするためのクエリさえ定義してよいです:"
-#. Tag: programlisting
-#: query_sql.xml:582
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<set name=\"employments\"
inverse=\"true\">\n"
-" <key/>\n"
-" <one-to-many class=\"Employment\"/>\n"
-" <loader query-ref=\"employments\"/>\n"
-"</set>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: query_sql.xml:584
-#, no-c-format
-msgid ""
-"<![CDATA[<sql-query name=\"employments\">\n"
-" <load-collection alias=\"emp\"
role=\"Person.employments\"/>\n"
-" SELECT {emp.*}\n"
-" FROM EMPLOYMENT emp\n"
-" WHERE EMPLOYER = :id\n"
-" ORDER BY STARTDATE ASC, EMPLOYEE ASC\n"
-"</sql-query>]]>"
-msgstr ""
-
-#. Tag: para
-#: query_sql.xml:586
-#, fuzzy, no-c-format
-msgid ""
"You can also define an entity loader that loads a collection by join "
"fetching:"
msgstr ""
-"次のように、結合フェッチによりコレクションをロードする エンティティローダーを"
-"定義できます。"
+"次のように、結合フェッチによりコレクションをロードするエンティティローダーを"
+"定義できます:"
-#. Tag: programlisting
-#: query_sql.xml:589
-#, no-c-format
-msgid ""
-"<![CDATA[<sql-query name=\"person\">\n"
-" <return alias=\"pers\" class=\"Person\"/>\n"
-" <return-join alias=\"emp\"
property=\"pers.employments\"/>\n"
-" SELECT NAME AS {pers.*}, {emp.*}\n"
-" FROM PERSON pers\n"
-" LEFT OUTER JOIN EMPLOYMENT emp\n"
-" ON pers.ID = emp.PERSON_ID\n"
-" WHERE ID=?\n"
-"</sql-query>]]>"
-msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.createSQLQuery(\"SELECT * FROM
CATS\").list();\n"
+#~ "sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE FROM
CATS\").list();\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "sess.createSQLQuery(\"SELECT * FROM CATS\").list();\n"
+#~ "sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE FROM
CATS\").list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.createSQLQuery(\"SELECT * FROM CATS\")\n"
+#~ " .addScalar(\"ID\", Hibernate.LONG)\n"
+#~ " .addScalar(\"NAME\", Hibernate.STRING)\n"
+#~ " .addScalar(\"BIRTHDATE\", Hibernate.DATE)\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "sess.createSQLQuery(\"SELECT * FROM CATS\")\n"
+#~ " .addScalar(\"ID\", Hibernate.LONG)\n"
+#~ " .addScalar(\"NAME\", Hibernate.STRING)\n"
+#~ " .addScalar(\"BIRTHDATE\", Hibernate.DATE)"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.createSQLQuery(\"SELECT * FROM CATS\")\n"
+#~ " .addScalar(\"ID\", Hibernate.LONG)\n"
+#~ " .addScalar(\"NAME\")\n"
+#~ " .addScalar(\"BIRTHDATE\")\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "sess.createSQLQuery(\"SELECT * FROM CATS\")\n"
+#~ " .addScalar(\"ID\", Hibernate.LONG)\n"
+#~ " .addScalar(\"NAME\")\n"
+#~ " .addScalar(\"BIRTHDATE\")"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.createSQLQuery(\"SELECT * FROM
CATS\").addEntity(Cat."
+#~ "class);\n"
+#~ "sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE FROM
CATS\").addEntity"
+#~ "(Cat.class);\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "sess.createSQLQuery(\"SELECT * FROM
CATS\").addEntity(Cat.class);\n"
+#~ "sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE FROM
CATS\").addEntity"
+#~ "(Cat.class);"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE, DOG_ID FROM
"
+#~ "CATS\").addEntity(Cat.class);\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE, DOG_ID FROM
CATS\")."
+#~ "addEntity(Cat.class);"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.createSQLQuery(\"SELECT c.ID, NAME, BIRTHDATE, DOG_ID,
"
+#~ "D_ID, D_NAME FROM CATS c, DOGS d WHERE c.DOG_ID = d.D_ID\")\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ " .addJoin(\"cat.dog\");\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "sess.createSQLQuery(\"SELECT c.ID, NAME, BIRTHDATE, DOG_ID, D_ID, D_NAME
"
+#~ "FROM CATS c, DOGS d \n"
+#~ " WHERE c.DOG_ID = d.D_ID\")\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ " .addJoin(\"cat.dog\");"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE, D_ID, D_NAME,
"
+#~ "CAT_ID FROM CATS c, DOGS d WHERE c.ID = d.CAT_ID\")\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ " .addJoin(\"cat.dogs\");\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "sess.createSQLQuery(\"SELECT ID, NAME, BIRTHDATE, D_ID, D_NAME, CAT_ID
"
+#~ "FROM CATS c, DOGS d\n"
+#~ " WHERE c.ID = d.CAT_ID\")\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ " .addJoin(\"cat.dogs\");"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.createSQLQuery(\"SELECT c.*, m.* FROM CATS c, CATS m
WHERE "
+#~ "c.MOTHER_ID = c.ID\")\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ " .addEntity(\"mother\", Cat.class)\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "sess.createSQLQuery(\"SELECT c.*, m.* FROM CATS c, CATS m WHERE c."
+#~ "MOTHER_ID = c.ID\")\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ " .addEntity(\"mother\", Cat.class)"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.createSQLQuery(\"SELECT {cat.*}, {mother.*} FROM CATS c,
"
+#~ "CATS m WHERE c.MOTHER_ID = c.ID\")\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ " .addEntity(\"mother\", Cat.class)\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "sess.createSQLQuery(\"SELECT {cat.*}, {mother.*} FROM CATS c, CATS m
"
+#~ "WHERE c.MOTHER_ID = c.ID\")\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ " .addEntity(\"mother\", Cat.class)"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[String sql = \"SELECT ID as {c.id}, NAME as {c.name}, \" +
\n"
+#~ " \"BIRTHDATE as {c.birthDate}, MOTHER_ID as {c.mother},
{mother."
+#~ "*} \" +\n"
+#~ " \"FROM CAT_LOG c, CAT_LOG m WHERE {c.mother} =
c.ID\";\n"
+#~ "\n"
+#~ "List loggedCats = sess.createSQLQuery(sql)\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ " .addEntity(\"mother\", Cat.class).list()\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "String sql = \"SELECT ID as {c.id}, NAME as {c.name}, \" + \n"
+#~ " \"BIRTHDATE as {c.birthDate}, MOTHER_ID as {c.mother},
{mother."
+#~ "*} \" +\n"
+#~ " \"FROM CAT_LOG c, CAT_LOG m WHERE {c.mother} =
c.ID\";\n"
+#~ "\n"
+#~ "List loggedCats = sess.createSQLQuery(sql)\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ " .addEntity(\"mother\", Cat.class).list()"
+
+#~ msgid "{item.*}"
+#~ msgstr "{item.*}"
+
+#~ msgid "{coll.*}"
+#~ msgstr "{coll.*}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.createSQLQuery(\"SELECT NAME, BIRTHDATE FROM
CATS\")\n"
+#~ "
.setResultTransformer(Transformers.aliasToBean(CatDTO.class))]]>"
+#~ msgstr ""
+#~ "sess.createSQLQuery(\"SELECT NAME, BIRTHDATE FROM CATS\")\n"
+#~ " .setResultTransformer(Transformers.aliasToBean(CatDTO.class))"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Query query = sess.createSQLQuery(\"SELECT * FROM CATS WHERE
"
+#~ "NAME like ?\").addEntity(Cat.class);\n"
+#~ "List pusList = query.setString(0, \"Pus%\").list();\n"
+#~ " \n"
+#~ "query = sess.createSQLQuery(\"SELECT * FROM CATS WHERE NAME like
:name\")."
+#~ "addEntity(Cat.class);\n"
+#~ "List pusList = query.setString(\"name\", \"Pus%\").list();
]]>"
+#~ msgstr ""
+#~ "Query query = sess.createSQLQuery(\"SELECT * FROM CATS WHERE NAME like
?"
+#~ "\").addEntity(Cat.class);\n"
+#~ "List pusList = query.setString(0, \"Pus%\").list();\n"
+#~ " \n"
+#~ "query = sess.createSQLQuery(\"SELECT * FROM CATS WHERE NAME like
:name\")."
+#~ "addEntity(Cat.class);\n"
+#~ "List pusList = query.setString(\"name\",
\"Pus%\").list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<sql-query name=\"persons\">\n"
+#~ " <return alias=\"person\"
class=\"eg.Person\"/>\n"
+#~ " SELECT person.NAME AS {person.name},\n"
+#~ " person.AGE AS {person.age},\n"
+#~ " person.SEX AS {person.sex}\n"
+#~ " FROM PERSON person\n"
+#~ " WHERE person.NAME LIKE :namePattern\n"
+#~ "</sql-query>]]>"
+#~ msgstr ""
+#~ "<sql-query name=\"persons\">\n"
+#~ " <return alias=\"person\"
class=\"eg.Person\"/>\n"
+#~ " SELECT person.NAME AS {person.name},\n"
+#~ " person.AGE AS {person.age},\n"
+#~ " person.SEX AS {person.sex}\n"
+#~ " FROM PERSON person\n"
+#~ " WHERE person.NAME LIKE :namePattern\n"
+#~ "</sql-query>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List people = sess.getNamedQuery(\"persons\")\n"
+#~ " .setString(\"namePattern\", namePattern)\n"
+#~ " .setMaxResults(50)\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List people = sess.getNamedQuery(\"persons\")\n"
+#~ " .setString(\"namePattern\", namePattern)\n"
+#~ " .setMaxResults(50)\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<sql-query name=\"personsWith\">\n"
+#~ " <return alias=\"person\"
class=\"eg.Person\"/>\n"
+#~ " <return-join alias=\"address\"
property=\"person.mailingAddress\"/>\n"
+#~ " SELECT person.NAME AS {person.name},\n"
+#~ " person.AGE AS {person.age},\n"
+#~ " person.SEX AS {person.sex},\n"
+#~ " address.STREET AS {address.street},\n"
+#~ " address.CITY AS {address.city},\n"
+#~ " address.STATE AS {address.state},\n"
+#~ " address.ZIP AS {address.zip}\n"
+#~ " FROM PERSON person\n"
+#~ " JOIN ADDRESS address\n"
+#~ " ON person.ID = address.PERSON_ID AND
address.TYPE='MAILING'\n"
+#~ " WHERE person.NAME LIKE :namePattern\n"
+#~ "</sql-query>]]>"
+#~ msgstr ""
+#~ "<sql-query name=\"personsWith\">\n"
+#~ " <return alias=\"person\"
class=\"eg.Person\"/>\n"
+#~ " <return-join alias=\"address\"
property=\"person.mailingAddress\"/"
+#~ ">\n"
+#~ " SELECT person.NAME AS {person.name},\n"
+#~ " person.AGE AS {person.age},\n"
+#~ " person.SEX AS {person.sex},\n"
+#~ " adddress.STREET AS {address.street},\n"
+#~ " adddress.CITY AS {address.city},\n"
+#~ " adddress.STATE AS {address.state},\n"
+#~ " adddress.ZIP AS {address.zip}\n"
+#~ " FROM PERSON person\n"
+#~ " JOIN ADDRESS adddress\n"
+#~ " ON person.ID = address.PERSON_ID AND
address.TYPE='MAILING'\n"
+#~ " WHERE person.NAME LIKE :namePattern\n"
+#~ "</sql-query>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<sql-query name=\"mySqlQuery\">\n"
+#~ " <return-scalar column=\"name\"
type=\"string\"/>\n"
+#~ " <return-scalar column=\"age\"
type=\"long\"/>\n"
+#~ " SELECT p.NAME AS name,\n"
+#~ " p.AGE AS age,\n"
+#~ " FROM PERSON p WHERE p.NAME LIKE 'Hiber%'\n"
+#~ "</sql-query>]]>"
+#~ msgstr ""
+#~ "<sql-query name=\"mySqlQuery\">\n"
+#~ " <return-scalar column=\"name\"
type=\"string\"/>\n"
+#~ " <return-scalar column=\"age\"
type=\"long\"/>\n"
+#~ " SELECT p.NAME AS name,\n"
+#~ " p.AGE AS age,\n"
+#~ " FROM PERSON p WHERE p.NAME LIKE 'Hiber%'\n"
+#~ "</sql-query>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<resultset name=\"personAddress\">\n"
+#~ " <return alias=\"person\"
class=\"eg.Person\"/>\n"
+#~ " <return-join alias=\"address\"
property=\"person.mailingAddress\"/>\n"
+#~ "</resultset>\n"
+#~ "\n"
+#~ "<sql-query name=\"personsWith\"
resultset-ref=\"personAddress\">\n"
+#~ " SELECT person.NAME AS {person.name},\n"
+#~ " person.AGE AS {person.age},\n"
+#~ " person.SEX AS {person.sex},\n"
+#~ " address.STREET AS {address.street},\n"
+#~ " address.CITY AS {address.city},\n"
+#~ " address.STATE AS {address.state},\n"
+#~ " address.ZIP AS {address.zip}\n"
+#~ " FROM PERSON person\n"
+#~ " JOIN ADDRESS address\n"
+#~ " ON person.ID = address.PERSON_ID AND
address.TYPE='MAILING'\n"
+#~ " WHERE person.NAME LIKE :namePattern\n"
+#~ "</sql-query>]]>"
+#~ msgstr ""
+#~ "<resultset name=\"personAddress\">\n"
+#~ " <return alias=\"person\"
class=\"eg.Person\"/>\n"
+#~ " <return-join alias=\"address\"
property=\"person.mailingAddress\"/"
+#~ ">\n"
+#~ "</resultset>\n"
+#~ "\n"
+#~ "<sql-query name=\"personsWith\"
resultset-ref=\"personAddress\">\n"
+#~ " SELECT person.NAME AS {person.name},\n"
+#~ " person.AGE AS {person.age},\n"
+#~ " person.SEX AS {person.sex},\n"
+#~ " adddress.STREET AS {address.street},\n"
+#~ " adddress.CITY AS {address.city},\n"
+#~ " adddress.STATE AS {address.state},\n"
+#~ " adddress.ZIP AS {address.zip}\n"
+#~ " FROM PERSON person\n"
+#~ " JOIN ADDRESS adddress\n"
+#~ " ON person.ID = address.PERSON_ID AND
address.TYPE='MAILING'\n"
+#~ " WHERE person.NAME LIKE :namePattern\n"
+#~ "</sql-query>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = sess.createSQLQuery(\n"
+#~ " \"select {cat.*}, {kitten.*} from cats cat, cats kitten where
"
+#~ "kitten.mother = cat.id\"\n"
+#~ " )\n"
+#~ " .setResultSetMapping(\"catAndKitten\")\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "List cats = sess.createSQLQuery(\n"
+#~ " \"select {cat.*}, {kitten.*} from cats cat, cats kitten where
"
+#~ "kitten.mother = cat.id\"\n"
+#~ " )\n"
+#~ " .setResultSetMapping(\"catAndKitten\")\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<sql-query name=\"mySqlQuery\">\n"
+#~ " <return alias=\"person\"
class=\"eg.Person\">\n"
+#~ " <return-property name=\"name\"
column=\"myName\"/>\n"
+#~ " <return-property name=\"age\"
column=\"myAge\"/>\n"
+#~ " <return-property name=\"sex\"
column=\"mySex\"/>\n"
+#~ " </return>\n"
+#~ " SELECT person.NAME AS myName,\n"
+#~ " person.AGE AS myAge,\n"
+#~ " person.SEX AS mySex,\n"
+#~ " FROM PERSON person WHERE person.NAME LIKE :name\n"
+#~ "</sql-query>\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "<sql-query name=\"mySqlQuery\">\n"
+#~ " <return alias=\"person\"
class=\"eg.Person\">\n"
+#~ " <return-property name=\"name\"
column=\"myName\"/>\n"
+#~ " <return-property name=\"age\"
column=\"myAge\"/>\n"
+#~ " <return-property name=\"sex\"
column=\"mySex\"/>\n"
+#~ " </return>\n"
+#~ " SELECT person.NAME AS myName,\n"
+#~ " person.AGE AS myAge,\n"
+#~ " person.SEX AS mySex,\n"
+#~ " FROM PERSON person WHERE person.NAME LIKE :name\n"
+#~ "</sql-query>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<sql-query
name=\"organizationCurrentEmployments\">\n"
+#~ " <return alias=\"emp\"
class=\"Employment\">\n"
+#~ " <return-property name=\"salary\">\n"
+#~ " <return-column name=\"VALUE\"/>\n"
+#~ " <return-column name=\"CURRENCY\"/>\n"
+#~ " </return-property>\n"
+#~ " <return-property name=\"endDate\"
column=\"myEndDate\"/>\n"
+#~ " </return>\n"
+#~ " SELECT EMPLOYEE AS {emp.employee}, EMPLOYER AS {emp.employer},\n"
+#~ " STARTDATE AS {emp.startDate}, ENDDATE AS {emp.endDate},\n"
+#~ " REGIONCODE as {emp.regionCode}, EID AS {emp.id}, VALUE,
CURRENCY\n"
+#~ " FROM EMPLOYMENT\n"
+#~ " WHERE EMPLOYER = :id AND ENDDATE IS NULL\n"
+#~ " ORDER BY STARTDATE ASC\n"
+#~ "</sql-query>]]>"
+#~ msgstr ""
+#~ "<sql-query
name=\"organizationCurrentEmployments\">\n"
+#~ " <return alias=\"emp\"
class=\"Employment\">\n"
+#~ " <return-property name=\"salary\">\n"
+#~ " <return-column name=\"VALUE\"/>\n"
+#~ " <return-column name=\"CURRENCY\"/>\n"
+#~ " </return-property>\n"
+#~ " <return-property name=\"endDate\"
column=\"myEndDate\"/>\n"
+#~ " </return>\n"
+#~ " SELECT EMPLOYEE AS {emp.employee}, EMPLOYER AS {emp.employer},\n"
+#~ " STARTDATE AS {emp.startDate}, ENDDATE AS {emp.endDate},\n"
+#~ " REGIONCODE as {emp.regionCode}, EID AS {emp.id}, VALUE,
CURRENCY\n"
+#~ " FROM EMPLOYMENT\n"
+#~ " WHERE EMPLOYER = :id AND ENDDATE IS NULL\n"
+#~ " ORDER BY STARTDATE ASC\n"
+#~ "</sql-query>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[CREATE OR REPLACE FUNCTION selectAllEmployments\n"
+#~ " RETURN SYS_REFCURSOR\n"
+#~ "AS\n"
+#~ " st_cursor SYS_REFCURSOR;\n"
+#~ "BEGIN\n"
+#~ " OPEN st_cursor FOR\n"
+#~ " SELECT EMPLOYEE, EMPLOYER,\n"
+#~ " STARTDATE, ENDDATE,\n"
+#~ " REGIONCODE, EID, VALUE, CURRENCY\n"
+#~ " FROM EMPLOYMENT;\n"
+#~ " RETURN st_cursor;\n"
+#~ " END;]]>"
+#~ msgstr ""
+#~ "CREATE OR REPLACE FUNCTION selectAllEmployments\n"
+#~ " RETURN SYS_REFCURSOR\n"
+#~ "AS\n"
+#~ " st_cursor SYS_REFCURSOR;\n"
+#~ "BEGIN\n"
+#~ " OPEN st_cursor FOR\n"
+#~ " SELECT EMPLOYEE, EMPLOYER,\n"
+#~ " STARTDATE, ENDDATE,\n"
+#~ " REGIONCODE, EID, VALUE, CURRENCY\n"
+#~ " FROM EMPLOYMENT;\n"
+#~ " RETURN st_cursor;\n"
+#~ " END;"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<sql-query name=\"selectAllEmployees_SP\"
callable=\"true\">\n"
+#~ " <return alias=\"emp\"
class=\"Employment\">\n"
+#~ " <return-property name=\"employee\"
column=\"EMPLOYEE\"/>\n"
+#~ " <return-property name=\"employer\"
column=\"EMPLOYER\"/>\n"
+#~ " <return-property name=\"startDate\"
column=\"STARTDATE\"/>\n"
+#~ " <return-property name=\"endDate\"
column=\"ENDDATE\"/>\n"
+#~ " <return-property name=\"regionCode\"
column=\"REGIONCODE\"/>\n"
+#~ " <return-property name=\"id\"
column=\"EID\"/>\n"
+#~ " <return-property name=\"salary\">\n"
+#~ " <return-column name=\"VALUE\"/>\n"
+#~ " <return-column name=\"CURRENCY\"/>\n"
+#~ " </return-property>\n"
+#~ " </return>\n"
+#~ " { ? = call selectAllEmployments() }\n"
+#~ "</sql-query>]]>"
+#~ msgstr ""
+#~ "<sql-query name=\"selectAllEmployees_SP\"
callable=\"true\">\n"
+#~ " <return alias=\"emp\"
class=\"Employment\">\n"
+#~ " <return-property name=\"employee\"
column=\"EMPLOYEE\"/>\n"
+#~ " <return-property name=\"employer\"
column=\"EMPLOYER\"/>\n"
+#~ " <return-property name=\"startDate\"
column=\"STARTDATE\"/>\n"
+#~ " <return-property name=\"endDate\"
column=\"ENDDATE\"/>\n"
+#~ " <return-property name=\"regionCode\"
column=\"REGIONCODE\"/"
+#~ ">\n"
+#~ " <return-property name=\"id\"
column=\"EID\"/>\n"
+#~ " <return-property name=\"salary\">\n"
+#~ " <return-column name=\"VALUE\"/>\n"
+#~ " <return-column name=\"CURRENCY\"/>\n"
+#~ " </return-property>\n"
+#~ " </return>\n"
+#~ " { ? = call selectAllEmployments() }\n"
+#~ "</sql-query>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"increment\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"
not-null=\"true\"/>\n"
+#~ " <sql-insert>INSERT INTO PERSON (NAME, ID) VALUES ( UPPER(?), ?
)</sql-"
+#~ "insert>\n"
+#~ " <sql-update>UPDATE PERSON SET NAME=UPPER(?) WHERE
ID=?</sql-update>\n"
+#~ " <sql-delete>DELETE FROM PERSON WHERE ID=?</sql-delete>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"increment\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"
not-null=\"true\"/>\n"
+#~ " <sql-insert>INSERT INTO PERSON (NAME, ID) VALUES ( UPPER(?), ?
)"
+#~ "</sql-insert>\n"
+#~ " <sql-update>UPDATE PERSON SET NAME=UPPER(?) WHERE
ID=?</sql-"
+#~ "update>\n"
+#~ " <sql-delete>DELETE FROM PERSON WHERE
ID=?</sql-delete>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"increment\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"
not-null=\"true\"/>\n"
+#~ " <sql-insert callable=\"true\">{call createPerson (?,
?)}</sql-"
+#~ "insert>\n"
+#~ " <sql-delete callable=\"true\">{? = call deletePerson
(?)}</sql-"
+#~ "delete>\n"
+#~ " <sql-update callable=\"true\">{? = call updatePerson (?,
?)}</sql-"
+#~ "update>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"increment\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"
not-null=\"true\"/>\n"
+#~ " <sql-insert callable=\"true\">{call createPerson (?,
?)}</"
+#~ "sql-insert>\n"
+#~ " <sql-delete callable=\"true\">{? = call deletePerson
(?)}</"
+#~ "sql-delete>\n"
+#~ " <sql-update callable=\"true\">{? = call updatePerson
(?, ?)}"
+#~ "</sql-update>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[CREATE OR REPLACE FUNCTION updatePerson (uid IN NUMBER, uname IN
"
+#~ "VARCHAR2)\n"
+#~ " RETURN NUMBER IS\n"
+#~ "BEGIN\n"
+#~ "\n"
+#~ " update PERSON\n"
+#~ " set\n"
+#~ " NAME = uname,\n"
+#~ " where\n"
+#~ " ID = uid;\n"
+#~ "\n"
+#~ " return SQL%ROWCOUNT;\n"
+#~ "\n"
+#~ "END updatePerson;]]>"
+#~ msgstr ""
+#~ "CREATE OR REPLACE FUNCTION updatePerson (uid IN NUMBER, uname IN "
+#~ "VARCHAR2)\n"
+#~ " RETURN NUMBER IS\n"
+#~ "BEGIN\n"
+#~ "\n"
+#~ " update PERSON\n"
+#~ " set\n"
+#~ " NAME = uname,\n"
+#~ " where\n"
+#~ " ID = uid;\n"
+#~ "\n"
+#~ " return SQL%ROWCOUNT;\n"
+#~ "\n"
+#~ "END updatePerson;"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<sql-query name=\"person\">\n"
+#~ " <return alias=\"pers\" class=\"Person\"
lock-mode=\"upgrade\"/>\n"
+#~ " SELECT NAME AS {pers.name}, ID AS {pers.id}\n"
+#~ " FROM PERSON\n"
+#~ " WHERE ID=?\n"
+#~ " FOR UPDATE\n"
+#~ "</sql-query>]]>"
+#~ msgstr ""
+#~ "<sql-query name=\"person\">\n"
+#~ " <return alias=\"pers\" class=\"Person\"
lock-mode=\"upgrade\"/"
+#~ ">\n"
+#~ " SELECT NAME AS {pers.name}, ID AS {pers.id}\n"
+#~ " FROM PERSON\n"
+#~ " WHERE ID=?\n"
+#~ " FOR UPDATE\n"
+#~ "</sql-query>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Person\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"increment\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"
not-null=\"true\"/>\n"
+#~ " <loader query-ref=\"person\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Person\">\n"
+#~ " <id name=\"id\">\n"
+#~ " <generator class=\"increment\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"name\"
not-null=\"true\"/>\n"
+#~ " <loader query-ref=\"person\"/>\n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<set name=\"employments\"
inverse=\"true\">\n"
+#~ " <key/>\n"
+#~ " <one-to-many class=\"Employment\"/>\n"
+#~ " <loader query-ref=\"employments\"/>\n"
+#~ "</set>]]>"
+#~ msgstr ""
+#~ "<set name=\"employments\"
inverse=\"true\">\n"
+#~ " <key/>\n"
+#~ " <one-to-many class=\"Employment\"/>\n"
+#~ " <loader query-ref=\"employments\"/>\n"
+#~ "</set>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<sql-query name=\"employments\">\n"
+#~ " <load-collection alias=\"emp\"
role=\"Person.employments\"/>\n"
+#~ " SELECT {emp.*}\n"
+#~ " FROM EMPLOYMENT emp\n"
+#~ " WHERE EMPLOYER = :id\n"
+#~ " ORDER BY STARTDATE ASC, EMPLOYEE ASC\n"
+#~ "</sql-query>]]>"
+#~ msgstr ""
+#~ "<sql-query name=\"employments\">\n"
+#~ " <load-collection alias=\"emp\"
role=\"Person.employments\"/>\n"
+#~ " SELECT {emp.*}\n"
+#~ " FROM EMPLOYMENT emp\n"
+#~ " WHERE EMPLOYER = :id\n"
+#~ " ORDER BY STARTDATE ASC, EMPLOYEE ASC\n"
+#~ "</sql-query>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<sql-query name=\"person\">\n"
+#~ " <return alias=\"pers\" class=\"Person\"/>\n"
+#~ " <return-join alias=\"emp\"
property=\"pers.employments\"/>\n"
+#~ " SELECT NAME AS {pers.*}, {emp.*}\n"
+#~ " FROM PERSON pers\n"
+#~ " LEFT OUTER JOIN EMPLOYMENT emp\n"
+#~ " ON pers.ID = emp.PERSON_ID\n"
+#~ " WHERE ID=?\n"
+#~ "</sql-query>]]>"
+#~ msgstr ""
+#~ "<sql-query name=\"person\">\n"
+#~ " <return alias=\"pers\"
class=\"Person\"/>\n"
+#~ " <return-join alias=\"emp\"
property=\"pers.employments\"/>\n"
+#~ " SELECT NAME AS {pers.*}, {emp.*}\n"
+#~ " FROM PERSON pers\n"
+#~ " LEFT OUTER JOIN EMPLOYMENT emp\n"
+#~ " ON pers.ID = emp.PERSON_ID\n"
+#~ " WHERE ID=?\n"
+#~ "</sql-query>"
Deleted:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/quickstart.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/quickstart.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/quickstart.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,12 +0,0 @@
-#, fuzzy
-msgid ""
-msgstr ""
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Content-Type: text/plain; charset=utf-8\n"
-msgid "ROLES_OF_TRANSLATORS"
-msgstr "<!--TRANS:ROLES_OF_TRANSLATORS-->"
-
-msgid "CREDIT_FOR_TRANSLATORS"
-msgstr "<!--TRANS:CREDIT_FOR_TRANSLATORS-->"
-
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/session_api.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/session_api.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/session_api.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,24 +1,25 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:27\n"
+"PO-Revision-Date: 2010-01-07 14:56+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: session_api.xml:29
#, no-c-format
msgid "Working with objects"
msgstr "オブジェクトを扱う"
#. Tag: para
-#: session_api.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate is a full object/relational mapping solution that not only shields
"
"the developer from the details of the underlying database management system,
"
@@ -27,14 +28,13 @@
"JDBC/SQL persistence layers, a natural object-oriented view of persistence "
"in Java applications."
msgstr ""
-"Hibernate は完全なオブジェクト/リレーショナルマッピングソリューションであ"
-"り、 データベース管理システムの詳細を開発者から隠蔽するだけでなく、 オブジェ"
-"クトの <emphasis>状態管理</emphasis> も行います。 これは、JDBC/SQL永続層と同"
-"じようなSQL <literal>文</literal> の管理とは異なり、 Javaアプリケーションにお"
-"ける永続化に対する、とても自然なオブジェクト指向の考え方を提供します。"
+"Hibernate は完全なオブジェクト/リレーショナルマッピングソリューションであり、"
+"データベース管理システムの詳細を開発者から隠蔽するだけでなく、オブジェクトの "
+"<emphasis>状態管理</emphasis> も行います。これは、 JDBC/SQL 永続層と同じよう"
+"な SQL <literal>statements</literal> の管理とは異なり、 Java アプリケーション"
+"における永続化に対する、とても自然なオブジェクト指向の考え方を提供します。"
#. Tag: para
-#: session_api.xml:40
#, no-c-format
msgid ""
"In other words, Hibernate application developers should always think about "
@@ -43,26 +43,23 @@
"is only relevant for the application developer when tuning the performance "
"of the system."
msgstr ""
-"言いかえれば、Hibernateを用いるアプリケーション開発者は、オブジェクトの "
-"<emphasis>状態</emphasis> については 常に意識すべきであり、SQL文の実行につい"
-"ては必ずしもそうではありません。 この部分は、通常、Hibernateが処理し、システ"
-"ムのパフォーマンスをチューニングするときにだけ、 問題になってきます。"
+"言いかえれば、 Hibernate を用いるアプリケーション開発者は、オブジェクトの "
+"<emphasis>状態</emphasis> については常に意識すべきであり、 SQL 文の実行につい"
+"ては必ずしもそうではありません。この部分は、通常、 Hibernate が処理し、システ"
+"ムのパフォーマンスをチューニングするときにだけ、問題になってきます。"
#. Tag: title
-#: session_api.xml:48
#, no-c-format
msgid "Hibernate object states"
-msgstr "Hibernateにおけるオブジェクトの状態"
+msgstr "Hibernate におけるオブジェクトの状態"
#. Tag: para
-#: session_api.xml:50
#, no-c-format
msgid "Hibernate defines and supports the following object states:"
-msgstr "Hibernateは次のようなオブジェクトの状態を定義し、サポートしています。"
+msgstr "Hibernate は次のようなオブジェクトの状態を定義し、サポートしています:"
#. Tag: para
-#: session_api.xml:56
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Transient</emphasis> - an object is transient if it has just
been "
"instantiated using the <literal>new</literal> operator, and it is not
"
@@ -74,18 +71,17 @@
"take care of the SQL statements that need to be executed for this "
"transition)."
msgstr ""
-"<emphasis> 一時的(Transient) </emphasis> -
<literal>new</literal> 演算子を"
-"使って インスタンス化されただけで、 Hibernateの <literal>Session</literal> に"
-"関連付けられていないオブジェクトは、 一時的(transient)です。 それは、データ"
-"ベースに永続的な表現を持たず、識別子となる値は割り当てられていません。 一時的"
-"なインスタンスは、アプリケーションがその参照をどこにも保持しない場合に、 ガ"
-"ベージコレクタによって破棄されます。 オブジェクトを永続的(persistent)な状態に"
-"するためには、Hibernateの <literal>Session</literal> を使いましょう。 (この"
-"状態遷移に必要となるSQL文の発行は、Hibernateに任せましょう。)"
+"<emphasis>Transient</emphasis> - <literal>new</literal>
演算子を使ってインス"
+"タンス化されただけで、 Hibernate の <literal>Session</literal> に関連付けられ"
+"ていないオブジェクトは、 transient です。それは、データベースに永続的な表現を"
+"持たず、識別子となる値は割り当てられていません。 Transient インスタンスは、ア"
+"プリケーションがその参照をどこにも保持しない場合に、ガベージコレクタによって"
+"破棄されます。オブジェクトを永続的 (persistent) な状態にするためには、 "
+"Hibernate の <literal>Session</literal> を使いましょう(この状態遷移に必要と"
+"なる SQL 文の発行は、 Hibernate に任せましょう)。"
#. Tag: para
-#: session_api.xml:68
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Persistent</emphasis> - a persistent instance has a
representation "
"in the database and an identifier value. It might just have been saved or "
@@ -96,18 +92,17 @@
"statements, or <literal>DELETE</literal> statements when an object
should be "
"made transient."
msgstr ""
-"<emphasis>永続的(Persistent)</emphasis> - 永続的なインスタンスはデータベース"
-"に 永続的な表現を持ち、識別子となる値を持っています。 それは、セーブされた"
-"り、ロードされたりするかもしれませんが、 定義上は、 <literal>Session</"
-"literal> のスコープの中に存在しています。 Hibernateは、作業単位(Unit of "
-"work)が完了したときに、 永続状態のオブジェクトに加えられた変更を検出し、 オ"
-"ブジェクトの状態とデータベースを同期します。 オブジェクトを一時的(transient)"
-"にするときは、開発者は、手作業で <literal>UPDATE</literal> 文や "
-"<literal>DELETE</literal> 文を実行しません。"
+"<emphasis>永続的 (Persistent)</emphasis> - 永続的なインスタンスはデータベース"
+"に永続的な表現を持ち、識別子となる値を持っています。それは、セーブされたり、"
+"ロードされたりするかもしれませんが、定義上は、 <literal>Session</literal> の"
+"スコープの中に存在しています。 Hibernate は、作業単位(Unit of Work)が完了し"
+"たときに、永続状態のオブジェクトに加えられた変更を検出し、オブジェクトの状態"
+"とデータベースを同期します。オブジェクトを transient にするときは、開発者は、"
+"手作業で <literal>UPDATE</literal> 文や <literal>DELETE</literal>
文を実行し"
+"ません。"
#. Tag: para
-#: session_api.xml:79
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Detached</emphasis> - a detached instance is an object that
has "
"been persistent, but its <literal>Session</literal> has been closed.
The "
@@ -119,61 +114,46 @@
"them <emphasis>application transactions</emphasis>, i.e., a unit of
work "
"from the point of view of the user."
msgstr ""
-"<emphasis>分離(Detached)</emphasis> - 分離されたインスタンスとは、永続化され"
-"ているが、 それと関連付いていた <literal>Session</literal> がクローズされてい"
-"るオブジェクトのことです。 そのオブジェクトへの参照は、依然として有効です。 "
-"そして、もちろん、分離された状態にあるオブジェクトは、修正することさえできま"
-"す。 分離されたインスタンスは、もう一度永続化したい(そして、すべての変更を永"
-"続化したい)ときに、 新しい <literal>Session</literal> に再追加できます。 こ"
-"の機能は、ユーザが考える時間を必要とするような、長期間に及ぶ作業単位に対する "
-"プログラミングモデルを可能にします。 我々は、これを <emphasis>アプリケーショ"
-"ンのトランザクション(application transactions)</emphasis> と呼んでいます。 "
-"すなわち、ユーザから見た作業単位だということです。"
+"<emphasis>Detached</emphasis> - detached インスタンスとは、永続化されている"
+"が、それと関連付いていた <literal>Session</literal> がクローズされているオブ"
+"ジェクトのことです。そのオブジェクトへの参照は、依然として有効です。そして、"
+"もちろん、detached インスタンスはこの状態に修正することさえできます。 "
+"detached インスタンスは、もう一度永続化したい(そして、すべての変更を永続化し"
+"たい)ときに、新しい <literal>Session</literal> に再追加できます。この機能"
+"は、ユーザーが考える時間を必要とするような、長期間に及ぶ作業単位に対するプロ"
+"グラミングモデルを可能にします。我々は、これを <emphasis>アプリケーションのト"
+"ランザクション(application transactions)</emphasis> と呼んでいます。すなわ"
+"ち、ユーザーから見た作業単位だということです。"
#. Tag: para
-#: session_api.xml:93
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"We will now discuss the states and state transitions (and the Hibernate "
"methods that trigger a transition) in more detail."
msgstr ""
-"これから、状態と状態遷移(そして、遷移のきっかけとなるHibernateのメソッド)に"
-"ついて 、詳細に述べます。"
+"これから、状態と状態遷移(そして、遷移のきっかけとなる Hibernate のメソッド)"
+"について、詳細に述べます。"
#. Tag: title
-#: session_api.xml:101
#, no-c-format
msgid "Making objects persistent"
msgstr "オブジェクトを永続状態にする"
#. Tag: para
-#: session_api.xml:103
#, no-c-format
msgid ""
"Newly instantiated instances of a a persistent class are considered "
"<emphasis>transient</emphasis> by Hibernate. We can make a transient
"
"instance <emphasis>persistent</emphasis> by associating it with a
session:"
msgstr ""
-"新しくインスタンス化された永続クラスのインスタンスは、 Hibernateでは "
-"<emphasis>一時的(transient)</emphasis> と見なされます。 以下のように、セッ"
-"ションと関連づけることで、一時的なインスタンスを <emphasis>永続状態"
-"(persistent)</emphasis> にできます。"
+"新しくインスタンス化された永続クラスのインスタンスは、 Hibernate では "
+"<emphasis>transient</emphasis> と見なされます。以下のように、セッションと関連"
+"づけることで、 transient インスタンスを <emphasis>永続状態 (persistent)</"
+"emphasis> にできます。"
-#. Tag: programlisting
-#: session_api.xml:110
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[DomesticCat fritz = new DomesticCat();\n"
-"fritz.setColor(Color.GINGER);\n"
-"fritz.setSex('M');\n"
-"fritz.setName(\"Fritz\");\n"
-"Long generatedId = (Long) sess.save(fritz);]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:112
-#, fuzzy, no-c-format
-msgid ""
"If <literal>Cat</literal> has a generated identifier, the identifier is
"
"generated and assigned to the <literal>cat</literal> when
<literal>save()</"
"literal> is called. If <literal>Cat</literal> has an
<literal>assigned</"
@@ -184,17 +164,16 @@
"draft."
msgstr ""
"<literal>Cat</literal> クラスの識別子が自動生成されるのであれば、 "
-"<literal>save()</literal> が呼ばれるときに、 識別子が生成され、 "
-"<literal>cat</literal> インスタンスに割り当てられます。 <literal>Cat</"
-"literal> の識別子が他から割り当てられる( <literal>assigned</literal> 識別子"
-"を持つ)か、複合キーであるなら、 <literal>save()</literal> を呼び出す前に、識"
-"別子を割り当てなければなりません。 <literal>save()</literal> の代わりに、"
-"EJB3 の初期ドラフトで定義された <literal>persist()</literal> を使うことも可能"
-"です。"
+"<literal>save()</literal> が呼ばれるときに、識別子が生成され、
<literal>cat</"
+"literal> インスタンスに割り当てられます。 <literal>Cat</literal> の識別子が "
+"<literal>assigned</literal> 識別子を持つか、複合キーであるなら、 "
+"<literal>save()</literal> を呼び出す前に、識別子を
<literal>cat</literal> イ"
+"ンスタンスを割り当てなければなりません。 <literal>save()</literal> の代わり"
+"に、 EJB3 の初期ドラフトで定義された <literal>persist()</literal> を使うこと"
+"も可能です。"
#. Tag: para
-#: session_api.xml:124
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>persist()</literal> makes a transient instance persistent.
However, "
"it does not guarantee that the identifier value will be assigned to the "
@@ -204,16 +183,8 @@
"boundaries. This is useful in long-running conversations with an extended "
"Session/persistence context."
msgstr ""
-"<literal>persist()</literal> makes a transient instance persistent.
However, "
-"it doesn't guarantee that the identifier value will be assigned to the "
-"persistent instance immediately, the assignment might happen at flush time. "
-"<literal>persist()</literal> also guarantees that it will not execute
an "
-"<literal>INSERT</literal> statement if it is called outside of
transaction "
-"boundaries. This is useful in long-running conversations with an extended "
-"Session/persistence context."
#. Tag: para
-#: session_api.xml:135
#, no-c-format
msgid ""
"<literal>save()</literal> does guarantee to return an identifier. If an
"
@@ -222,39 +193,19 @@
"you are inside or outside of a transaction. This is problematic in a long-"
"running conversation with an extended Session/persistence context."
msgstr ""
-"<literal>save()</literal> does guarantee to return an identifier. If an
"
-"INSERT has to be executed to get the identifier ( e.g. \"identity\"
"
-"generator, not \"sequence\"), this INSERT happens immediately, no matter
if "
-"you are inside or outside of a transaction. This is problematic in a long-"
-"running conversation with an extended Session/persistence context."
#. Tag: para
-#: session_api.xml:145
#, fuzzy, no-c-format
msgid ""
"Alternatively, you can assign the identifier using an overloaded version of "
"<literal>save()</literal>."
msgstr ""
-"代わりに、識別子を引数にとる <literal>save()</literal> メソッドを使って、 識"
-"別子を割り当てることもできます。"
+"代わりに、識別子を引数にとる <literal>save()</literal> メソッドを使って、識別"
+"子を割り当てることもできます。"
-#. Tag: programlisting
-#: session_api.xml:150
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[DomesticCat pk = new DomesticCat();\n"
-"pk.setColor(Color.TABBY);\n"
-"pk.setSex('F');\n"
-"pk.setName(\"PK\");\n"
-"pk.setKittens( new HashSet() );\n"
-"pk.addKitten(fritz);\n"
-"sess.save( pk, new Long(1234) );]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:152
-#, fuzzy, no-c-format
-msgid ""
"If the object you make persistent has associated objects (e.g. the "
"<literal>kittens</literal> collection in the previous example), these
"
"objects can be made persistent in any order you like unless you have a "
@@ -264,16 +215,15 @@
"literal> the objects in the wrong order."
msgstr ""
"永続化するオブジェクトが関連オブジェクトを持っている場合 (例えば、前の例にお"
-"ける <literal>kittens</literal> コレクションのように)、 外部キーカラムに、 "
-"<literal>NOT NULL</literal> 制約をつけない限りは、 これらの一連のオブジェクト"
-"をどんな順番で永続化してもかまいません。 外部キー制約を違反する恐れはありませ"
-"ん。 しかし、 <literal>NOT NULL</literal> 制約がある場合、間違った順番でオブ"
-"ジェクトを <literal>save()</literal> してしまうと、 制約に違反するかもしれま"
-"せん。"
+"ける <literal>kittens</literal> コレクションのように)、外部キーカラムに、 "
+"<literal>NOT NULL</literal> 制約をつけない限りは、これらの一連のオブジェクト"
+"をどんな順番で永続化してもかまいません。外部キー制約を違反する恐れはありませ"
+"ん。しかし、 <literal>NOT NULL</literal> 制約がある場合、間違った順番でオブ"
+"ジェクトを <literal>save()</literal> してしまうと、制約に違反するかもしれませ"
+"ん。"
#. Tag: para
-#: session_api.xml:162
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Usually you do not bother with this detail, as you will normally use "
"Hibernate's <emphasis>transitive persistence</emphasis> feature to
save the "
@@ -281,21 +231,19 @@
"constraint violations do not occur - Hibernate will take care of everything.
"
"Transitive persistence is discussed later in this chapter."
msgstr ""
-"関連するオブジェクトを自動的に保存する、 Hibernateの <emphasis>遷移的な永続化"
-"(transitive persistence)</emphasis> 機能を 使うつもりならば、そのような詳細を"
-"気にする必要はありません。 そして、 <literal>NOT NULL</literal> 制約の違反す"
-"ら起こりません。 Hibernateがすべて面倒をみてくれます。遷移的な永続化は、この"
+"関連するオブジェクトを自動的に保存する、 Hibernate の <emphasis>遷移的な永続"
+"化 (transitive persistence)</emphasis> 機能を使うつもりならば、そのような詳細"
+"を気にする必要はありません。そして、 <literal>NOT NULL</literal> 制約の違反す"
+"ら起こりません。 Hibernate がすべて面倒をみてくれます。遷移的な永続化は、この"
"章の後半に書かれています。"
#. Tag: title
-#: session_api.xml:173
#, no-c-format
msgid "Loading an object"
msgstr "オブジェクトのロード"
#. Tag: para
-#: session_api.xml:175
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>load()</literal> methods of
<literal>Session</literal> provide "
"a way of retrieving a persistent instance if you know its identifier. "
@@ -304,47 +252,19 @@
msgstr ""
"永続化されたインスタンスの識別子があらかじめ分かっているなら、 "
"<literal>Session</literal> の <literal>load()</literal>
メソッドを使って、復"
-"元できます。 <literal>load()</literal> は、Class オブジェクトを引数にとり、 "
-"そのクラスのインスタンスを新たに生成し、状態をロードします。 そのインスタンス"
-"の状態は、永続(persistent)状態です。"
+"元できます。 <literal>load()</literal> は、 Class オブジェクトを引数にとり、"
+"そのクラスのインスタンスを新たに生成し、状態をロードします。そのインスタンス"
+"の状態は、永続 (persistent) 状態です。"
-#. Tag: programlisting
-#: session_api.xml:182
-#, no-c-format
-msgid "<![CDATA[Cat fritz = (Cat) sess.load(Cat.class, generatedId);]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: session_api.xml:184
-#, no-c-format
-msgid ""
-"<![CDATA[// you need to wrap primitive identifiers\n"
-"long id = 1234;\n"
-"DomesticCat pk = (DomesticCat) sess.load( DomesticCat.class, new Long"
-"(id) );]]>"
-msgstr ""
-
#. Tag: para
-#: session_api.xml:186
#, no-c-format
msgid "Alternatively, you can load state into a given instance:"
msgstr ""
-"あるいは、以下のように、既存のインスタンスに状態をロードすることもできます。"
+"あるいは、以下のように、既存のインスタンスに状態をロードすることもできます:"
-#. Tag: programlisting
-#: session_api.xml:190
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Cat cat = new DomesticCat();\n"
-"// load pk's state into cat\n"
-"sess.load( cat, new Long(pkId) );\n"
-"Set kittens = cat.getKittens();]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:192
-#, fuzzy, no-c-format
-msgid ""
"Be aware that <literal>load()</literal> will throw an unrecoverable
"
"exception if there is no matching database row. If the class is mapped with "
"a proxy, <literal>load()</literal> just returns an uninitialized proxy
and "
@@ -354,59 +274,38 @@
"be loaded as a batch if <literal>batch-size</literal> is defined for
the "
"class mapping."
msgstr ""
-"DBに該当する行が無い場合、 <literal>load()</literal> は回復不可能な例外を 投"
-"げることに注意しましょう。 そのクラスがプロキシを使ってマッピングされている場"
+"DB に該当する行が無い場合、 <literal>load()</literal> は回復不可能な例外を投"
+"げることに注意しましょう。そのクラスがプロキシを使ってマッピングされている場"
"合、 <literal>load()</literal> は初期化されていないプロキシを返し、プロキシの"
-"メソッドが呼ばれるまで実際には データベースにアクセスしません。 もし、実際に"
-"データベースからロードせずに、オブジェクトに対する関連を作りたい場合、 この振"
+"メソッドが呼ばれるまで実際にはデータベースにアクセスしません。もし、実際に"
+"データベースからロードせずに、オブジェクトに対する関連を作りたい場合、この振"
"る舞いはとても役立ちます。 <literal>batch-size</literal> がクラスマッピングに"
-"定義されているならば、 複数のインスタンスを一括でロードすることが可能です。"
+"定義されているならば、複数のインスタンスを一括でロードすることが可能です。"
#. Tag: para
-#: session_api.xml:203
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you are not certain that a matching row exists, you should use the "
"<literal>get()</literal> method which hits the database immediately and
"
"returns null if there is no matching row."
msgstr ""
"該当する行が存在することを確信できない場合は、 <literal>get()</literal> メ"
-"ソッドを使うべきです。 それは、データベースにすぐにアクセスし、該当する行が無"
-"い場合はnullを返します。"
+"ソッドを使うべきです。それは、データベースにすぐにアクセスし、該当する行が無"
+"い場合は null を返します。"
-#. Tag: programlisting
-#: session_api.xml:209
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Cat cat = (Cat) sess.get(Cat.class, id);\n"
-"if (cat==null) {\n"
-" cat = new Cat();\n"
-" sess.save(cat, id);\n"
-"}\n"
-"return cat;]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:211
-#, fuzzy, no-c-format
-msgid ""
"You can even load an object using an SQL <literal>SELECT ... FOR
UPDATE</"
"literal>, using a <literal>LockMode</literal>. See the API
documentation for "
"more information."
msgstr ""
"<literal>LockMode</literal> を使えば、 <literal>SELECT ... FOR
UPDATE</"
-"literal>というSQLを 使ってオブジェクトをロードすることができます。 詳細な情報"
-"は、APIドキュメントを参照してください。"
+"literal> という SQL を使ってオブジェクトをロードすることができます。詳細な情"
+"報は、 API ドキュメントを参照してください。"
-#. Tag: programlisting
-#: session_api.xml:216
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[Cat cat = (Cat) sess.get(Cat.class, id,
LockMode.UPGRADE);]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:218
-#, fuzzy, no-c-format
msgid ""
"Any associated instances or contained collections will
<emphasis>not</"
"emphasis> be selected <literal>FOR UPDATE</literal>, unless you
decide to "
@@ -414,12 +313,11 @@
"for the association."
msgstr ""
"関連に対するカスケード方法として <literal>lock</literal> や
<literal>all</"
-"literal> を 指定しない限り、関連するインスタンスや含まれるコレクションは "
+"literal> を指定しない限り、関連するインスタンスや含まれるコレクションは "
"<literal>FOR UPDATE</literal> で復元 <emphasis>されない</emphasis>
ことに注意"
"しましょう。"
#. Tag: para
-#: session_api.xml:225
#, no-c-format
msgid ""
"It is possible to re-load an object and all its collections at any time, "
@@ -427,43 +325,31 @@
"triggers are used to initialize some of the properties of the object."
msgstr ""
"<literal>refresh()</literal> メソッドを使うことで、どんなときでも、オブジェク"
-"トやそのコレクションを リロードすることができます。 データベースのトリガが"
-"テーブルを更新した際に、 そのテーブルに対応するオブジェクトのプロパティを同期"
-"する場合、このメソッドが役に立ちます。"
+"トやそのコレクションをリロードすることができます。データベースのトリガがテー"
+"ブルを更新した際に、そのテーブルに対応するオブジェクトのプロパティを同期する"
+"場合、このメソッドが役に立ちます。"
-#. Tag: programlisting
-#: session_api.xml:231
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[sess.save(cat);\n"
-"sess.flush(); //force the SQL INSERT\n"
-"sess.refresh(cat); //re-read the state (after the trigger executes)]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:233
-#, fuzzy, no-c-format
-msgid ""
"How much does Hibernate load from the database and how many SQL "
"<literal>SELECT</literal>s will it use? This depends on the "
"<emphasis>fetching strategy</emphasis>. This is explained in <xref
linkend="
-"\"performance-fetching\"/>."
+"\"performance-fetching\" />."
msgstr ""
-"大切な問題は、いつも次の点に関するものです。それは、Hibernateがデータベースか"
-"ら、 どのくらいの量を復元するのかと、どのくらいの数のSQLの <literal>SELECT</"
-"literal> 文が使われるのかです。 これは、 <emphasis>フェッチの戦略</emphasis> "
-"によります。これについては、<xref linkend=\"performance-fetching\"/> で説明し"
-"ています。"
+"大切な問題は、いつも次の点に関するものです。それは、 Hibernate がデータベース"
+"から、どのくらいの量を復元するのかと、どのくらいの数の SQL の "
+"<literal>SELECT</literal> 文が使われるのかです。これは、 <emphasis>フェッチの"
+"戦略</emphasis> によります。これについては、 <xref linkend=\"performance-"
+"fetching\"/> で説明しています。"
#. Tag: title
-#: session_api.xml:243
#, no-c-format
msgid "Querying"
msgstr "クエリ"
#. Tag: para
-#: session_api.xml:245
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you do not know the identifiers of the objects you are looking for, you "
"need a query. Hibernate supports an easy-to-use but powerful object oriented
"
@@ -473,20 +359,18 @@
"from Hibernate for result set conversion into objects."
msgstr ""
"探したいオブジェクトの識別子が分からない場合は、クエリが必要になります。 "
-"Hibernateは使いやすくて強力なオブジェクト指向のクエリ言語 (HQL)をサポートして"
-"います。 プログラムによってクエリが作成できるように、Hibernateは洗練された"
-"CriteriaとExampleクエリ機能(QBCとQBE)を サポートしています。ResultSetをオブ"
-"ジェクトに変換するHibernateのオプション機能を使うことで、 データベースのネイ"
-"ティブなSQLでクエリを表現することもできます。"
+"Hibernate は使いやすくて強力なオブジェクト指向のクエリ言語 (HQL) をサポートし"
+"ています。プログラムによってクエリが作成できるように、 Hibernate は洗練され"
+"た Criteria と Example クエリ機能 (QBC と QBE) をサポートしています。 "
+"ResultSet をオブジェクトに変換する Hibernate のオプション機能を使うことで、"
+"データベースのネイティブな SQL でクエリを表現することもできます。"
#. Tag: title
-#: session_api.xml:255
#, no-c-format
msgid "Executing queries"
msgstr "クエリの実行"
#. Tag: para
-#: session_api.xml:257
#, no-c-format
msgid ""
"HQL and native SQL queries are represented with an instance of
<literal>org."
@@ -495,46 +379,15 @@
"always obtain a <literal>Query</literal> using the current
<literal>Session</"
"literal>:"
msgstr ""
-"HQLやネイティブなSQLクエリは、 <literal>org.hibernate.Query</literal> のイン"
-"スタンスとして表現されます。 このインタフェースは、パラメータバインディングや"
-"ResultSetのハンドリングや クエリの実行を行うメソッドを用意しています。 通"
-"常、 <literal>Query</literal> は、以下に示すように、 その時点の "
+"HQL やネイティブな SQL クエリは、 <literal>org.hibernate.Query</literal> のイ"
+"ンスタンスとして表現されます。このインタフェースは、パラメータバインディング"
+"や ResultSet のハンドリングやクエリの実行を行うメソッドを用意しています。通"
+"常、 <literal>Query</literal> は、以下に示すように、その時点の "
"<literal>Session</literal> を使って取得します。"
-#. Tag: programlisting
-#: session_api.xml:264
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[List cats = session.createQuery(\n"
-" \"from Cat as cat where cat.birthdate < ?\")\n"
-" .setDate(0, date)\n"
-" .list();\n"
-"\n"
-"List mothers = session.createQuery(\n"
-" \"select mother from Cat as cat join cat.mother as mother where cat.name
"
-"= ?\")\n"
-" .setString(0, name)\n"
-" .list();\n"
-"\n"
-"List kittens = session.createQuery(\n"
-" \"from Cat as cat where cat.mother = ?\")\n"
-" .setEntity(0, pk)\n"
-" .list();\n"
-"\n"
-"Cat mother = (Cat) session.createQuery(\n"
-" \"select cat.mother from Cat as cat where cat = ?\")\n"
-" .setEntity(0, izi)\n"
-" .uniqueResult();]]\n"
-"\n"
-"Query mothersWithKittens = (Cat) session.createQuery(\n"
-" \"select mother from Cat as mother left join fetch
mother.kittens\");\n"
-"Set uniqueMothers = new HashSet(mothersWithKittens.list());]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:266
-#, fuzzy, no-c-format
-msgid ""
"A query is usually executed by invoking <literal>list()</literal>. The
"
"result of the query will be loaded completely into a collection in memory. "
"Entity instances retrieved by a query are in a persistent state. The "
@@ -545,23 +398,21 @@
"a <literal>Set</literal>."
msgstr ""
"クエリは、普通、 <literal>list()</literal> を呼び出すことによって実行されま"
-"す。 クエリの結果は、メモリ上にあるコレクションにすべてロードされます。 クエ"
-"リによって復元されたエンティティのインスタンスは、永続状態です。 もし、クエリ"
-"がたった1個のインスタンスを返すと分かっているなら、 <literal>uniqueResult()</"
-"literal> メソッドが手っ取り早い方法です。 即時フェッチを利用したクエリの場"
-"合、ふつう、得られたコレクションには、 ルートのオブジェクトが重複して含まれて"
-"います (しかし、ルートが持つコレクションは初期化(ロード)されています)。 こ"
-"の重複は <literal>Set</literal> を使って取り除くことができます。"
+"す。クエリの結果は、メモリ上にあるコレクションにすべてロードされます。クエリ"
+"によって復元されたエンティティのインスタンスは、永続状態です。もし、クエリが"
+"たった1個のインスタンスを返すと分かっているなら、 <literal>uniqueResult()</"
+"literal> メソッドが手っ取り早い方法です。即時フェッチを利用したクエリの場合、"
+"ふつう、得られたコレクションには、ルートのオブジェクトが重複して含まれていま"
+"す(しかし、ルートが持つコレクションは初期化 (ロード)されています)。この重"
+"複は <literal>Set</literal> を使って取り除くことができます。"
#. Tag: title
-#: session_api.xml:278
#, no-c-format
msgid "Iterating results"
msgstr "結果をイテレートする"
#. Tag: para
-#: session_api.xml:280
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Occasionally, you might be able to achieve better performance by executing "
"the query using the <literal>iterate()</literal> method. This will
usually "
@@ -573,115 +424,53 @@
"returns identifiers, and <emphasis>n</emphasis> additional selects to
"
"initialize the actual instances."
msgstr ""
-"時々、 <literal>iterate()</literal> メソッドを使ってクエリを実行することで、 "
-"より良いパフォーマンスを得ることができます。 これは、通常、クエリによって得ら"
-"れた実際のエンティティのインスタンスが、 すでにセッションまたは二次キャッシュ"
-"に存在することが期待できる場合だけです。 それらが、まだキャッシュされていない"
+"時々、 <literal>iterate()</literal> メソッドを使ってクエリを実行することで、"
+"より良いパフォーマンスを得ることができます。これは、通常、クエリによって得ら"
+"れた実際のエンティティのインスタンスが、すでにセッションまたは二次キャッシュ"
+"に存在することが期待できる場合だけです。それらが、まだキャッシュされていない"
"なら、 <literal>iterate()</literal> は、
<literal>list()</literal> よりも遅"
-"く、簡単なクエリに対しても多くのデータベースアクセスを 必要とします。そのアク"
-"セスとは、識別子だけを取得するための最初のselect1回と、 実際のインスタンスを"
-"初期化するために後から行うn回のselectのことです。"
+"く、簡単なクエリに対しても多くのデータベースアクセスを必要とします。そのアク"
+"セスとは、識別子だけを取得するための最初の select <emphasis>1回</emphasis> "
+"と、実際のインスタンスを初期化するために後から行う <emphasis>n回</emphasis> "
+"の select のことです。"
-#. Tag: programlisting
-#: session_api.xml:292
-#, no-c-format
-msgid ""
-"<![CDATA[// fetch ids\n"
-"Iterator iter = sess.createQuery(\"from eg.Qux q order by
q.likeliness\")."
-"iterate();\n"
-"while ( iter.hasNext() ) {\n"
-" Qux qux = (Qux) iter.next(); // fetch the object\n"
-" // something we couldnt express in the query\n"
-" if ( qux.calculateComplicatedAlgorithm() ) {\n"
-" // delete the current instance\n"
-" iter.remove();\n"
-" // dont need to process the rest\n"
-" break;\n"
-" }\n"
-"}]]>"
-msgstr ""
-
#. Tag: title
-#: session_api.xml:296
#, no-c-format
msgid "Queries that return tuples"
msgstr "オブジェクトの組(tuple)を返すクエリ"
#. Tag: para
-#: session_api.xml:298
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate queries sometimes return tuples of objects. Each tuple is returned
"
"as an array:"
msgstr ""
-"Hibernateのクエリでは、時々、オブジェクトの組を返すことがあります。 その場合"
-"は、各タプルは配列として返されます。"
+"Hibernate のクエリでは、時々、オブジェクトの組を返すことがあります。その場合"
+"は、各タプルは配列として返されます:"
-#. Tag: programlisting
-#: session_api.xml:303
-#, no-c-format
-msgid ""
-"<![CDATA[Iterator kittensAndMothers = sess.createQuery(\n"
-" \"select kitten, mother from Cat kitten join kitten.mother
mother"
-"\")\n"
-" .list()\n"
-" .iterator();\n"
-"\n"
-"while ( kittensAndMothers.hasNext() ) {\n"
-" Object[] tuple = (Object[]) kittensAndMothers.next();\n"
-" Cat kitten = (Cat) tuple[0];\n"
-" Cat mother = (Cat) tuple[1];\n"
-" ....\n"
-"}]]>"
-msgstr ""
-
#. Tag: title
-#: session_api.xml:308
#, no-c-format
msgid "Scalar results"
msgstr "スカラーの結果"
#. Tag: para
-#: session_api.xml:310
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Queries can specify a property of a class in the
<literal>select</literal> "
"clause. They can even call SQL aggregate functions. Properties or aggregates
"
"are considered \"scalar\" results and not entities in persistent
state."
msgstr ""
"クエリでは、 <literal>select</literal> 節でクラスのプロパティを指定できま"
-"す。 SQLの集合関数を呼ぶこともできます。プロパティや集合関数は、 (永続状態の"
+"す。 SQL の集合関数を呼ぶこともできます。プロパティや集合関数は、(永続状態の"
"エンティティではなく)「スカラー値」であると見なされます。"
-#. Tag: programlisting
-#: session_api.xml:316
-#, no-c-format
-msgid ""
-"<![CDATA[Iterator results = sess.createQuery(\n"
-" \"select cat.color, min(cat.birthdate), count(cat) from Cat cat
\" "
-"+\n"
-" \"group by cat.color\")\n"
-" .list()\n"
-" .iterator();\n"
-"\n"
-"while ( results.hasNext() ) {\n"
-" Object[] row = (Object[]) results.next();\n"
-" Color type = (Color) row[0];\n"
-" Date oldest = (Date) row[1];\n"
-" Integer count = (Integer) row[2];\n"
-" .....\n"
-"}]]>"
-msgstr ""
-
#. Tag: title
-#: session_api.xml:321
#, no-c-format
msgid "Bind parameters"
msgstr "パラメータのバインド"
#. Tag: para
-#: session_api.xml:323
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Methods on <literal>Query</literal> are provided for binding values to
named "
"parameters or JDBC-style <literal>?</literal> parameters.
<emphasis>Contrary "
@@ -689,229 +478,120 @@
"are identifiers of the form <literal>:name</literal> in the query
string. "
"The advantages of named parameters are as follows:"
msgstr ""
-"<literal>Query</literal> は、名前付きのパラメータやJDBCスタイルの <literal>?"
-"</literal> パラメータに値をバインドするためのメソッドを持っています。 "
-"<emphasis>JDBCとは違い、Hibernateはパラメータにゼロから番号を振っていきます。"
-"</emphasis> 名前付きのパラメータとは、クエリ文字列のなかにある <literal>:"
-"name</literal> 形式の識別子です。 名前付きパラメータの利点は次の通りです。"
+"<literal>Query</literal> は、名前付きのパラメータや JDBC スタイルの "
+"<literal>?</literal> パラメータに値をバインドするためのメソッドを持っていま"
+"す。 <emphasis> JDBC とは違い、 Hibernate はパラメータにゼロから番号を振って"
+"いきます。</emphasis>名前付きのパラメータとは、クエリ文字列のなかにある "
+"<literal>:name</literal> 形式の識別子です。名前付きパラメータの利点は次の通り"
+"です。"
#. Tag: para
-#: session_api.xml:333
#, no-c-format
msgid ""
"named parameters are insensitive to the order they occur in the query string"
msgstr "名前付きパラメータは、クエリ文字列に登場する順番と無関係です"
#. Tag: para
-#: session_api.xml:339
-#, fuzzy, no-c-format
+#, no-c-format
msgid "they can occur multiple times in the same query"
msgstr "同じクエリ内に複数回登場することができます"
#. Tag: para
-#: session_api.xml:344
#, no-c-format
msgid "they are self-documenting"
msgstr "自分自身を説明します"
-#. Tag: programlisting
-#: session_api.xml:350
-#, no-c-format
-msgid ""
-"<![CDATA[//named parameter (preferred)\n"
-"Query q = sess.createQuery(\"from DomesticCat cat where cat.name =
:name"
-"\");\n"
-"q.setString(\"name\", \"Fritz\");\n"
-"Iterator cats = q.iterate();]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: session_api.xml:352
-#, no-c-format
-msgid ""
-"<![CDATA[//positional parameter\n"
-"Query q = sess.createQuery(\"from DomesticCat cat where cat.name =
?\");\n"
-"q.setString(0, \"Izi\");\n"
-"Iterator cats = q.iterate();]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: session_api.xml:354
-#, no-c-format
-msgid ""
-"<![CDATA[//named parameter list\n"
-"List names = new ArrayList();\n"
-"names.add(\"Izi\");\n"
-"names.add(\"Fritz\");\n"
-"Query q = sess.createQuery(\"from DomesticCat cat where cat.name in (:"
-"namesList)\");\n"
-"q.setParameterList(\"namesList\", names);\n"
-"List cats = q.list();]]>"
-msgstr ""
-
#. Tag: title
-#: session_api.xml:359
#, no-c-format
msgid "Pagination"
msgstr "ページ分け"
#. Tag: para
-#: session_api.xml:361
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you need to specify bounds upon your result set, that is, the maximum "
"number of rows you want to retrieve and/or the first row you want to "
"retrieve, you can use methods of the <literal>Query</literal>
interface:"
msgstr ""
-"ResultSetに制限(復元したい最大行数や復元したい最初の行)を加える必要があれ"
-"ば、 以下のように、 <literal>Query</literal> インターフェイスのメソッドを使い"
+"ResultSet に制限(復元したい最大行数や復元したい最初の行)を加える必要があれ"
+"ば、以下のように、 <literal>Query</literal> インターフェースのメソッドを使い"
"ます。"
-#. Tag: programlisting
-#: session_api.xml:367
-#, no-c-format
-msgid ""
-"<![CDATA[Query q = sess.createQuery(\"from DomesticCat
cat\");\n"
-"q.setFirstResult(20);\n"
-"q.setMaxResults(10);\n"
-"List cats = q.list();]]>"
-msgstr ""
-
#. Tag: para
-#: session_api.xml:369
#, no-c-format
msgid ""
"Hibernate knows how to translate this limit query into the native SQL of "
"your DBMS."
msgstr ""
-"制限付きのクエリをDBMSのネイティブなSQLに変換する方法を、Hibernateは知ってい"
-"ます。"
+"制限付きのクエリを DBMS のネイティブな SQL に変換する方法を、 Hibernate は"
+"知っています。"
#. Tag: title
-#: session_api.xml:377
#, no-c-format
msgid "Scrollable iteration"
msgstr "スクロール可能なイテレーション"
#. Tag: para
-#: session_api.xml:379
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If your JDBC driver supports scrollable <literal>ResultSet</literal>s,
the "
"<literal>Query</literal> interface can be used to obtain a "
"<literal>ScrollableResults</literal> object that allows flexible
navigation "
"of the query results."
msgstr ""
-"JDBCドライバがスクロール可能な <literal>ResultSet</literal> をサポートしてい"
-"れば、 <literal>Query</literal> インターフェイスを使って、 "
-"<literal>ScrollableResults</literal> オブジェクトを 取得できます。それを使う"
+"JDBC ドライバがスクロール可能な <literal>ResultSet</literal> をサポートしてい"
+"れば、 <literal>Query</literal> インターフェースを使って、 "
+"<literal>ScrollableResults</literal> オブジェクトを取得できます。それを使う"
"と、クエリの結果に対して柔軟にナビゲーションできます。"
-#. Tag: programlisting
-#: session_api.xml:386
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Query q = sess.createQuery(\"select cat.name, cat from DomesticCat
"
-"cat \" +\n"
-" \"order by cat.name\");\n"
-"ScrollableResults cats = q.scroll();\n"
-"if ( cats.first() ) {\n"
-"\n"
-" // find the first name on each page of an alphabetical list of cats by "
-"name\n"
-" firstNamesOfPages = new ArrayList();\n"
-" do {\n"
-" String name = cats.getString(0);\n"
-" firstNamesOfPages.add(name);\n"
-" }\n"
-" while ( cats.scroll(PAGE_SIZE) );\n"
-"\n"
-" // Now get the first page of cats\n"
-" pageOfCats = new ArrayList();\n"
-" cats.beforeFirst();\n"
-" int i=0;\n"
-" while( ( PAGE_SIZE > i++ ) && cats.next() ) pageOfCats.add(
cats.get"
-"(1) );\n"
-"\n"
-"}\n"
-"cats.close()]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:388
-#, fuzzy, no-c-format
-msgid ""
"Note that an open database connection and cursor is required for this "
"functionality. Use
<literal>setMaxResult()</literal>/<literal>setFirstResult"
"()</literal> if you need offline pagination functionality."
msgstr ""
"この機能にはオープン状態のデータベースコネクションが必要であることに注意して"
-"ください。 もし、オフラインのページ分け機能が必要であれば、 "
+"ください。もし、オフラインのページ分け機能が必要であれば、 "
"<literal>setMaxResult()</literal> /
<literal>setFirstResult()</literal> を使"
"いましょう。"
#. Tag: title
-#: session_api.xml:397
#, no-c-format
msgid "Externalizing named queries"
msgstr "名前付きクエリの外出し"
#. Tag: para
-#: session_api.xml:399
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also define named queries in the mapping document. Remember to use a
"
"<literal>CDATA</literal> section if your query contains characters that
"
"could be interpreted as markup."
msgstr ""
-"マッピングドキュメントに名前付きのクエリを定義することができます。 (マーク"
+"マッピングドキュメントに名前付きのクエリを定義することができます。(マーク"
"アップと解釈される文字がクエリに含まれるなら、 <literal>CDATA</literal> セク"
-"ションを 使うことを忘れないようにしましょう。)"
+"ションを使うことを忘れないようにしましょう。)"
-#. Tag: programlisting
-#: session_api.xml:405
-#, no-c-format
-msgid ""
-"<![CDATA[<query
name=\"ByNameAndMaximumWeight\"><![CDATA[\n"
-" from eg.DomesticCat as cat\n"
-" where cat.name = ?\n"
-" and cat.weight > ?\n"
-"] ]></query>]]>"
-msgstr ""
-
#. Tag: para
-#: session_api.xml:407
#, no-c-format
msgid "Parameter binding and executing is done programatically:"
msgstr ""
-"パラメータのバインディングと実行は、以下のようなプログラムで行われます。"
+"パラメータのバインディングと実行は、以下のようなプログラムで行われます:"
-#. Tag: programlisting
-#: session_api.xml:411
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Query q =
sess.getNamedQuery(\"ByNameAndMaximumWeight\");\n"
-"q.setString(0, name);\n"
-"q.setInt(1, minWeight);\n"
-"List cats = q.list();]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:413
-#, fuzzy, no-c-format
-msgid ""
"The actual program code is independent of the query language that is used. "
"You can also define native SQL queries in metadata, or migrate existing "
"queries to Hibernate by placing them in mapping files."
msgstr ""
"実際のプログラムコードは、使われるクエリ言語に依存していないことに注意しま"
-"しょう。 メタデータには、ネイティブSQLクエリを定義することもできます。 また、"
-"既存のクエリをマッピングファイルに移すことで、 Hibernateに移行することもでき"
+"しょう。メタデータには、ネイティブ SQL クエリを定義することもできます。また、"
+"既存のクエリをマッピングファイルに移すことで、 Hibernate に移行することもでき"
"ます。"
#. Tag: para
-#: session_api.xml:419
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Also note that a query declaration inside a
<literal><hibernate-"
"mapping></literal> element requires a global unique name for the
query, "
@@ -919,145 +599,94 @@
"is made unique automatically by prepending the fully qualified name of the "
"class. For example
<literal>eg.Cat.ByNameAndMaximumWeight</literal>."
msgstr ""
-"<literal><hibernate-mapping></literal>
の中のクエリ定義は、クエリに対す"
-"る ユニークな名前が必要なことにも注意してください。それに対して、 "
-"<literal><class></literal> の中の クエリ定義は、クラスの完全限定名が前"
-"に付けられるので、自動的にユニークな名前になります。 例: <literal>eg.Cat."
+"<literal><hibernate-mapping></literal>
要素の中のクエリ定義は、クエリに"
+"対するユニークな名前が必要なことにも注意してください。それに対して、 "
+"<literal><class></literal> 要素の中のクエリ定義は、クラスの完全限定名が"
+"前に付けられるので、自動的にユニークな名前になります。例: <literal>eg.Cat."
"ByNameAndMaximumWeight</literal>"
#. Tag: title
-#: session_api.xml:432
#, no-c-format
msgid "Filtering collections"
-msgstr "コレクションのフィルタリング"
+msgstr "フィルタリングコレクション"
#. Tag: para
-#: session_api.xml:433
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A collection <emphasis>filter</emphasis> is a special type of query
that can "
"be applied to a persistent collection or array. The query string can refer "
"to <literal>this</literal>, meaning the current collection
element."
msgstr ""
"コレクション <emphasis>フィルタ</emphasis> は、永続化されているコレクションや"
-"配列に適用される 特殊なタイプのクエリです。そのクエリ文字列では、コレクション"
+"配列に適用される特殊なタイプのクエリです。そのクエリ文字列では、コレクション"
"のその時点での要素を意味する <literal>this</literal> を使います。"
-#. Tag: programlisting
-#: session_api.xml:439
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Collection blackKittens = session.createFilter(\n"
-" pk.getKittens(), \n"
-" \"where this.color = ?\")\n"
-" .setParameter( Color.BLACK, Hibernate.custom(ColorUserType.class) )\n"
-" .list()\n"
-");]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:441
-#, fuzzy, no-c-format
-msgid ""
"The returned collection is considered a bag that is a copy of the given "
"collection. The original collection is not modified. This is contrary to the
"
"implication of the name \"filter\", but consistent with expected
behavior."
msgstr ""
-"返されるコレクションはBagとみなされます。そして、それはもとのコレクションのコ"
-"ピーになります。 元のコレクションは修正されません(これは、\"filter\"という名"
-"前の意味とは異なりますが、 期待される動きとは一致しています)。"
+"返されるコレクションは Bag とみなされます。そして、それはもとのコレクションの"
+"コピーになります。元のコレクションは修正されません(これは、 \"filter\" とい"
+"う名前の意味とは異なりますが、期待される動きとは一致しています)。"
#. Tag: para
-#: session_api.xml:447
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Observe that filters do not require a <literal>from</literal> clause,
"
"although they can have one if required. Filters are not limited to returning
"
"the collection elements themselves."
msgstr ""
"フィルタには <literal>from</literal> 節が不要であることに気づくでしょう(必要"
-"なら、持つことも可能ですが)。 フィルタは、コレクションの要素自体を返して構い"
+"なら、持つことも可能ですが)。フィルタは、コレクションの要素自体を返して構い"
"ません。"
-#. Tag: programlisting
-#: session_api.xml:452
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Collection blackKittenMates = session.createFilter(\n"
-" pk.getKittens(), \n"
-" \"select this.mate where this.color =
eg.Color.BLACK.intValue\")\n"
-" .list();]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:454
-#, fuzzy, no-c-format
-msgid ""
"Even an empty filter query is useful, e.g. to load a subset of elements in a
"
"large collection:"
msgstr ""
-"クエリを含まないフィルタも役に立ちます。 例えば、非常に大きなコレクションの部"
+"クエリを含まないフィルタも役に立ちます。例えば、非常に大きなコレクションの部"
"分集合をロードするために使えます。"
-#. Tag: programlisting
-#: session_api.xml:459
-#, no-c-format
-msgid ""
-"<![CDATA[Collection tenKittens = session.createFilter(\n"
-" mother.getKittens(), \"\")\n"
-" .setFirstResult(0).setMaxResults(10)\n"
-" .list();]]>"
-msgstr ""
-
#. Tag: title
-#: session_api.xml:464
#, no-c-format
msgid "Criteria queries"
msgstr "クライテリアのクエリ"
#. Tag: para
-#: session_api.xml:466
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"HQL is extremely powerful, but some developers prefer to build queries "
"dynamically using an object-oriented API, rather than building query "
"strings. Hibernate provides an intuitive <literal>Criteria</literal>
query "
"API for these cases:"
msgstr ""
-"HQLは非常に強力ですが、クエリ文字列を作るよりも、オブジェクト指向のAPIを使っ"
-"て 動的にクエリを作る方を好む開発者もいます。 こういった場合のために、"
-"Hibernateは直感的な <literal>Criteria</literal> クエリAPIを提供しています。"
+"HQL は非常に強力ですが、クエリ文字列を作るよりも、オブジェクト指向の API を"
+"使って動的にクエリを作る方を好む開発者もいます。こういった場合のために、 "
+"Hibernate は直感的な <literal>Criteria</literal> クエリ API を提供していま"
+"す。"
-#. Tag: programlisting
-#: session_api.xml:472
-#, no-c-format
-msgid ""
-"<![CDATA[Criteria crit = session.createCriteria(Cat.class);\n"
-"crit.add( Restrictions.eq( \"color\", eg.Color.BLACK ) );\n"
-"crit.setMaxResults(10);\n"
-"List cats = crit.list();]]>"
-msgstr ""
-
#. Tag: para
-#: session_api.xml:474
#, no-c-format
msgid ""
"The <literal>Criteria</literal> and the associated
<literal>Example</"
-"literal> API are discussed in more detail in <xref
linkend=\"querycriteria\"/"
-">."
+"literal> API are discussed in more detail in <xref
linkend=\"querycriteria"
+"\" />."
msgstr ""
-"<literal>Criteria</literal> と <literal>Example</literal>
APIの詳細は、 "
+"<literal>Criteria</literal> と <literal>Example</literal>
API の詳細は、 "
"<xref linkend=\"querycriteria\"/> に述べられています。"
#. Tag: title
-#: session_api.xml:482
#, no-c-format
msgid "Queries in native SQL"
-msgstr "ネイティブSQLのクエリ"
+msgstr "ネイティブ SQL のクエリ"
#. Tag: para
-#: session_api.xml:484
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can express a query in SQL, using
<literal>createSQLQuery()</literal> "
"and let Hibernate manage the mapping from result sets to objects. You can at
"
@@ -1065,57 +694,31 @@
"<literal>Connection</literal> directly. If you choose to use the
Hibernate "
"API, you must enclose SQL aliases in braces:"
msgstr ""
-"<literal>createSQLQuery()</literal> を使って、SQLでクエリを表現することもでき"
-"ます。 そして、Hibernateに、ResultSet からオブジェクトへのマッピングをまかせ"
-"ます。 <literal>session.connection()</literal> を呼べばどんなときでも、直接、"
-"JDBC <literal>Connection</literal> を使用できることを覚えておきましょう。 も"
-"し、Hibernate APIを使うのであれば、下記のようにSQLの別名を括弧でくくらなけれ"
-"ばなりません。"
+"<literal>createSQLQuery()</literal> を使って、 SQL でクエリを表現することもで"
+"きます。そして、 Hibernate に、 ResultSet からオブジェクトへのマッピングをま"
+"かせます。 <literal>session.connection()</literal> を呼べばどんなときでも、直"
+"接、 JDBC <literal>Connection</literal> を使用できることを覚えておきましょ"
+"う。もし、 Hibernate API を使うのであれば、下記のように SQL の別名を括弧でく"
+"くらなければなりません。"
-#. Tag: programlisting
-#: session_api.xml:492
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[List cats = session.createSQLQuery(\"SELECT {cat.*} FROM CAT {cat}
"
-"WHERE ROWNUM<10\")\n"
-" .addEntity(\"cat\", Cat.class)\n"
-".list();]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: session_api.xml:494
-#, no-c-format
-msgid ""
-"<![CDATA[List cats = session.createSQLQuery(\n"
-" \"SELECT {cat}.ID AS {cat.id}, {cat}.SEX AS {cat.sex}, \" +\n"
-" \"{cat}.MATE AS {cat.mate}, {cat}.SUBCLASS AS {cat.class}, ...
\" "
-"+\n"
-" \"FROM CAT {cat} WHERE ROWNUM<10\")\n"
-" .addEntity(\"cat\", Cat.class)\n"
-".list()]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:496
-#, fuzzy, no-c-format
-msgid ""
"SQL queries can contain named and positional parameters, just like Hibernate
"
"queries. More information about native SQL queries in Hibernate can be found
"
-"in <xref linkend=\"querysql\"/>."
+"in <xref linkend=\"querysql\" />."
msgstr ""
-"SQLクエリは、Hibernateクエリと同じように、名前付きのパラメータと位置パラメー"
-"タを持つことができます。 HibernateにおけるネイティブなSQLクエリの詳細について"
-"は、 <xref linkend=\"querysql\"/> を参照してください。"
+"SQL クエリは、 Hibernate クエリと同じように、名前付きのパラメータと位置パラ"
+"メータを持つことができます。 Hibernate におけるネイティブな SQL クエリの詳細"
+"については、 <xref linkend=\"querysql\"/> を参照してください。"
#. Tag: title
-#: session_api.xml:507
#, no-c-format
msgid "Modifying persistent objects"
msgstr "永続オブジェクトの修正"
#. Tag: para
-#: session_api.xml:509
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Transactional persistent instances</emphasis> (i.e. objects
"
"loaded, saved, created or queried by the <literal>Session</literal>)
can be "
@@ -1128,43 +731,31 @@
"manipulate it directly while the <literal>Session</literal> is
open:"
msgstr ""
"<emphasis>処理中の永続インスタンス</emphasis> (例:
<literal>Session</"
-"literal> によって、 ロード、セーブ、作成、クエリされたオブジェクト)は、アプ"
-"リケーションに操作されます。 その際に変更された永続状態は、 "
-"<literal>Session</literal> が <emphasis>フラッシュ</emphasis>
されるときに、"
-"永続化されます(これは、この章の後半で述べています)。 変更を永続化するため"
-"に、特殊なメソッド( <literal>update()</literal> のようなもの。これは、別の目"
-"的で使用します)を 呼ぶ必要はありません。 オブジェクトの状態を更新する一番簡"
-"単な方法は、オブジェクトを <literal>load()</literal> し、
<literal>Session</"
-"literal> をオープンにしている間に、直接操作することです。"
+"literal> によって、ロード、セーブ、作成、クエリされたオブジェクト)は、アプリ"
+"ケーションに操作されます。その際に変更された永続状態は、 <literal>Session</"
+"literal> が <emphasis>フラッシュ</emphasis> されるときに、永続化されます(こ"
+"れは、この章の後半で述べています)。変更を永続化するために、特殊なメソッド"
+"( <literal>update()</literal> のようなもの。これは、別の目的で使用します)を"
+"呼ぶ必要はありません。オブジェクトの状態を更新する一番簡単な方法は、オブジェ"
+"クトを <literal>load()</literal> し、 <literal>Session</literal>
をオープンに"
+"している間に、直接操作することです。"
-#. Tag: programlisting
-#: session_api.xml:520
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[DomesticCat cat = (DomesticCat) sess.load( Cat.class, new Long"
-"(69) );\n"
-"cat.setName(\"PK\");\n"
-"sess.flush(); // changes to cat are automatically detected and
persisted]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:522
-#, fuzzy, no-c-format
-msgid ""
"Sometimes this programming model is inefficient, as it requires in the same "
"session both an SQL <literal>SELECT</literal> to load an object and an
SQL "
"<literal>UPDATE</literal> to persist its updated state. Hibernate
offers an "
"alternate approach by using detached instances."
msgstr ""
-"(オブジェクトをロードするための)SQLの <literal>SELECT</literal> と(更新さ"
-"れた状態を永続化するための) SQLの <literal>UPDATE</literal> が同じセッション"
-"で必要となるので、このプログラミングモデルは、 効率が悪くなる場合がありま"
-"す。 そのため、Hibernateは別の方法を用意しています。それは、インスタンスを分"
-"離する(detached)方法です。"
+"(オブジェクトをロードするための) SQL の <literal>SELECT</literal> と(更新"
+"された状態を永続化するための) SQL の <literal>UPDATE</literal> が同じセッ"
+"ションで必要となるので、このプログラミングモデルは、効率が悪くなる場合があり"
+"ます。そのため、 Hibernate は別の方法を用意しています。それは、 detached イン"
+"スタンスを使用する方法です。"
#. Tag: para
-#: session_api.xml:529
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate does not offer its own API for direct execution of "
"<literal>UPDATE</literal> or <literal>DELETE</literal>
statements. Hibernate "
@@ -1175,26 +766,26 @@
"the notion of mass operations conflicts with object/relational mapping for "
"online transaction processing-oriented applications. Future versions of "
"Hibernate can, however, provide special mass operation functions. See <xref
"
-"linkend=\"batch\"/> for some possible batch operation tricks."
+"linkend=\"batch\" /> for some possible batch operation tricks."
msgstr ""
-"Hibernateは、 <placeholder-1/> 文や <placeholder-2/> 文を直接実行するAPIを用"
-"意していません。 Hibernateは、 <placeholder-3/> サービスであり、使われるSQL "
-"<placeholder-4/> のことを開発者が考える必要はありません。 JDBCはSQL文を実行す"
-"る完璧なAPIであり、 <placeholder-5/> を呼ぶことで いつでも、JDBC "
-"<placeholder-6/> を開発者は取得できます。 さらに、大量のデータ操作の考え方"
-"は、オンライントランザクション処理向きアプリケーションの オブジェクト/リレー"
-"ショナルマッピングと衝突します。 しかし、Hibernateの今後のバージョンでは、大"
-"量データを処理する特別な機能を提供するかもしれません。 バッチ操作に利用できる"
-"いくつかの工夫については、 <xref linkend=\"batch\"/> を参照してください。"
+"Hibernate は、 <literal>UPDATE</literal> 文や
<literal>DELETE</literal> 文を"
+"直接実行する API を用意していません。 Hibernate は、 <emphasis>ステートマネー"
+"ジメント</emphasis> サービスであり、それを使うのに <emphasis>ステートメント</"
+"emphasis> のことを開発者が考える必要はありません。 JDBC は SQL 文を実行する完"
+"璧な API であり、 <literal>session.connection()</literal> を呼ぶことでいつで"
+"も、 JDBC <literal>Connection</literal> を開発者は取得できます。さらに、大量"
+"のデータ操作の考え方は、オンライントランザクション処理向きアプリケーションの"
+"オブジェクト/リレーショナルマッピングと衝突します。しかし、 Hibernate の今後"
+"のバージョンでは、大量データを処理する特別な機能を提供するかもしれません。"
+"バッチ操作に利用できるいくつかの工夫については、 <xref linkend=\"batch\"/> を"
+"参照してください。"
#. Tag: title
-#: session_api.xml:546
#, no-c-format
msgid "Modifying detached objects"
-msgstr "分離オブジェクトの修正"
+msgstr "detached オブジェクトの修正"
#. Tag: para
-#: session_api.xml:548
#, no-c-format
msgid ""
"Many applications need to retrieve an object in one transaction, send it to "
@@ -1203,56 +794,36 @@
"environment usually use versioned data to ensure isolation for the
\"long\" "
"unit of work."
msgstr ""
-"多くのアプリケーションでは次のことが必要になります。 それは、あるトランザク"
-"ションでオブジェクトを復元し、操作するためにそれをUI層に送り、 その後に、新し"
-"いトランザクションで変更をセーブするといったことです。 並行性の高い環境で、こ"
-"のタイプのアプローチを使うアプリケーションでは、 \"期間の長い\" 作業単位の隔"
+"多くのアプリケーションでは次のことが必要になります。それは、あるトランザク"
+"ションでオブジェクトを復元し、操作するためにそれを UI 層に送り、その後に、新"
+"しいトランザクションで変更をセーブするといったことです。並行性の高い環境で、"
+"このタイプのアプローチを使うアプリケーションでは、「期間の長い」作業単位の隔"
"離性を保証するために、バージョンデータが通常使われます。"
#. Tag: para
-#: session_api.xml:555
#, no-c-format
msgid ""
"Hibernate supports this model by providing for reattachment of detached "
"instances using the <literal>Session.update()</literal> or
<literal>Session."
"merge()</literal> methods:"
msgstr ""
-"Hibernateは、 <literal>Session.update()</literal> や
<literal>Session.merge()"
-"</literal> メソッドを 使って、分離インスタンスを再追加することで、このモデル"
-"に対応します。"
+"Hibernate は、 <literal>Session.update()</literal> や
<literal>Session.merge"
+"()</literal> メソッドを使って、 detached インスタンスを再追加することで、この"
+"モデルに対応します。"
-#. Tag: programlisting
-#: session_api.xml:561
-#, no-c-format
-msgid ""
-"<![CDATA[// in the first session\n"
-"Cat cat = (Cat) firstSession.load(Cat.class, catId);\n"
-"Cat potentialMate = new Cat();\n"
-"firstSession.save(potentialMate);\n"
-"\n"
-"// in a higher layer of the application\n"
-"cat.setMate(potentialMate);\n"
-"\n"
-"// later, in a new session\n"
-"secondSession.update(cat); // update cat\n"
-"secondSession.update(mate); // update mate]]>"
-msgstr ""
-
#. Tag: para
-#: session_api.xml:563
#, no-c-format
msgid ""
"If the <literal>Cat</literal> with identifier
<literal>catId</literal> had "
"already been loaded by <literal>secondSession</literal> when the
application "
"tried to reattach it, an exception would have been thrown."
msgstr ""
-"識別子<literal>catId</literal> を持つ <literal>Cat</literal> が、既に
"
+"識別子 <literal>catId</literal> を持つ <literal>Cat</literal>
が、既に "
"<literal>secondSession</literal> でロードされていた場合は、再追加しようとした"
"ときに、例外が投げられます。"
#. Tag: para
-#: session_api.xml:569
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Use <literal>update()</literal> if you are certain that the session
does not "
"contain an already persistent instance with the same identifier. Use "
@@ -1262,84 +833,67 @@
"fresh session, ensuring that the reattachment of your detached instances is "
"the first operation that is executed."
msgstr ""
-"同じ識別子を持つ永続インスタンスをセッションが既に保持していないことを 確信で"
-"きるなら <literal>update()</literal> を使いましょう。 そして、セッションの状"
-"態を考えずに、どんな場合でも変更をマージしたい場合は、 <literal>merge()</"
-"literal> を使いましょう。 すなわち、分離オブジェクトの再追加操作が、最初に実"
-"行されることを確実にするために、 通常は <literal>update()</literal> が新しい"
-"セッションのなかで最初に呼ばれるメソッドになります。"
+"同じ識別子を持つ永続インスタンスをセッションが既に保持していないことを確信で"
+"きるなら <literal>update()</literal> を使います。そして、セッションの状態を考"
+"えずに、どんな場合でも変更をマージしたい場合は、 <literal>merge()</literal> "
+"を使います。すなわち、 detached インスタンスの再追加操作が、最初に実行される"
+"ことを確実にするために、通常は <literal>update()</literal> が新しいセッション"
+"のなかで最初に呼ばれるメソッドになります。"
#. Tag: para
-#: session_api.xml:578
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The application should individually <literal>update()</literal>
detached "
"instances that are reachable from the given detached instance "
"<emphasis>only</emphasis> if it wants their state to be updated. This
can be "
"automated using <emphasis>transitive persistence</emphasis>. See
<xref "
-"linkend=\"objectstate-transitive\"/> for more information."
+"linkend=\"objectstate-transitive\" /> for more information."
msgstr ""
-"分離インスタンスから到達可能な、分離インスタンスをアプリケーションは個別に "
-"<literal>update()</literal> すべきです。それは、その状態を更新したい場合に "
-"<emphasis>限り</emphasis> ます。 <emphasis>遷移的な永続化</emphasis>
を使え"
-"ば、もちろん自動化できます。 <xref linkend=\"objectstate-transitive\"/> を参"
-"照してください。"
+"detached インスタンスから到達可能な、 detached インスタンスをアプリケーション"
+"は個別に <literal>update()</literal> すべきです。それは、その状態を更新したい"
+"場合に <emphasis>限ります。</emphasis>
<emphasis>遷移的な永続化</emphasis> "
+"を使えば、もちろん自動化できます。<xref linkend=\"objectstate-transitive\"/> "
+"を参照してください。"
#. Tag: para
-#: session_api.xml:585
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>lock()</literal> method also allows an application to
"
"reassociate an object with a new session. However, the detached instance has
"
"to be unmodified."
msgstr ""
-"メソッドでもまた、新しいセッションにオブジェクトを再関連付けできます。 しか"
-"し、分離インスタンスは無修正でなければなりません。"
+"<literal>lock()</literal> メソッドでもまた、新しいセッションにオブジェクトを"
+"再関連付けできます。しかし、 detached インスタンスは無修正でなければなりませ"
+"ん。"
-#. Tag: programlisting
-#: session_api.xml:590
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[//just reassociate:\n"
-"sess.lock(fritz, LockMode.NONE);\n"
-"//do a version check, then reassociate:\n"
-"sess.lock(izi, LockMode.READ);\n"
-"//do a version check, using SELECT ... FOR UPDATE, then reassociate:\n"
-"sess.lock(pk, LockMode.UPGRADE);]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:592
-#, fuzzy, no-c-format
-msgid ""
"Note that <literal>lock()</literal> can be used with various "
"<literal>LockMode</literal>s. See the API documentation and the chapter
on "
"transaction handling for more information. Reattachment is not the only "
"usecase for <literal>lock()</literal>."
msgstr ""
"<literal>lock()</literal> は、さまざまな
<literal>LockMode</literal> とともに"
-"使うことができます。 詳細は、APIドキュメントとトランザクション処理の章を参照"
-"してください。 再追加のときにだけ、 <literal>lock()</literal> が使われるわけ"
-"ではありません。"
+"使うことができます。詳細は、 API ドキュメントとトランザクション処理の章を参照"
+"してください。再追加のときにだけ、 <literal>lock()</literal> が使われるわけで"
+"はありません。"
#. Tag: para
-#: session_api.xml:599
#, no-c-format
msgid ""
"Other models for long units of work are discussed in <xref linkend="
-"\"transactions-optimistic\"/>."
+"\"transactions-optimistic\" />."
msgstr ""
-"期間の長い作業単位の、その他のモデルは、<xref linked=\"transactions-"
+"期間の長い作業単位の、その他のモデルは、 <xref linkend=\"transactions-"
"optimistic\"/> で述べています。"
#. Tag: title
-#: session_api.xml:606
#, no-c-format
msgid "Automatic state detection"
msgstr "自動的な状態検出"
#. Tag: para
-#: session_api.xml:608
#, no-c-format
msgid ""
"Hibernate users have requested a general purpose method that either saves a "
@@ -1347,32 +901,13 @@
"detached instances associated with its current identifier. The "
"<literal>saveOrUpdate()</literal> method implements this
functionality."
msgstr ""
-"Hibernateのユーザは次の2つのケースのどちらにも使える汎用的なメソッドを要求し"
-"ていました。 それは、新しい識別子を生成して一時的なインスタンスをセーブするこ"
-"とと、 その時点の識別子と関連づいている分離インスタンスを更新/再追加すること"
-"のできるメソッドです。 <literal>saveOrUpdate()</literal> はこのような機能を実"
-"現したメソッドです。"
+"Hibernate のユーザーは次の2つのケースのどちらにも使える汎用的なメソッドを要求"
+"していました。それは、新しい識別子を生成して transient インスタンスをセーブす"
+"ることと、その時点の識別子と関連づいている detached インスタンスを更新/再追加"
+"することのできるメソッドです。 <literal>saveOrUpdate()</literal> はこのような"
+"機能を実現したメソッドです。"
-#. Tag: programlisting
-#: session_api.xml:615
-#, no-c-format
-msgid ""
-"<![CDATA[// in the first session\n"
-"Cat cat = (Cat) firstSession.load(Cat.class, catID);\n"
-"\n"
-"// in a higher tier of the application\n"
-"Cat mate = new Cat();\n"
-"cat.setMate(mate);\n"
-"\n"
-"// later, in a new session\n"
-"secondSession.saveOrUpdate(cat); // update existing state (cat has a non-"
-"null id)\n"
-"secondSession.saveOrUpdate(mate); // save the new instance (mate has a null
"
-"id)]]>"
-msgstr ""
-
#. Tag: para
-#: session_api.xml:617
#, no-c-format
msgid ""
"The usage and semantics of <literal>saveOrUpdate()</literal> seems to
be "
@@ -1382,49 +917,43 @@
"<literal>merge()</literal>. Some whole applications will never use
either of "
"these methods."
msgstr ""
-"<literal>saveOrUpdate()</literal> の使用方法と意味は、 新しいユーザにとって混"
-"乱を招くかもしれません。 まず第一に、あるセッションで使用したインスタンスを別"
-"の新しいセッションで使おうとしない限り、 <literal>update()</literal> や "
+"<literal>saveOrUpdate()</literal> の使用方法と意味は、新しいユーザーにとって"
+"混乱を招くかもしれません。まず第一に、あるセッションで使用したインスタンスを"
+"別の新しいセッションで使おうとしない限り、 <literal>update()</literal> や "
"<literal>saveOrUpdate()</literal> や
<literal>merge()</literal> を使う必要は"
-"ありません。 アプリケーション全体を通じて、これらのメソッドを全く使わないこと"
+"ありません。アプリケーション全体を通じて、これらのメソッドを全く使わないこと"
"もあります。"
#. Tag: para
-#: session_api.xml:625
#, no-c-format
msgid ""
"Usually <literal>update()</literal> or
<literal>saveOrUpdate()</literal> are "
"used in the following scenario:"
msgstr ""
"通常、 <literal>update()</literal> や
<literal>saveOrUpdate()</literal> は次"
-"のシナリオで 使われます。"
+"のシナリオで使われます:"
#. Tag: para
-#: session_api.xml:632
#, no-c-format
msgid "the application loads an object in the first session"
msgstr "アプリケーションが最初のセッションでオブジェクトをロードします。"
#. Tag: para
-#: session_api.xml:637
#, no-c-format
msgid "the object is passed up to the UI tier"
-msgstr "オブジェクトがUI層に送られます。"
+msgstr "オブジェクトが UI 層に送られます。"
#. Tag: para
-#: session_api.xml:642
#, no-c-format
msgid "some modifications are made to the object"
msgstr "オブジェクトに対して変更が加えられます。"
#. Tag: para
-#: session_api.xml:647
#, no-c-format
msgid "the object is passed back down to the business logic tier"
msgstr "オブジェクトがビジネスロジック層に送られます。"
#. Tag: para
-#: session_api.xml:652
#, no-c-format
msgid ""
"the application persists these modifications by calling
<literal>update()</"
@@ -1434,49 +963,42 @@
"とで、これらの変更を永続化します。"
#. Tag: para
-#: session_api.xml:659
#, no-c-format
msgid "<literal>saveOrUpdate()</literal> does the following:"
-msgstr "<literal>saveOrUpdate()</literal> は以下のことを行います。"
+msgstr "<literal>saveOrUpdate()</literal> は以下のことを行います:"
#. Tag: para
-#: session_api.xml:665
#, no-c-format
msgid "if the object is already persistent in this session, do nothing"
msgstr ""
"オブジェクトがこのセッションで、すでに永続化されていれば、何もしません。"
#. Tag: para
-#: session_api.xml:670
#, no-c-format
msgid ""
"if another object associated with the session has the same identifier, throw
"
"an exception"
msgstr ""
-"そのセッションに関連づいている別のオブジェクトが同じ識別子を持っているなら、 "
+"そのセッションに関連づいている別のオブジェクトが同じ識別子を持っているなら、"
"例外を投げます。"
#. Tag: para
-#: session_api.xml:676
#, no-c-format
msgid "if the object has no identifier property,
<literal>save()</literal> it"
msgstr ""
"オブジェクトの識別子が値を持たないならば、 <literal>save()</literal> します。"
#. Tag: para
-#: session_api.xml:681
#, no-c-format
msgid ""
"if the object's identifier has the value assigned to a newly instantiated
"
"object, <literal>save()</literal> it"
msgstr ""
"オブジェクトの識別子が値を持ち、その値が新たにインスタンス化されたオブジェク"
-"トのための値である場合、 そのオブジェクトを <literal>save()</literal> しま"
-"す。"
+"トのための値である場合、そのオブジェクトを <literal>save()</literal> します。"
#. Tag: para
-#: session_api.xml:687
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"if the object is versioned by a
<literal><version></literal> or "
"<literal><timestamp></literal>, and the version property
value is the "
@@ -1484,25 +1006,22 @@
"literal> it"
msgstr ""
"オブジェクトが( <literal><version></literal> や
<literal><"
-"timestamp></literal> によって) バージョンづけされていて、バージョンのプロ"
-"パティが値を持ち、 その値が新しくインスタンス化されたオブジェクトのための値で"
-"ある場合、 そのオブジェクトを <literal>save()</literal> します。"
+"timestamp></literal> によって)バージョンづけされていて、バージョンのプロ"
+"パティが値を持ち、その値が新しくインスタンス化されたオブジェクトのための値で"
+"ある場合、そのオブジェクトを <literal>save()</literal> します。"
#. Tag: para
-#: session_api.xml:695
#, no-c-format
msgid "otherwise <literal>update()</literal> the object"
msgstr ""
"そうでない場合は、そのオブジェクトを <literal>update()</literal> します。"
#. Tag: para
-#: session_api.xml:701
#, no-c-format
msgid "and <literal>merge()</literal> is very different:"
-msgstr "そして、 <literal>merge()</literal> は以下のようにとても異なります。"
+msgstr "そして、 <literal>merge()</literal> は以下のように非常に異なります:"
#. Tag: para
-#: session_api.xml:707
#, no-c-format
msgid ""
"if there is a persistent instance with the same identifier currently "
@@ -1510,43 +1029,38 @@
"persistent instance"
msgstr ""
"同じ識別子を持つ永続化インスタンスがその時点でセッションと関連付いているなら"
-"ば、 引数で受け取ったオブジェクトの状態を永続化インスタンスにコピーします。"
+"ば、引数で受け取ったオブジェクトの状態を永続化インスタンスにコピーします。"
#. Tag: para
-#: session_api.xml:714
#, no-c-format
msgid ""
"if there is no persistent instance currently associated with the session, "
"try to load it from the database, or create a new persistent instance"
msgstr ""
-"永続化インスタンスがその時点でセッションに関連付いていないなら、 データベース"
+"永続化インスタンスがその時点でセッションに関連付いていないなら、データベース"
"からそれをロードするか、あるいは、新しい永続化インスタンスを作成します。"
#. Tag: para
-#: session_api.xml:720
#, no-c-format
msgid "the persistent instance is returned"
msgstr "永続化インスタンスが返されます。"
#. Tag: para
-#: session_api.xml:725
#, no-c-format
msgid ""
"the given instance does not become associated with the session, it remains "
"detached"
msgstr ""
-"引数として与えたインスタンスはセッションと関連を持ちません。 それは、分離状態"
+"引数として与えたインスタンスはセッションと関連を持ちません。それは、分離状態"
"のままです。"
#. Tag: title
-#: session_api.xml:735
#, no-c-format
msgid "Deleting persistent objects"
msgstr "永続オブジェクトの削除"
#. Tag: para
-#: session_api.xml:737
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>Session.delete()</literal> will remove an object's state
from the "
"database. Your application, however, can still hold a reference to a deleted
"
@@ -1554,19 +1068,12 @@
"persistent instance, transient."
msgstr ""
"<literal>Session.delete()</literal> はオブジェクトの状態をデータベースから削"
-"除します。 もちろん、削除したオブジェクトをアプリケーションが保持したままでも"
-"よいです。 そのため、 <literal>delete()</literal> は永続インスタンスを一時的"
-"にするものと考えるのが一番です。"
+"除します。もちろん、削除したオブジェクトをアプリケーションが保持したままでも"
+"よいです。そのため、 <literal>delete()</literal> は永続インスタンスを "
+"transient にするものと考えるのが一番です。"
-#. Tag: programlisting
-#: session_api.xml:744
+#. Tag: para
#, no-c-format
-msgid "<![CDATA[sess.delete(cat);]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:746
-#, fuzzy, no-c-format
msgid ""
"You can delete objects in any order, without risk of foreign key constraint "
"violations. It is still possible to violate a <literal>NOT
NULL</literal> "
@@ -1574,50 +1081,28 @@
"g. if you delete the parent, but forget to delete the children."
msgstr ""
"外部キー制約に違反するリスクもなく、好きな順番でオブジェクトを削除することが"
-"できます。 ただし、間違った順番でオブジェクトを削除すると、外部キーカラムの "
-"<literal>NOT NULL</literal> 制約に違反する可能性があります。 例えば、親オブ"
+"できます。ただし、間違った順番でオブジェクトを削除すると、外部キーカラムの "
+"<literal>NOT NULL</literal> 制約に違反する可能性があります。例えば、親オブ"
"ジェクトを削除したときに、子供オブジェクトを削除し忘れた場合です。"
#. Tag: title
-#: session_api.xml:757
#, no-c-format
msgid "Replicating object between two different datastores"
msgstr "異なる二つのデータストア間でのオブジェクトのレプリケーション"
#. Tag: para
-#: session_api.xml:759
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is sometimes useful to be able to take a graph of persistent instances "
"and make them persistent in a different datastore, without regenerating "
"identifier values."
msgstr ""
-"永続インスタンスのグラフを別のデータストアに永続化する場合に、 識別子の値を再"
+"永続インスタンスのグラフを別のデータストアに永続化する場合に、識別子の値を再"
"生成せずにすむと便利な場合があります。"
-#. Tag: programlisting
-#: session_api.xml:765
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[//retrieve a cat from one database\n"
-"Session session1 = factory1.openSession();\n"
-"Transaction tx1 = session1.beginTransaction();\n"
-"Cat cat = session1.get(Cat.class, catId);\n"
-"tx1.commit();\n"
-"session1.close();\n"
-"\n"
-"//reconcile with a second database\n"
-"Session session2 = factory2.openSession();\n"
-"Transaction tx2 = session2.beginTransaction();\n"
-"session2.replicate(cat, ReplicationMode.LATEST_VERSION);\n"
-"tx2.commit();\n"
-"session2.close();]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:767
-#, fuzzy, no-c-format
-msgid ""
"The <literal>ReplicationMode</literal> determines how
<literal>replicate()</"
"literal> will deal with conflicts with existing rows in the database:"
msgstr ""
@@ -1626,49 +1111,44 @@
"します。"
#. Tag: para
-#: session_api.xml:774
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>ReplicationMode.IGNORE</literal>: ignores the object when
there is "
"an existing database row with the same identifier"
msgstr ""
"<literal>ReplicationMode.IGNORE</literal> - 同じ識別子を持つ行がデータベース"
-"に存在するなら、 そのオブジェクトを無視します。"
+"に存在するなら、そのオブジェクトを無視します。"
#. Tag: para
-#: session_api.xml:780
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>ReplicationMode.OVERWRITE</literal>: overwrites any existing
"
"database row with the same identifier"
msgstr ""
-"<literal>ReplicationMode.OVERWRITE</literal> - 同じ識別子を持つ既存の行を す"
-"べて上書きします。"
+"<literal>ReplicationMode.OVERWRITE</literal> - 同じ識別子を持つ既存の行をすべ"
+"て上書きします。"
#. Tag: para
-#: session_api.xml:786
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>ReplicationMode.EXCEPTION</literal>: throws an exception if
there "
"is an existing database row with the same identifier"
msgstr ""
"<literal>ReplicationMode.EXCEPTION</literal> - 同じ識別子を持つ行がデータベー"
-"スに存在するなら、 例外を投げます。"
+"スに存在するなら、例外を投げます。"
#. Tag: para
-#: session_api.xml:792
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>ReplicationMode.LATEST_VERSION</literal>: overwrites the row
if its "
"version number is earlier than the version number of the object, or ignore "
"the object otherwise"
msgstr ""
"<literal>ReplicationMode.LATEST_VERSION</literal> - 行に保存されているバー"
-"ジョン番号が、 引数のオブジェクトのバージョン番号より古いならば、その行を上書"
+"ジョン番号が、引数のオブジェクトのバージョン番号より古いならば、その行を上書"
"きします。"
#. Tag: para
-#: session_api.xml:800
#, no-c-format
msgid ""
"Usecases for this feature include reconciling data entered into different "
@@ -1676,110 +1156,96 @@
"product upgrades, rolling back changes made during non-ACID transactions and
"
"more."
msgstr ""
-"次のようなケースで、この機能を使用します。 異なるデータベースインスタンスに入"
-"れられたデータの同期、 製品更新時におけるシステム設定情報の更新、非ACIDトラン"
-"ザクションのなかで加えられた変更のロールバックなどです。"
+"次のようなケースで、この機能を使用します。異なるデータベースインスタンスに入"
+"れられたデータの同期、製品更新時におけるシステム設定情報の更新、非 ACID トラ"
+"ンザクションのなかで加えられた変更のロールバックなどです。"
#. Tag: title
-#: session_api.xml:809
#, no-c-format
msgid "Flushing the Session"
msgstr "セッションのフラッシュ"
#. Tag: para
-#: session_api.xml:811
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Sometimes the <literal>Session</literal> will execute the SQL
statements "
"needed to synchronize the JDBC connection's state with the state of objects
"
"held in memory. This process, called <emphasis>flush</emphasis>, occurs
by "
"default at the following points:"
msgstr ""
-"JDBCコネクションの状態とメモリ上のオブジェクトの状態を同期させるために必要な "
-"SQL文を <literal>Session</literal> が実行することがときどきあります。 この処"
-"理 <emphasis>flush</emphasis> は、デフォルトでは次のときに起こります。"
+"JDBC コネクションの状態とメモリ上のオブジェクトの状態を同期させるために必要"
+"な SQL 文を <literal>Session</literal> が実行することがときどきあります。この"
+"処理 <emphasis>flush</emphasis> は、デフォルトでは次のときに起こります。"
#. Tag: para
-#: session_api.xml:820
#, no-c-format
msgid "before some query executions"
msgstr "クエリを実行する前"
#. Tag: para
-#: session_api.xml:825
#, no-c-format
msgid "from <literal>org.hibernate.Transaction.commit()</literal>"
msgstr "<literal>org.hibernate.Transaction.commit()</literal>
を実行したとき"
#. Tag: para
-#: session_api.xml:830
#, no-c-format
msgid "from <literal>Session.flush()</literal>"
msgstr "<literal>Session.flush()</literal> を実行したとき"
#. Tag: para
-#: session_api.xml:836
-#, fuzzy, no-c-format
+#, no-c-format
msgid "The SQL statements are issued in the following order:"
-msgstr "SQL文は以下の順番で発行されます。"
+msgstr "SQL 文は以下の順番で発行されます。"
#. Tag: para
-#: session_api.xml:842
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"all entity insertions in the same order the corresponding objects were saved
"
"using <literal>Session.save()</literal>"
msgstr ""
"すべてのエンティティの挿入。これは、 <literal>Session.save()</literal> を使っ"
-"てセーブした オブジェクトの順に実行していきます。"
+"てセーブしたオブジェクトの順に実行していきます。"
#. Tag: para
-#: session_api.xml:848
#, no-c-format
msgid "all entity updates"
msgstr "すべてのエンティティの更新"
#. Tag: para
-#: session_api.xml:853
#, no-c-format
msgid "all collection deletions"
msgstr "すべてのコレクションの削除"
#. Tag: para
-#: session_api.xml:858
#, no-c-format
msgid "all collection element deletions, updates and insertions"
msgstr "すべてのコレクションの要素に対する削除、更新、挿入"
#. Tag: para
-#: session_api.xml:863
#, no-c-format
msgid "all collection insertions"
msgstr "すべてのコレクションの挿入"
#. Tag: para
-#: session_api.xml:868
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"all entity deletions in the same order the corresponding objects were "
"deleted using <literal>Session.delete()</literal>"
msgstr ""
-"すべてのエンティティの削除。これは、<literal>Session.delete()</literal> を"
-"使って 削除したオブジェクトの順に実行していきます。"
+"すべてのエンティティの削除。これは、 <literal>Session.delete()</literal> を"
+"使って削除したオブジェクトの順に実行していきます。"
#. Tag: para
-#: session_api.xml:875
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An exception is that objects using <literal>native</literal> ID
generation "
"are inserted when they are saved."
msgstr ""
"(1つ例外があります。 <literal>native</literal> ID 生成を使ったオブジェクト"
-"は、 それらがセーブされたときに挿入されます。)"
+"は、それらがセーブされたときに挿入されます。)"
#. Tag: para
-#: session_api.xml:880
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Except when you explicitly <literal>flush()</literal>, there are
absolutely "
"no guarantees about <emphasis>when</emphasis> the
<literal>Session</literal> "
@@ -1788,14 +1254,13 @@
"(..)</literal> will never return stale or incorrect data."
msgstr ""
"明示的に <literal>flush()</literal> するときを除いて、
<emphasis>いつ</"
-"emphasis><literal>Session</literal> がJDBCをコールするのかについて 絶対的な保"
-"証はありません。ただし、それらが実行される <emphasis>順番</emphasis> だけは "
-"保証されます。 また、Hibernate は、 <literal>Query.list(..)</literal> が古い"
-"データや間違ったデータ返さないことを 保証しています。"
+"emphasis> <literal>Session</literal> が JDBC をコールするのかについて絶対的な"
+"保証はありません。ただし、それらが実行される <emphasis>順番</emphasis> だけは"
+"保証されます。また、 Hibernate は、 <literal>Query.list(..)</literal> が古い"
+"データや間違ったデータ返さないことを保証しています。"
#. Tag: para
-#: session_api.xml:888
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is possible to change the default behavior so that flush occurs less "
"frequently. The <literal>FlushMode</literal> class defines three
different "
@@ -1804,72 +1269,48 @@
"never flush unless <literal>flush()</literal> is called explicitly. The
last "
"mode is useful for long running units of work, where a
<literal>Session</"
"literal> is kept open and disconnected for a long time (see <xref
linkend="
-"\"transactions-optimistic-longsession\"/>)."
+"\"transactions-optimistic-longsession\" />)."
msgstr ""
"フラッシュが頻繁に起こらないようにデフォルトの振る舞いを変えることができま"
-"す。 <literal>FlushMode</literal> クラスは3つの異なるモードを定義します。 そ"
-"れは、コミット時にだけフラッシュするモード (Hibernateの "
-"<literal>Transaction</literal> APIが使われる場合だけです)、 説明のあった処理"
-"順に基づいて自動でフラッシュするモード、 <literal>flush()</literal> が明示的"
-"に呼ばれない限りフラッシュしないモードの3つです。 最後のモードは、作業単位が"
-"長期間に及ぶ場合に役に立ちます ( <xref linkend=\"transactions-optimistic-"
-"longsession\"/> を参照してください)。"
+"す。 <literal>FlushMode</literal> クラスは3つの異なるモードを定義します。それ"
+"は、コミット時にだけフラッシュするモード(Hibernate の <literal>Transaction</"
+"literal> API が使われる場合だけです)、説明のあった処理順に基づいて自動でフ"
+"ラッシュするモード、 <literal>flush()</literal> が明示的に呼ばれない限りフ"
+"ラッシュしないモードの3つです。最後のモードは、作業単位が長期間に及ぶ場合に"
+"役に立ちます ( <xref linkend=\"transactions-optimistic-longsession\"/>
を参照"
+"してください)。"
-#. Tag: programlisting
-#: session_api.xml:898
-#, no-c-format
-msgid ""
-"<![CDATA[sess = sf.openSession();\n"
-"Transaction tx = sess.beginTransaction();\n"
-"sess.setFlushMode(FlushMode.COMMIT); // allow queries to return stale
state\n"
-"\n"
-"Cat izi = (Cat) sess.load(Cat.class, id);\n"
-"izi.setName(iznizi);\n"
-"\n"
-"// might return stale data\n"
-"sess.find(\"from Cat as cat left outer join cat.kittens
kitten\");\n"
-"\n"
-"// change to izi is not flushed!\n"
-"...\n"
-"tx.commit(); // flush occurs\n"
-"sess.close();]]>"
-msgstr ""
-
#. Tag: para
-#: session_api.xml:900
#, no-c-format
msgid ""
"During flush, an exception might occur (e.g. if a DML operation violates a "
"constraint). Since handling exceptions involves some understanding of "
"Hibernate's transactional behavior, we discuss it in <xref linkend="
-"\"transactions\"/>."
+"\"transactions\" />."
msgstr ""
-"フラッシュのとき、例外が発生するかもしれません。 (例えば、DML操作が制約を違"
-"反するような場合です。) 例外処理を理解するためには、Hibernateのトランザク"
-"ションの振る舞いを理解する必要があるため、 <xref linkend=\"transactions\"/> "
-"で説明します。"
+"フラッシュのとき、例外が発生するかもしれません(例えば、 DML 操作が制約を違反"
+"するような場合です)。例外処理を理解するためには、 Hibernate のトランザクショ"
+"ンの振る舞いを理解する必要があるため、 <xref linkend=\"transactions\"/> で説"
+"明します。"
#. Tag: title
-#: session_api.xml:909
#, no-c-format
msgid "Transitive persistence"
msgstr "連鎖的な永続化"
#. Tag: para
-#: session_api.xml:911
#, no-c-format
msgid ""
"It is quite cumbersome to save, delete, or reattach individual objects, "
"especially if you deal with a graph of associated objects. A common case is "
"a parent/child relationship. Consider the following example:"
msgstr ""
-"個々のオブジェクトをセーブしたり、削除したり、再追加したりすることは かなり面"
-"倒です。特に、関連するオブジェクトを扱うような場合には際立ちます。 よくあるの"
-"は、親子関係を扱うケースです。 以下の例を考えてみましょう。"
+"個々のオブジェクトをセーブしたり、削除したり、再追加したりすることはかなり面"
+"倒です。特に、関連するオブジェクトを扱うような場合には際立ちます。よくあるの"
+"は、親子関係を扱うケースです。以下の例を考えてみましょう:"
#. Tag: para
-#: session_api.xml:917
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If the children in a parent/child relationship would be value typed (e.g. a "
"collection of addresses or strings), their life cycle would depend on the "
@@ -1880,17 +1321,16 @@
"collection. Since value-typed objects cannot have shared references, "
"Hibernate will detect this and delete the child from the database."
msgstr ""
-"もし、親子関係の子が値型なら(例えば、住所や文字列のコレクション)、 それらの"
-"ライフサイクルは親に依存しており、便利な状態変化の\"カスケード\"を使うため"
-"に、 追加の作業は必要はありません。 親がセーブされたとき、値型の子オブジェク"
-"トも同じようにセーブされますし、 親が削除されたときは、子も削除されます。その"
-"他の操作も同じです。 コレクションから1つの子を削除するような操作でもうまくい"
-"きます。 すなわち、Hibernateはこの削除操作を検出すると、 値型のオブジェクトは"
-"参照を共有できないので、データベースからその子供を削除します。"
+"もし、親子関係の子が値型なら(例えば、住所や文字列のコレクション)、それらの"
+"ライフサイクルは親に依存しており、便利な状態変化の「カスケード」を使うため"
+"に、追加の作業は必要はありません。親がセーブされたとき、値型の子オブジェクト"
+"も同じようにセーブされますし、親が削除されたときは、子も削除されます。その他"
+"の操作も同じです。コレクションから1つの子を削除するような操作でもうまくいきま"
+"す。すなわち、 Hibernate はこの削除操作を検出すると、値型のオブジェクトは参照"
+"を共有できないので、データベースからその子供を削除します。"
#. Tag: para
-#: session_api.xml:928
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Now consider the same scenario with parent and child objects being entities,
"
"not value-types (e.g. categories and items, or parent and child cats). "
@@ -1901,15 +1341,14 @@
"reachability</emphasis> by default."
msgstr ""
"ここで、親と子が値型でなくエンティティであるとして同じシナリオを考えてみま"
-"しょう。 (例えば、カテゴリーと品目の関係や親と子の猫の関係です。) エンティ"
-"ティは、それ自身がライフサイクルを持ち、参照の共有をサポートします。 (そのた"
-"め、コレクションからエンティティを削除することは、 エンティティ自身の削除を意"
-"味しません。) また、エンティティは、デフォルトでは、関連する他のエンティティ"
-"へ 状態をカスケードすることはありません。 Hibernateは <emphasis>到達可能性に"
+"しょう。(例えば、カテゴリーと品目の関係や親と子の猫の関係です。)エンティ"
+"ティは、それ自身がライフサイクルを持ち、参照の共有をサポートします。(そのた"
+"め、コレクションからエンティティを削除することは、エンティティ自身の削除を意"
+"味しません。)また、エンティティは、デフォルトでは、関連する他のエンティティ"
+"へ状態をカスケードすることはありません。 Hibernate は <emphasis>到達可能性に"
"よる永続化</emphasis> をデフォルトでは実行しません。"
#. Tag: para
-#: session_api.xml:937
#, no-c-format
msgid ""
"For each basic operation of the Hibernate session - including "
@@ -1920,49 +1359,33 @@
"operation to be cascaded along an association, you must indicate that in the
"
"mapping document. For example:"
msgstr ""
-"HibernateのSessionの基本操作( <literal>persist(), merge(), saveOrUpdate(), "
-"delete(), lock(), refresh(), evict(), replicate()</literal> が含まれます)に"
-"対して、 それぞれに対応するカスケードスタイルがあります。 それぞれのカスケー"
-"ドスタイルには、 <literal>create, merge, save-update, delete, lock, refresh, "
-"evict, replicate</literal> という名前がついています。 もし、関連に沿ってカス"
-"ケードさせたい操作があるなら、マッピングファイルにそう指定しなければなりませ"
-"ん。 例えば、以下のようにします。"
+"Hibernate の Session の基本操作( <literal>persist(), merge(), saveOrUpdate"
+"(), delete(), lock(), refresh(), evict(), replicate()</literal> が含まれま"
+"す)に対して、それぞれに対応するカスケードスタイルがあります。それぞれのカス"
+"ケードスタイルには、 <literal>create, merge, save-update, delete, lock, "
+"refresh, evict, replicate</literal> という名前がついています。もし、関連に"
+"沿ってカスケードさせたい操作があるなら、マッピングファイルにそう指定しなけれ"
+"ばなりません。例えば、以下のようにします:"
-#. Tag: programlisting
-#: session_api.xml:946
-#, no-c-format
-msgid "<![CDATA[<one-to-one name=\"person\"
cascade=\"persist\"/>]]>"
-msgstr ""
-
#. Tag: para
-#: session_api.xml:948
#, no-c-format
msgid "Cascade styles my be combined:"
-msgstr "カスケードスタイルは、組み合わせることができます。"
+msgstr "カスケードスタイルは、組み合わせることができます:"
-#. Tag: programlisting
-#: session_api.xml:952
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<one-to-one name=\"person\"
cascade=\"persist,delete,lock\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: session_api.xml:954
-#, fuzzy, no-c-format
-msgid ""
"You can even use <literal>cascade=\"all\"</literal> to
specify that "
"<emphasis>all</emphasis> operations should be cascaded along the
"
"association. The default <literal>cascade=\"none\"</literal>
specifies that "
"no operations are to be cascaded."
msgstr ""
"<emphasis>すべての</emphasis> 操作を関連に沿ってカスケードするよう指定すると"
-"きは、 <literal>cascade=\"all\"</literal> を使います。 デフォルトの "
+"きは、 <literal>cascade=\"all\"</literal> を使います。デフォルトの "
"<literal>cascade=\"none\"</literal>
は、どの操作もカスケードしないことを意味"
"します。"
#. Tag: para
-#: session_api.xml:960
#, no-c-format
msgid ""
"A special cascade style, <literal>delete-orphan</literal>, applies only
to "
@@ -1971,18 +1394,16 @@
"association."
msgstr ""
"特殊なカスケードスタイル <literal>delete-orphan</literal> は、一対多関連にだ"
-"け 適用できます。 これは、関連から削除された子供のオブジェクトに対して、 "
+"け適用できます。これは、関連から削除された子供のオブジェクトに対して、 "
"<literal>delete()</literal> 操作が適用されることを意味します。"
#. Tag: para
-#: session_api.xml:967
#, no-c-format
msgid "Recommendations:"
msgstr "おすすめ:"
#. Tag: para
-#: session_api.xml:973
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It does not usually make sense to enable cascade on a
<literal><many-to-"
"one></literal> or
<literal><many-to-many></literal> association. "
@@ -1990,12 +1411,11 @@
"<literal><one-to-many></literal> associations."
msgstr ""
"普通、 <literal><many-to-one></literal> や
<literal><many-to-"
-"many></literal> 関連に対しては、 カスケードを設定する意味はありません。 "
+"many></literal> 関連に対しては、カスケードを設定する意味はありません。 "
"<literal><one-to-one></literal> と
<literal><one-to-many></"
-"literal> 関連に対しては、 カスケードが役に立つことがあります。"
+"literal> 関連に対しては、カスケードが役に立つことがあります。"
#. Tag: para
-#: session_api.xml:981
#, no-c-format
msgid ""
"If the child object's lifespan is bounded by the lifespan of the parent "
@@ -2003,11 +1423,10 @@
"<literal>cascade=\"all,delete-orphan\"</literal>."
msgstr ""
"子供オブジェクトの寿命が親オブジェクトの寿命に制限を受けるならば、 "
-"<literal>cascade=\"all,delete-orphan\"</literal> を指定し、
子供オブジェクト"
+"<literal>cascade=\"all,delete-orphan\"</literal>
を指定し、子供オブジェクト"
"を <emphasis>ライフサイクルオブジェクト</emphasis> にします。"
#. Tag: para
-#: session_api.xml:988
#, no-c-format
msgid ""
"Otherwise, you might not need cascade at all. But if you think that you will
"
@@ -2015,13 +1434,12 @@
"transaction, and you want to save yourself some typing, consider using "
"<literal>cascade=\"persist,merge,save-update\"</literal>."
msgstr ""
-". それ以外の場合は、カスケードはほとんど必要ないでしょう。 しかし、同じトラン"
-"ザクションのなかで親と子が一緒に動作することが多いと思い、 いくらかのコードを"
-"書く手間を省きたいのであれば、 <literal>cascade=\"persist,merge,save-update"
-"\"</literal> を使うことを考えましょう。"
+"それ以外の場合は、カスケードはほとんど必要ないでしょう。しかし、同じトランザ"
+"クションのなかで親と子が一緒に動作することが多いと思い、いくらかのコードを書"
+"く手間を省きたいのであれば、
<literal>cascade=\"persist,merge,save-update\"</"
+"literal> を使うことを考えましょう。"
#. Tag: para
-#: session_api.xml:996
#, no-c-format
msgid ""
"Mapping an association (either a single valued association, or a collection)
"
@@ -2030,12 +1448,11 @@
"delete of the parent results in save/update/delete of the child or children."
msgstr ""
"<literal>cascade=\"all\"</literal>
でマッピングした関連(単値関連やコレクショ"
-"ン)は、 <emphasis>親子</emphasis> スタイルの関連とマークされます。 それは、"
-"親のセーブ/更新/削除が、子のセーブ/更新/削除を引き起こす関係のことです。"
+"ン)は、 <emphasis>親子</emphasis> スタイルの関連とマークされます。それは、親"
+"のセーブ/更新/削除が、子のセーブ/更新/削除を引き起こす関係のことです。"
#. Tag: para
-#: session_api.xml:1002
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Furthermore, a mere reference to a child from a persistent parent will "
"result in save/update of the child. This metaphor is incomplete, however. A "
@@ -2046,34 +1463,31 @@
"relationship are as follows:"
msgstr ""
"さらに、永続化された親が子を単に参照しているだけで、子のセーブ/更新を引き起こ"
-"します。 しかし、このメタファーは不完全です。親から参照されなくなった子は、自"
-"動的に削除 <emphasis>されません</emphasis> 。 ただし、 <literal>cascade="
+"します。しかし、このメタファーは不完全です。親から参照されなくなった子は、自"
+"動的に削除 <emphasis>されません</emphasis> 。ただし、 <literal>cascade="
"\"delete-orphan\"</literal> でマッピングされた
<literal><one-to-many></"
-"literal> 関連を 除いてです。 親子関係のカスケード操作の正確な意味は以下のよう"
-"になります。"
+"literal> 関連を除いてです。親子関係のカスケード操作の正確な意味は以下のように"
+"なります:"
#. Tag: para
-#: session_api.xml:1013
#, no-c-format
msgid ""
"If a parent is passed to <literal>persist()</literal>, all children are
"
"passed to <literal>persist()</literal>"
msgstr ""
-"親が <literal>persist()</literal> に渡されたならば、 すべての子は "
+"親が <literal>persist()</literal> に渡されたならば、すべての子は "
"<literal>persist()</literal> に渡されます。"
#. Tag: para
-#: session_api.xml:1019
#, no-c-format
msgid ""
"If a parent is passed to <literal>merge()</literal>, all children are
passed "
"to <literal>merge()</literal>"
msgstr ""
-"<literal>merge()</literal> に渡されたならば、 すべての子は
<literal>merge()</"
+"<literal>merge()</literal> に渡されたならば、すべての子は
<literal>merge()</"
"literal> に渡されます。"
#. Tag: para
-#: session_api.xml:1025
#, no-c-format
msgid ""
"If a parent is passed to <literal>save()</literal>,
<literal>update()</"
@@ -2085,17 +1499,15 @@
"<literal>saveOrUpdate()</literal> に渡されます。"
#. Tag: para
-#: session_api.xml:1031
#, no-c-format
msgid ""
"If a transient or detached child becomes referenced by a persistent parent, "
"it is passed to <literal>saveOrUpdate()</literal>"
msgstr ""
-"一時的または分離状態の子が、永続化された親に参照されたならば、 "
+"transient または detached の子が、永続化された親に参照されたならば、 "
"<literal>saveOrUpdate()</literal> に渡されます。"
#. Tag: para
-#: session_api.xml:1037
#, no-c-format
msgid ""
"If a parent is deleted, all children are passed to
<literal>delete()</"
@@ -2105,7 +1517,6 @@
"す。"
#. Tag: para
-#: session_api.xml:1042
#, no-c-format
msgid ""
"If a child is dereferenced by a persistent parent, <emphasis>nothing special
"
@@ -2114,13 +1525,12 @@
"case the \"orphaned\" child is deleted."
msgstr ""
"子が永続化された親から参照されなくなったときは、 <emphasis>特に何も起こりませ"
-"ん</emphasis> 。 よって、アプリケーションが必要であれば、明示的に削除する必要"
-"があります。 ただし、 <literal>cascade=\"delete-orphan\"</literal>
の場合を除"
-"きます。 この場合、「親のない」子は削除されます。"
+"ん</emphasis> 。よって、アプリケーションが必要であれば、明示的に削除する必要"
+"があります。ただし、 <literal>cascade=\"delete-orphan\"</literal>
の場合を除"
+"きます。この場合、「親のない」子は削除されます。"
#. Tag: para
-#: session_api.xml:1051
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Finally, note that cascading of operations can be applied to an object graph
"
"at <emphasis>call time</emphasis> or at <emphasis>flush
time</emphasis>. All "
@@ -2131,21 +1541,19 @@
msgstr ""
"最後に、操作のカスケードがオブジェクトグラフに適用されるのは、 <emphasis>コー"
"ルした時</emphasis> あるいは、 <emphasis>flushした時</emphasis> であることに"
-"注意してください。 すべての操作は、その操作が実行されたときに、到達可能な関連"
-"するエンティティに対して カスケードが可能ならカスケードします。 しかし、 "
+"注意してください。すべての操作は、その操作が実行されたときに、到達可能な関連"
+"するエンティティに対してカスケードが可能ならカスケードします。しかし、 "
"<literal>save-upate</literal> と
<literal>delete-orphan</literal> は、 "
-"<literal>Session</literal> がflushしている間に、 すべての到達可能な関連するエ"
-"ンティティに伝播します。"
+"<literal>Session</literal> が flush している間に、すべての到達可能な関連する"
+"エンティティに伝播します。"
#. Tag: title
-#: session_api.xml:1063
#, no-c-format
msgid "Using metadata"
msgstr "メタデータの使用"
#. Tag: para
-#: session_api.xml:1065
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate requires a rich meta-level model of all entity and value types. "
"This model can be useful to the application itself. For example, the "
@@ -2154,63 +1562,671 @@
"value types) and which objects that should not (e.g. immutable value types "
"and, possibly, associated entities)."
msgstr ""
-"Hibernateは、すべてのエンティティと値型の非常にリッチなメタレベルのモデルを必"
-"要とします。 ときどき、このモデルはアプリケーションにとってとても役に立ちま"
-"す。 例えば、アプリケーションは、Hibernateのメタデータを使って、\"賢い\" "
-"ディープコピーアルゴリズムを 実装できるかもしません。そのアルゴリズムとは、ど"
-"のオブジェクトがコピーされるべきか(例:可変の値型)や どのオブジェクトはコ"
-"ピーされないべきか(例:不変な値型や可能なら関連するエンティティ)を 判断でき"
+"Hibernate は、すべてのエンティティと値型の非常にリッチなメタレベルのモデルを"
+"必要とします。ときどき、このモデルはアプリケーションにとってとても役に立ちま"
+"す。例えば、アプリケーションは、 Hibernate のメタデータを使って、「賢い」"
+"ディープコピーアルゴリズムを実装できるかもしません。そのアルゴリズムとは、ど"
+"のオブジェクトがコピーされるべきか(例:可変の値型)やどのオブジェクトはコ"
+"ピーされないべきか(例:不変な値型や可能なら関連するエンティティ)を判断でき"
"るものです。"
#. Tag: para
-#: session_api.xml:1072
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate exposes metadata via the <literal>ClassMetadata</literal> and
"
"<literal>CollectionMetadata</literal> interfaces and the
<literal>Type</"
"literal> hierarchy. Instances of the metadata interfaces can be obtained "
"from the <literal>SessionFactory</literal>."
msgstr ""
-"Hibernateは<literal>ClassMetadata</literal>
と<literal>CollectionMetadata</"
-"literal> インタフェースと <literal>Type</literal> 階層を通してメタデータを公"
-"開します。 メタデータインターフェイスのインスタンスは、 "
-"<literal>SessionFactory</literal> から得られます。"
+"Hibernate は <literal>ClassMetadata</literal> と "
+"<literal>CollectionMetadata</literal> インタフェースと
<literal>Type</"
+"literal> 階層を通してメタデータを公開します。メタデータインターフェースのイン"
+"スタンスは、 <literal>SessionFactory</literal> から得られます。"
-#. Tag: programlisting
-#: session_api.xml:1079
-#, no-c-format
-msgid ""
-"<![CDATA[Cat fritz = ......;\n"
-"ClassMetadata catMeta = sessionfactory.getClassMetadata(Cat.class);\n"
-"\n"
-"Object[] propertyValues = catMeta.getPropertyValues(fritz);\n"
-"String[] propertyNames = catMeta.getPropertyNames();\n"
-"Type[] propertyTypes = catMeta.getPropertyTypes();\n"
-"\n"
-"// get a Map of all properties which are not collections or associations\n"
-"Map namedValues = new HashMap();\n"
-"for ( int i=0; i<propertyNames.length; i++ ) {\n"
-" if ( !propertyTypes[i].isEntityType() && !propertyTypes[i]."
-"isCollectionType() ) {\n"
-" namedValues.put( propertyNames[i], propertyValues[i] );\n"
-" }\n"
-"}]]>"
-msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[DomesticCat fritz = new DomesticCat();\n"
+#~ "fritz.setColor(Color.GINGER);\n"
+#~ "fritz.setSex('M');\n"
+#~ "fritz.setName(\"Fritz\");\n"
+#~ "Long generatedId = (Long) sess.save(fritz);]]>"
+#~ msgstr ""
+#~ "DomesticCat fritz = new DomesticCat();\n"
+#~ "fritz.setColor(Color.GINGER);\n"
+#~ "fritz.setSex('M');\n"
+#~ "fritz.setName(\"Fritz\");\n"
+#~ "Long generatedId = (Long) sess.save(fritz);"
-#~ msgid "UPDATE"
-#~ msgstr "UPDATE"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[DomesticCat pk = new DomesticCat();\n"
+#~ "pk.setColor(Color.TABBY);\n"
+#~ "pk.setSex('F');\n"
+#~ "pk.setName(\"PK\");\n"
+#~ "pk.setKittens( new HashSet() );\n"
+#~ "pk.addKitten(fritz);\n"
+#~ "sess.save( pk, new Long(1234) );]]>"
+#~ msgstr ""
+#~ "DomesticCat pk = new DomesticCat();\n"
+#~ "pk.setColor(Color.TABBY);\n"
+#~ "pk.setSex('F');\n"
+#~ "pk.setName(\"PK\");\n"
+#~ "pk.setKittens( new HashSet() );\n"
+#~ "pk.addKitten(fritz);\n"
+#~ "sess.save( pk, new Long(1234) );"
-#~ msgid "DELETE"
-#~ msgstr "DELETE"
+#, fuzzy
+#~ msgid "<![CDATA[Cat fritz = (Cat) sess.load(Cat.class,
generatedId);]]>"
+#~ msgstr "Cat fritz = (Cat) sess.load(Cat.class, generatedId);"
-#~ msgid "state management"
-#~ msgstr "状態管理"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// you need to wrap primitive identifiers\n"
+#~ "long id = 1234;\n"
+#~ "DomesticCat pk = (DomesticCat) sess.load( DomesticCat.class, new Long"
+#~ "(id) );]]>"
+#~ msgstr ""
+#~ "// you need to wrap primitive identifiers\n"
+#~ "long id = 1234;\n"
+#~ "DomesticCat pk = (DomesticCat) sess.load( DomesticCat.class, new Long"
+#~ "(id) );"
-#~ msgid "statements"
-#~ msgstr "文"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Cat cat = new DomesticCat();\n"
+#~ "// load pk's state into cat\n"
+#~ "sess.load( cat, new Long(pkId) );\n"
+#~ "Set kittens = cat.getKittens();]]>"
+#~ msgstr ""
+#~ "Cat cat = new DomesticCat();\n"
+#~ "// load pk's state into cat\n"
+#~ "sess.load( cat, new Long(pkId) );\n"
+#~ "Set kittens = cat.getKittens();"
-#~ msgid "Connection"
-#~ msgstr "session.connection()"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Cat cat = (Cat) sess.get(Cat.class, id);\n"
+#~ "if (cat==null) {\n"
+#~ " cat = new Cat();\n"
+#~ " sess.save(cat, id);\n"
+#~ "}\n"
+#~ "return cat;]]>"
+#~ msgstr ""
+#~ "Cat cat = (Cat) sess.get(Cat.class, id);\n"
+#~ "if (cat==null) {\n"
+#~ " cat = new Cat();\n"
+#~ " sess.save(cat, id);\n"
+#~ "}\n"
+#~ "return cat;"
-#~ msgid "session.connection()"
-#~ msgstr "Connection"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Cat cat = (Cat) sess.get(Cat.class, id,
LockMode.UPGRADE);]]>"
+#~ msgstr "Cat cat = (Cat) sess.get(Cat.class, id, LockMode.UPGRADE);"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess.save(cat);\n"
+#~ "sess.flush(); //force the SQL INSERT\n"
+#~ "sess.refresh(cat); //re-read the state (after the trigger executes)]]>"
+#~ msgstr ""
+#~ "sess.save(cat);\n"
+#~ "sess.flush(); //force the SQL INSERT\n"
+#~ "sess.refresh(cat); //re-read the state (after the trigger executes)"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = session.createQuery(\n"
+#~ " \"from Cat as cat where cat.birthdate < ?\")\n"
+#~ " .setDate(0, date)\n"
+#~ " .list();\n"
+#~ "\n"
+#~ "List mothers = session.createQuery(\n"
+#~ " \"select mother from Cat as cat join cat.mother as mother where
cat."
+#~ "name = ?\")\n"
+#~ " .setString(0, name)\n"
+#~ " .list();\n"
+#~ "\n"
+#~ "List kittens = session.createQuery(\n"
+#~ " \"from Cat as cat where cat.mother = ?\")\n"
+#~ " .setEntity(0, pk)\n"
+#~ " .list();\n"
+#~ "\n"
+#~ "Cat mother = (Cat) session.createQuery(\n"
+#~ " \"select cat.mother from Cat as cat where cat = ?\")\n"
+#~ " .setEntity(0, izi)\n"
+#~ " .uniqueResult();]]\n"
+#~ "\n"
+#~ "Query mothersWithKittens = (Cat) session.createQuery(\n"
+#~ " \"select mother from Cat as mother left join fetch
mother.kittens"
+#~ "\");\n"
+#~ "Set uniqueMothers = new HashSet(mothersWithKittens.list());]]>"
+#~ msgstr ""
+#~ "List cats = session.createQuery(\n"
+#~ " \"from Cat as cat where cat.birthdate < ?\")\n"
+#~ " .setDate(0, date)\n"
+#~ " .list();\n"
+#~ "\n"
+#~ "List mothers = session.createQuery(\n"
+#~ " \"select mother from Cat as cat join cat.mother as mother where
cat."
+#~ "name = ?\")\n"
+#~ " .setString(0, name)\n"
+#~ " .list();\n"
+#~ "\n"
+#~ "List kittens = session.createQuery(\n"
+#~ " \"from Cat as cat where cat.mother = ?\")\n"
+#~ " .setEntity(0, pk)\n"
+#~ " .list();\n"
+#~ "\n"
+#~ "Cat mother = (Cat) session.createQuery(\n"
+#~ " \"select cat.mother from Cat as cat where cat = ?\")\n"
+#~ " .setEntity(0, izi)\n"
+#~ " .uniqueResult();]]\n"
+#~ "\n"
+#~ "Query mothersWithKittens = (Cat) session.createQuery(\n"
+#~ " \"select mother from Cat as mother left join fetch
mother.kittens"
+#~ "\");\n"
+#~ "Set uniqueMothers = new HashSet(mothersWithKittens.list());"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// fetch ids\n"
+#~ "Iterator iter = sess.createQuery(\"from eg.Qux q order by
q.likeliness\")."
+#~ "iterate();\n"
+#~ "while ( iter.hasNext() ) {\n"
+#~ " Qux qux = (Qux) iter.next(); // fetch the object\n"
+#~ " // something we couldnt express in the query\n"
+#~ " if ( qux.calculateComplicatedAlgorithm() ) {\n"
+#~ " // delete the current instance\n"
+#~ " iter.remove();\n"
+#~ " // dont need to process the rest\n"
+#~ " break;\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "// fetch ids\n"
+#~ "Iterator iter = sess.createQuery(\"from eg.Qux q order by
q.likeliness\")."
+#~ "iterate();\n"
+#~ "while ( iter.hasNext() ) {\n"
+#~ " Qux qux = (Qux) iter.next(); // fetch the object\n"
+#~ " // something we couldnt express in the query\n"
+#~ " if ( qux.calculateComplicatedAlgorithm() ) {\n"
+#~ " // delete the current instance\n"
+#~ " iter.remove();\n"
+#~ " // dont need to process the rest\n"
+#~ " break;\n"
+#~ " }\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Iterator kittensAndMothers = sess.createQuery(\n"
+#~ " \"select kitten, mother from Cat kitten join kitten.mother
"
+#~ "mother\")\n"
+#~ " .list()\n"
+#~ " .iterator();\n"
+#~ "\n"
+#~ "while ( kittensAndMothers.hasNext() ) {\n"
+#~ " Object[] tuple = (Object[]) kittensAndMothers.next();\n"
+#~ " Cat kitten = (Cat) tuple[0];\n"
+#~ " Cat mother = (Cat) tuple[1];\n"
+#~ " ....\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "Iterator kittensAndMothers = sess.createQuery(\n"
+#~ " \"select kitten, mother from Cat kitten join kitten.mother
"
+#~ "mother\")\n"
+#~ " .list()\n"
+#~ " .iterator();\n"
+#~ "\n"
+#~ "while ( kittensAndMothers.hasNext() ) {\n"
+#~ " Object[] tuple = (Object[]) kittensAndMothers.next();\n"
+#~ " Cat kitten = tuple[0];\n"
+#~ " Cat mother = tuple[1];\n"
+#~ " ....\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Iterator results = sess.createQuery(\n"
+#~ " \"select cat.color, min(cat.birthdate), count(cat) from Cat cat
"
+#~ "\" +\n"
+#~ " \"group by cat.color\")\n"
+#~ " .list()\n"
+#~ " .iterator();\n"
+#~ "\n"
+#~ "while ( results.hasNext() ) {\n"
+#~ " Object[] row = (Object[]) results.next();\n"
+#~ " Color type = (Color) row[0];\n"
+#~ " Date oldest = (Date) row[1];\n"
+#~ " Integer count = (Integer) row[2];\n"
+#~ " .....\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "Iterator results = sess.createQuery(\n"
+#~ " \"select cat.color, min(cat.birthdate), count(cat) from Cat cat
"
+#~ "\" +\n"
+#~ " \"group by cat.color\")\n"
+#~ " .list()\n"
+#~ " .iterator();\n"
+#~ "\n"
+#~ "while ( results.hasNext() ) {\n"
+#~ " Object[] row = (Object[]) results.next();\n"
+#~ " Color type = (Color) row[0];\n"
+#~ " Date oldest = (Date) row[1];\n"
+#~ " Integer count = (Integer) row[2];\n"
+#~ " .....\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[//named parameter (preferred)\n"
+#~ "Query q = sess.createQuery(\"from DomesticCat cat where cat.name =
:name"
+#~ "\");\n"
+#~ "q.setString(\"name\", \"Fritz\");\n"
+#~ "Iterator cats = q.iterate();]]>"
+#~ msgstr ""
+#~ "//named parameter (preferred)\n"
+#~ "Query q = sess.createQuery(\"from DomesticCat cat where cat.name =
:name"
+#~ "\");\n"
+#~ "q.setString(\"name\", \"Fritz\");\n"
+#~ "Iterator cats = q.iterate();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[//positional parameter\n"
+#~ "Query q = sess.createQuery(\"from DomesticCat cat where cat.name =
?\");\n"
+#~ "q.setString(0, \"Izi\");\n"
+#~ "Iterator cats = q.iterate();]]>"
+#~ msgstr ""
+#~ "//positional parameter\n"
+#~ "Query q = sess.createQuery(\"from DomesticCat cat where cat.name =
?\");\n"
+#~ "q.setString(0, \"Izi\");\n"
+#~ "Iterator cats = q.iterate();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[//named parameter list\n"
+#~ "List names = new ArrayList();\n"
+#~ "names.add(\"Izi\");\n"
+#~ "names.add(\"Fritz\");\n"
+#~ "Query q = sess.createQuery(\"from DomesticCat cat where cat.name in
(:"
+#~ "namesList)\");\n"
+#~ "q.setParameterList(\"namesList\", names);\n"
+#~ "List cats = q.list();]]>"
+#~ msgstr ""
+#~ "//named parameter list\n"
+#~ "List names = new ArrayList();\n"
+#~ "names.add(\"Izi\");\n"
+#~ "names.add(\"Fritz\");\n"
+#~ "Query q = sess.createQuery(\"from DomesticCat cat where cat.name in
(:"
+#~ "namesList)\");\n"
+#~ "q.setParameterList(\"namesList\", names);\n"
+#~ "List cats = q.list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Query q = sess.createQuery(\"from DomesticCat
cat\");\n"
+#~ "q.setFirstResult(20);\n"
+#~ "q.setMaxResults(10);\n"
+#~ "List cats = q.list();]]>"
+#~ msgstr ""
+#~ "Query q = sess.createQuery(\"from DomesticCat cat\");\n"
+#~ "q.setFirstResult(20);\n"
+#~ "q.setMaxResults(10);\n"
+#~ "List cats = q.list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Query q = sess.createQuery(\"select cat.name, cat from "
+#~ "DomesticCat cat \" +\n"
+#~ " \"order by cat.name\");\n"
+#~ "ScrollableResults cats = q.scroll();\n"
+#~ "if ( cats.first() ) {\n"
+#~ "\n"
+#~ " // find the first name on each page of an alphabetical list of cats "
+#~ "by name\n"
+#~ " firstNamesOfPages = new ArrayList();\n"
+#~ " do {\n"
+#~ " String name = cats.getString(0);\n"
+#~ " firstNamesOfPages.add(name);\n"
+#~ " }\n"
+#~ " while ( cats.scroll(PAGE_SIZE) );\n"
+#~ "\n"
+#~ " // Now get the first page of cats\n"
+#~ " pageOfCats = new ArrayList();\n"
+#~ " cats.beforeFirst();\n"
+#~ " int i=0;\n"
+#~ " while( ( PAGE_SIZE > i++ ) && cats.next() ) pageOfCats.add(
cats.get"
+#~ "(1) );\n"
+#~ "\n"
+#~ "}\n"
+#~ "cats.close()]]>"
+#~ msgstr ""
+#~ "Query q = sess.createQuery(\"select cat.name, cat from DomesticCat cat
\" "
+#~ "+\n"
+#~ " \"order by cat.name\");\n"
+#~ "ScrollableResults cats = q.scroll();\n"
+#~ "if ( cats.first() ) {\n"
+#~ "\n"
+#~ " // find the first name on each page of an alphabetical list of cats "
+#~ "by name\n"
+#~ " firstNamesOfPages = new ArrayList();\n"
+#~ " do {\n"
+#~ " String name = cats.getString(0);\n"
+#~ " firstNamesOfPages.add(name);\n"
+#~ " }\n"
+#~ " while ( cats.scroll(PAGE_SIZE) );\n"
+#~ "\n"
+#~ " // Now get the first page of cats\n"
+#~ " pageOfCats = new ArrayList();\n"
+#~ " cats.beforeFirst();\n"
+#~ " int i=0;\n"
+#~ " while( ( PAGE_SIZE > i++ ) && cats.next() )
pageOfCats.add"
+#~ "( cats.get(1) );\n"
+#~ "\n"
+#~ "}\n"
+#~ "cats.close()"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<query
name=\"ByNameAndMaximumWeight\"><![CDATA[\n"
+#~ " from eg.DomesticCat as cat\n"
+#~ " where cat.name = ?\n"
+#~ " and cat.weight > ?\n"
+#~ "] ]></query>]]>"
+#~ msgstr ""
+#~ "<query
name=\"ByNameAndMaximumWeight\"><![CDATA[\n"
+#~ " from eg.DomesticCat as cat\n"
+#~ " where cat.name = ?\n"
+#~ " and cat.weight > ?\n"
+#~ "] ]></query>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Query q =
sess.getNamedQuery(\"ByNameAndMaximumWeight\");\n"
+#~ "q.setString(0, name);\n"
+#~ "q.setInt(1, minWeight);\n"
+#~ "List cats = q.list();]]>"
+#~ msgstr ""
+#~ "Query q = sess.getNamedQuery(\"ByNameAndMaximumWeight\");\n"
+#~ "q.setString(0, name);\n"
+#~ "q.setInt(1, minWeight);\n"
+#~ "List cats = q.list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Collection blackKittens = session.createFilter(\n"
+#~ " pk.getKittens(), \n"
+#~ " \"where this.color = ?\")\n"
+#~ " .setParameter( Color.BLACK, Hibernate.custom(ColorUserType.class) )\n"
+#~ " .list()\n"
+#~ ");]]>"
+#~ msgstr ""
+#~ "Collection blackKittens = session.createFilter(\n"
+#~ " pk.getKittens(), \n"
+#~ " \"where this.color = ?\")\n"
+#~ " .setParameter( Color.BLACK, Hibernate.custom(ColorUserType.class) )\n"
+#~ " .list()\n"
+#~ ");"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Collection blackKittenMates = session.createFilter(\n"
+#~ " pk.getKittens(), \n"
+#~ " \"select this.mate where this.color =
eg.Color.BLACK.intValue\")\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "Collection blackKittenMates = session.createFilter(\n"
+#~ " pk.getKittens(), \n"
+#~ " \"select this.mate where this.color =
eg.Color.BLACK.intValue\")\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Collection tenKittens = session.createFilter(\n"
+#~ " mother.getKittens(), \"\")\n"
+#~ " .setFirstResult(0).setMaxResults(10)\n"
+#~ " .list();]]>"
+#~ msgstr ""
+#~ "Collection tenKittens = session.createFilter(\n"
+#~ " mother.getKittens(), \"\")\n"
+#~ " .setFirstResult(0).setMaxResults(10)\n"
+#~ " .list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Criteria crit = session.createCriteria(Cat.class);\n"
+#~ "crit.add( Restrictions.eq( \"color\", eg.Color.BLACK ) );\n"
+#~ "crit.setMaxResults(10);\n"
+#~ "List cats = crit.list();]]>"
+#~ msgstr ""
+#~ "Criteria crit = session.createCriteria(Cat.class);\n"
+#~ "crit.add( Expression.eq( \"color\", eg.Color.BLACK ) );\n"
+#~ "crit.setMaxResults(10);\n"
+#~ "List cats = crit.list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = session.createSQLQuery(\"SELECT {cat.*} FROM CAT
"
+#~ "{cat} WHERE ROWNUM<10\")\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ ".list();]]>"
+#~ msgstr ""
+#~ "List cats = session.createSQLQuery(\n"
+#~ " \"SELECT {cat.*} FROM CAT {cat} WHERE ROWNUM<10\",\n"
+#~ " \"cat\",\n"
+#~ " Cat.class\n"
+#~ ").list();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[List cats = session.createSQLQuery(\n"
+#~ " \"SELECT {cat}.ID AS {cat.id}, {cat}.SEX AS {cat.sex}, \"
+\n"
+#~ " \"{cat}.MATE AS {cat.mate}, {cat}.SUBCLASS AS {cat.class}, ...
"
+#~ "\" +\n"
+#~ " \"FROM CAT {cat} WHERE ROWNUM<10\")\n"
+#~ " .addEntity(\"cat\", Cat.class)\n"
+#~ ".list()]]>"
+#~ msgstr ""
+#~ "List cats = session.createSQLQuery(\n"
+#~ " \"SELECT {cat}.ID AS {cat.id}, {cat}.SEX AS {cat.sex}, \"
+\n"
+#~ " \"{cat}.MATE AS {cat.mate}, {cat}.SUBCLASS AS {cat.class}, ...
"
+#~ "\" +\n"
+#~ " \"FROM CAT {cat} WHERE ROWNUM<10\",\n"
+#~ " \"cat\",\n"
+#~ " Cat.class\n"
+#~ ").list()"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[DomesticCat cat = (DomesticCat) sess.load( Cat.class, new
Long"
+#~ "(69) );\n"
+#~ "cat.setName(\"PK\");\n"
+#~ "sess.flush(); // changes to cat are automatically detected and "
+#~ "persisted]]>"
+#~ msgstr ""
+#~ "DomesticCat cat = (DomesticCat) sess.load( Cat.class, new Long(69) );\n"
+#~ "cat.setName(\"PK\");\n"
+#~ "sess.flush(); // changes to cat are automatically detected and persisted"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// in the first session\n"
+#~ "Cat cat = (Cat) firstSession.load(Cat.class, catId);\n"
+#~ "Cat potentialMate = new Cat();\n"
+#~ "firstSession.save(potentialMate);\n"
+#~ "\n"
+#~ "// in a higher layer of the application\n"
+#~ "cat.setMate(potentialMate);\n"
+#~ "\n"
+#~ "// later, in a new session\n"
+#~ "secondSession.update(cat); // update cat\n"
+#~ "secondSession.update(mate); // update mate]]>"
+#~ msgstr ""
+#~ "// in the first session\n"
+#~ "Cat cat = (Cat) firstSession.load(Cat.class, catId);\n"
+#~ "Cat potentialMate = new Cat();\n"
+#~ "firstSession.save(potentialMate);\n"
+#~ "\n"
+#~ "// in a higher layer of the application\n"
+#~ "cat.setMate(potentialMate);\n"
+#~ "\n"
+#~ "// later, in a new session\n"
+#~ "secondSession.update(cat); // update cat\n"
+#~ "secondSession.update(mate); // update mate"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[//just reassociate:\n"
+#~ "sess.lock(fritz, LockMode.NONE);\n"
+#~ "//do a version check, then reassociate:\n"
+#~ "sess.lock(izi, LockMode.READ);\n"
+#~ "//do a version check, using SELECT ... FOR UPDATE, then reassociate:\n"
+#~ "sess.lock(pk, LockMode.UPGRADE);]]>"
+#~ msgstr ""
+#~ "//just reassociate:\n"
+#~ "sess.lock(fritz, LockMode.NONE);\n"
+#~ "//do a version check, then reassociate:\n"
+#~ "sess.lock(izi, LockMode.READ);\n"
+#~ "//do a version check, using SELECT ... FOR UPDATE, then reassociate:\n"
+#~ "sess.lock(pk, LockMode.UPGRADE);"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// in the first session\n"
+#~ "Cat cat = (Cat) firstSession.load(Cat.class, catID);\n"
+#~ "\n"
+#~ "// in a higher tier of the application\n"
+#~ "Cat mate = new Cat();\n"
+#~ "cat.setMate(mate);\n"
+#~ "\n"
+#~ "// later, in a new session\n"
+#~ "secondSession.saveOrUpdate(cat); // update existing state (cat has a "
+#~ "non-null id)\n"
+#~ "secondSession.saveOrUpdate(mate); // save the new instance (mate has a "
+#~ "null id)]]>"
+#~ msgstr ""
+#~ "// in the first session\n"
+#~ "Cat cat = (Cat) firstSession.load(Cat.class, catID);\n"
+#~ "\n"
+#~ "// in a higher tier of the application\n"
+#~ "Cat mate = new Cat();\n"
+#~ "cat.setMate(mate);\n"
+#~ "\n"
+#~ "// later, in a new session\n"
+#~ "secondSession.saveOrUpdate(cat); // update existing state (cat has a "
+#~ "non-null id)\n"
+#~ "secondSession.saveOrUpdate(mate); // save the new instance (mate has a "
+#~ "null id)"
+
+#, fuzzy
+#~ msgid "<![CDATA[sess.delete(cat);]]>"
+#~ msgstr "sess.delete(cat);"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[//retrieve a cat from one database\n"
+#~ "Session session1 = factory1.openSession();\n"
+#~ "Transaction tx1 = session1.beginTransaction();\n"
+#~ "Cat cat = session1.get(Cat.class, catId);\n"
+#~ "tx1.commit();\n"
+#~ "session1.close();\n"
+#~ "\n"
+#~ "//reconcile with a second database\n"
+#~ "Session session2 = factory2.openSession();\n"
+#~ "Transaction tx2 = session2.beginTransaction();\n"
+#~ "session2.replicate(cat, ReplicationMode.LATEST_VERSION);\n"
+#~ "tx2.commit();\n"
+#~ "session2.close();]]>"
+#~ msgstr ""
+#~ "//retrieve a cat from one database\n"
+#~ "Session session1 = factory1.openSession();\n"
+#~ "Transaction tx1 = session1.beginTransaction();\n"
+#~ "Cat cat = session1.get(Cat.class, catId);\n"
+#~ "tx1.commit();\n"
+#~ "session1.close();\n"
+#~ "\n"
+#~ "//reconcile with a second database\n"
+#~ "Session session2 = factory2.openSession();\n"
+#~ "Transaction tx2 = session2.beginTransaction();\n"
+#~ "session2.replicate(cat, ReplicationMode.LATEST_VERSION);\n"
+#~ "tx2.commit();\n"
+#~ "session2.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[sess = sf.openSession();\n"
+#~ "Transaction tx = sess.beginTransaction();\n"
+#~ "sess.setFlushMode(FlushMode.COMMIT); // allow queries to return stale "
+#~ "state\n"
+#~ "\n"
+#~ "Cat izi = (Cat) sess.load(Cat.class, id);\n"
+#~ "izi.setName(iznizi);\n"
+#~ "\n"
+#~ "// might return stale data\n"
+#~ "sess.find(\"from Cat as cat left outer join cat.kittens
kitten\");\n"
+#~ "\n"
+#~ "// change to izi is not flushed!\n"
+#~ "...\n"
+#~ "tx.commit(); // flush occurs\n"
+#~ "sess.close();]]>"
+#~ msgstr ""
+#~ "sess = sf.openSession();\n"
+#~ "Transaction tx = sess.beginTransaction();\n"
+#~ "sess.setFlushMode(FlushMode.COMMIT); // allow queries to return stale "
+#~ "state\n"
+#~ "\n"
+#~ "Cat izi = (Cat) sess.load(Cat.class, id);\n"
+#~ "izi.setName(iznizi);\n"
+#~ "\n"
+#~ "// might return stale data\n"
+#~ "sess.find(\"from Cat as cat left outer join cat.kittens
kitten\");\n"
+#~ "\n"
+#~ "// change to izi is not flushed!\n"
+#~ "...\n"
+#~ "tx.commit(); // flush occurs\n"
+#~ "sess.close();"
+
+#, fuzzy
+#~ msgid "<![CDATA[<one-to-one name=\"person\"
cascade=\"persist\"/>]]>"
+#~ msgstr "<one-to-one name=\"person\"
cascade=\"persist\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<one-to-one name=\"person\"
cascade=\"persist,delete,lock\"/>]]>"
+#~ msgstr "<one-to-one name=\"person\"
cascade=\"persist,delete,lock\"/>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Cat fritz = ......;\n"
+#~ "ClassMetadata catMeta = sessionfactory.getClassMetadata(Cat.class);\n"
+#~ "\n"
+#~ "Object[] propertyValues = catMeta.getPropertyValues(fritz);\n"
+#~ "String[] propertyNames = catMeta.getPropertyNames();\n"
+#~ "Type[] propertyTypes = catMeta.getPropertyTypes();\n"
+#~ "\n"
+#~ "// get a Map of all properties which are not collections or
associations\n"
+#~ "Map namedValues = new HashMap();\n"
+#~ "for ( int i=0; i<propertyNames.length; i++ ) {\n"
+#~ " if ( !propertyTypes[i].isEntityType() && !propertyTypes[i]."
+#~ "isCollectionType() ) {\n"
+#~ " namedValues.put( propertyNames[i], propertyValues[i] );\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "Cat fritz = ......;\n"
+#~ "ClassMetadata catMeta = sessionfactory.getClassMetadata(Cat.class);\n"
+#~ "\n"
+#~ "Object[] propertyValues = catMeta.getPropertyValues(fritz);\n"
+#~ "String[] propertyNames = catMeta.getPropertyNames();\n"
+#~ "Type[] propertyTypes = catMeta.getPropertyTypes();\n"
+#~ "\n"
+#~ "// get a Map of all properties which are not collections or
associations\n"
+#~ "Map namedValues = new HashMap();\n"
+#~ "for ( int i=0; i<propertyNames.length; i++ ) {\n"
+#~ " if ( !propertyTypes[i].isEntityType() &&
!propertyTypes[i]."
+#~ "isCollectionType() ) {\n"
+#~ " namedValues.put( propertyNames[i], propertyValues[i] );\n"
+#~ " }\n"
+#~ "}"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/toolset_guide.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/toolset_guide.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/toolset_guide.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,59 +1,57 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2009, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2010-01-08T04:07:20\n"
+"PO-Revision-Date: 2010-01-20 15:00+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: toolset_guide.xml:29
#, no-c-format
msgid "Toolset Guide"
-msgstr "Toolset Guide ツールセットガイド"
+msgstr "ツールセットガイド"
#. Tag: para
-#: toolset_guide.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Roundtrip engineering with Hibernate is possible using a set of Eclipse "
"plugins, commandline tools, and Ant tasks."
msgstr ""
-"Hibernateを使ったラウンドトリップエンジニアリングは、 Eclipseプラグインやコマ"
-"ンドラインツール、もちろんAntタスクを使うことで可能です。"
+"Hibernate を使ったラウンドトリップエンジニアリングは、 Eclipse プラグインやコ"
+"マンドラインツール、もちろん Ant タスクを使うことで可能です。"
#. Tag: para
-#: toolset_guide.xml:36
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Hibernate Tools</emphasis> currently include plugins for the
"
"Eclipse IDE as well as Ant tasks for reverse engineering of existing "
"databases:"
msgstr ""
"<emphasis>Hibernate Tools</emphasis> は現在、既存データベースのリバースエンジ"
-"ニアリングのAntタスクに加えて、EclipseIDEのプラグインを含みます。"
+"ニアリングの Ant タスクに加えて、 Eclipse IDE のプラグインを含みます:"
#. Tag: para
-#: toolset_guide.xml:42
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Mapping Editor:</emphasis> an editor for Hibernate XML
mapping "
"files that supports auto-completion and syntax highlighting. It also "
"supports semantic auto-completion for class names and property/field names, "
"making it more versatile than a normal XML editor."
msgstr ""
-"<emphasis>マッピングエディタ:</emphasis> HibernateのXMLマッピングファイル用の"
-"エディタで、 自動補完と構文強調表示をサポートしています。クラス名やプロパ"
-"ティ/フィールド名に対する自動補完もサポートし、 通常のXMLエディタよりも強力で"
-"す。"
+"<emphasis>マッピングエディタ:</emphasis> Hibernate の XML マッピングファイル"
+"用のエディタで、自動補完と構文強調表示をサポートしています。クラス名やプロパ"
+"ティ/フィールド名に対する自動補完もサポートし、通常の XML エディタよりも強力"
+"です。"
#. Tag: para
-#: toolset_guide.xml:47
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Console:</emphasis> the console is a new view in Eclipse. In
"
"addition to a tree overview of your console configurations, you are also "
@@ -61,14 +59,13 @@
"relationships. The console allows you to execute HQL queries against your "
"database and browse the result directly in Eclipse."
msgstr ""
-"<emphasis>Console:</emphasis> コンソールはエクリプスの新しいビューです。 コン"
+"<emphasis>Console:</emphasis> コンソールはエクリプスの新しいビューです。コン"
"ソールコンフィギュレーションのツリーオーバービューに加えて、永続クラスとその"
-"関連の相互作用ビューも得られます。 データベースにHQLを実行し、結果を直接エク"
+"関連の相互作用ビューも得られます。データベースに HQL を実行し、結果を直接エク"
"リプス上で見ることができます。"
#. Tag: para
-#: toolset_guide.xml:54
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Development Wizards:</emphasis> several wizards are provided
with "
"the Hibernate Eclipse tools. You can use a wizard to quickly generate "
@@ -76,16 +73,20 @@
"database schema into POJO source files and Hibernate mapping files. The "
"reverse engineering wizard supports customizable templates."
msgstr ""
-"<emphasis>開発ウィザード</emphasis> HibernateのEclipseツールはいくつかのウィ"
-"ザードを提供します。 ウィザードを使ってHibernateの設定ファイル(cfg.xml)をすば"
-"やく生成したり、 既存のデータベーススキーマをPOJOのソースファイルとHibernate"
-"のマッピングファイルへと、 完全にリバースエンジニアリングすることができま"
-"す。 リバースエンジニアリングウィザードはカスタマイズ可能なテンプレートをサ"
-"ポートします。"
+"<emphasis>開発ウィザード</emphasis> Hibernate の Eclipse ツールはいくつかの"
+"ウィザードを提供します。ウィザードを使って Hibernate の設定ファイル (cfg."
+"xml) をすばやく生成したり、既存のデータベーススキーマを POJO のソースファイル"
+"と Hibernate のマッピングファイルへと、完全にリバースエンジニアリングすること"
+"ができます。リバースエンジニアリングウィザードはカスタマイズ可能なテンプレー"
+"トをサポートします。"
#. Tag: para
-#: toolset_guide.xml:67
-#, fuzzy, no-c-format
+#, no-c-format
+msgid "<!-- <emphasis>Ant Tasks:</emphasis> -->"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
msgid ""
"Please refer to the <emphasis>Hibernate Tools</emphasis> package
"
"documentation for more information."
@@ -94,52 +95,47 @@
"メントを参照してください。"
#. Tag: para
-#: toolset_guide.xml:72
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"However, the Hibernate main package comes bundled with an integrated tool : "
"<emphasis>SchemaExport</emphasis> aka
<literal>hbm2ddl</literal>.It can even "
"be used from \"inside\" Hibernate."
msgstr ""
-"しかし、Hibernateのメインパッケージは <emphasis>SchemaExport</emphasis> 、 別"
-"名 <literal>hbm2ddl</literal> も含みます(Hibernate内でオンザフライで使用でき"
-"ます)。"
+"しかし、 Hibernate のメインパッケージは <emphasis>SchemaExport</emphasis> 、"
+"別名 <literal>hbm2ddl</literal> も含みます(Hibernate 「内」でオンザフライで使"
+"用できます)。"
#. Tag: title
-#: toolset_guide.xml:79
#, no-c-format
msgid "Automatic schema generation"
msgstr "スキーマの自動生成"
#. Tag: para
-#: toolset_guide.xml:81
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"DDL can 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."
msgstr ""
-"DDLはHibernateユーティリティによりマッピングファイルから生成することができま"
-"す。 生成されたスキーマはエンティティやコレクションのテーブルに対する参照整合"
-"性制約(主キーと外部キー)を含みます。 テーブルとシーケンスはマッピングする識別"
-"子ジェネレータに対して生成されます。"
+"DDL は Hibernate ユーティリティによりマッピングファイルから生成することができ"
+"ます。生成されたスキーマはエンティティやコレクションのテーブルに対する参照整"
+"合性制約 (主キーと外部キー) を含みます。テーブルとシーケンスはマッピングする"
+"識別子ジェネレータに対して生成されます。"
#. Tag: para
-#: toolset_guide.xml:88
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"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."
msgstr ""
-"DDLはベンダー依存なので、このツールを使うときは、<literal>hibernate.dialect</"
-"literal> プロパティでSQLの <literal>方言</literal> を指定
<emphasis>しなけれ"
-"ばなりません</emphasis> 。"
+"DDL はベンダー依存なので、このツールを使うときは、 <literal>hibernate."
+"dialect</literal> プロパティで SQL の <literal>方言</literal> を指定 "
+"<emphasis>しなければなりません</emphasis> 。"
#. Tag: para
-#: toolset_guide.xml:94
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"First, you must customize your mapping files to improve the generated "
"schema. The next section covers schema customization."
@@ -148,39 +144,25 @@
"てください。"
#. Tag: title
-#: toolset_guide.xml:99
#, no-c-format
msgid "Customizing the schema"
msgstr "スキーマのカスタマイズ"
#. Tag: para
-#: toolset_guide.xml:101
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Many Hibernate mapping elements define optional attributes named "
"<literal>length</literal>, <literal>precision</literal> and
<literal>scale</"
"literal>. You can set the length, precision and scale of a column with this
"
"attribute."
msgstr ""
-"多くのHibernateのマッピング要素では、オプションの <literal>length</literal> "
-"という名の属性を定義しています。 この属性でカラム長を設定することができます"
-"(またはNUMERIC/DECIMAL型のデータの精度を設定できます)。"
+"多くの Hibernate のマッピング要素では、オプションの <literal>length</"
+"literal>、 <literal>precision</literal>、
<literal>scale</literal> という名の"
+"属性を定義しています。この属性でカラムの長さ、精度、スケールを設定することが"
+"できます。"
-#. Tag: programlisting
-#: toolset_guide.xml:108
-#, no-c-format
-msgid "<![CDATA[<property name=\"zip\"
length=\"5\"/>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: toolset_guide.xml:109
-#, no-c-format
-msgid "<![CDATA[<property name=\"balance\"
precision=\"12\" scale=\"2\"/>]]>"
-msgstr ""
-
#. Tag: para
-#: toolset_guide.xml:111
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Some tags also accept a <literal>not-null</literal> attribute for
generating "
"a <literal>NOT NULL</literal> constraint on table columns, and a
"
@@ -191,25 +173,9 @@
"literal> 制約を生成する)と <literal>unique</literal> 属性(テーブルのカラム"
"へ <literal>UNIQUE</literal> 制約を生成する)が設定できるタグもあります。"
-#. Tag: programlisting
-#: toolset_guide.xml:117
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<many-to-one name=\"bar\" column=\"barId\"
not-null=\"true\"/>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: toolset_guide.xml:119
-#, no-c-format
-msgid ""
-"<![CDATA[<element column=\"serialNumber\" type=\"long\"
not-null=\"true\" "
-"unique=\"true\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: toolset_guide.xml:121
-#, fuzzy, no-c-format
-msgid ""
"A <literal>unique-key</literal> attribute can 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 "
@@ -217,309 +183,193 @@
"columns in the mapping file."
msgstr ""
"<literal>unique-key</literal> 属性はカラムをグループ化して一つのキー制約にす"
-"るために使われます。 現在、<literal>unique-key</literal> 属性で指定された値は"
-"制約の指定には <emphasis>使われず</emphasis> 、 マッピングファイルでカラムを"
-"グループ化することにのみ使われます。"
+"るために使われます。現在、 <literal>unique-key</literal> 属性で指定された値は"
+"制約の指定には <emphasis>使われず</emphasis> 、マッピングファイルでカラムをグ"
+"ループ化することにのみ使われます。"
-#. Tag: programlisting
-#: toolset_guide.xml:129
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<many-to-one name=\"org\" column=\"orgId\"
unique-key="
-"\"OrgEmployeeId\"/>\n"
-"<property name=\"employeeId\"
unique-key=\"OrgEmployee\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: toolset_guide.xml:131
-#, fuzzy, no-c-format
-msgid ""
"An <literal>index</literal> attribute specifies the name of an index
that "
"will be created using the mapped column or columns. Multiple columns can be "
"grouped into the same index by simply specifying the same index name."
msgstr ""
"<literal>index</literal> 属性はマッピングするカラムを使って生成したインデック"
-"スの名前を指定します。 複数カラムを1つのインデックスにグループ化できます。単"
+"スの名前を指定します。複数カラムを1つのインデックスにグループ化できます。単"
"に、同じインデックス名を指定するだけです。"
-#. Tag: programlisting
-#: toolset_guide.xml:137
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<property name=\"lastName\"
index=\"CustName\"/>\n"
-"<property name=\"firstName\"
index=\"CustName\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: toolset_guide.xml:139
-#, fuzzy, no-c-format
-msgid ""
"A <literal>foreign-key</literal> attribute can be used to override the
name "
"of any generated foreign key constraint."
msgstr ""
"<literal>foreign-key</literal> 属性は、生成された外部キー制約の名前をオーバー"
"ライドするために使用できます。"
-#. Tag: programlisting
-#: toolset_guide.xml:144
-#, no-c-format
-msgid ""
-"<![CDATA[<many-to-one name=\"bar\" column=\"barId\"
foreign-key=\"FKFooBar\"/"
-">]]>"
-msgstr ""
-
#. Tag: para
-#: toolset_guide.xml:146
#, no-c-format
msgid ""
"Many mapping elements also accept a child
<literal><column></literal> "
"element. This is particularly useful for mapping multi-column types:"
msgstr ""
"多くのマッピング要素は、子 <literal><column></literal> 要素を記述できま"
-"す。これは複数カラム型のマッピングには特に有用です。"
+"す。これは複数カラム型のマッピングには特に有用です:"
-#. Tag: programlisting
-#: toolset_guide.xml:151
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<property name=\"name\"
type=\"my.customtypes.Name\"/>\n"
-" <column name=\"last\" not-null=\"true\"
index=\"bar_idx\" length=\"30\"/"
-">\n"
-" <column name=\"first\" not-null=\"true\"
index=\"bar_idx\" length=\"20\"/"
-">\n"
-" <column name=\"initial\"/>\n"
-"</property>]]>"
-msgstr ""
-
-#. Tag: para
-#: toolset_guide.xml:153
-#, fuzzy, no-c-format
-msgid ""
"The <literal>default</literal> attribute allows you to 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."
msgstr ""
"<literal>default</literal> 属性はカラムのデフォルト値を指定します (マッピング"
-"したクラスの新しいインスタンスを保存する前に、 マッピングしたプロパティへ同じ"
+"したクラスの新しいインスタンスを保存する前に、マッピングしたプロパティへ同じ"
"値を代入すべきです)。"
-#. Tag: programlisting
-#: toolset_guide.xml:159
-#, no-c-format
-msgid ""
-"<![CDATA[<property name=\"credits\" type=\"integer\"
insert=\"false\">\n"
-" <column name=\"credits\" default=\"10\"/>\n"
-"</property>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: toolset_guide.xml:161
-#, no-c-format
-msgid ""
-"<![CDATA[<version name=\"version\" type=\"integer\"
insert=\"false\">\n"
-" <column name=\"version\" default=\"0\"/>\n"
-"</property>]]>"
-msgstr ""
-
#. Tag: para
-#: toolset_guide.xml:163
#, no-c-format
msgid ""
"The <literal>sql-type</literal> attribute allows the user to override
the "
"default mapping of a Hibernate type to SQL datatype."
msgstr ""
-"<literal>sql-type</literal> 属性で、デフォルトのHibernate型からSQLのデータ型"
-"へのマッピングをオーバーライドできます。"
+"<literal>sql-type</literal> 属性で、デフォルトの Hibernate 型から SQL のデー"
+"タ型へのマッピングをオーバーライドできます。"
-#. Tag: programlisting
-#: toolset_guide.xml:168
-#, no-c-format
-msgid ""
-"<![CDATA[<property name=\"balance\"
type=\"float\">\n"
-" <column name=\"balance\"
sql-type=\"decimal(13,3)\"/>\n"
-"</property>]]>"
-msgstr ""
-
#. Tag: para
-#: toolset_guide.xml:170
#, no-c-format
msgid ""
"The <literal>check</literal> attribute allows you to specify a check
"
"constraint."
msgstr "<literal>check</literal> 属性でチェック制約を指定することができます。"
-#. Tag: programlisting
-#: toolset_guide.xml:174
-#, no-c-format
-msgid ""
-"<![CDATA[<property name=\"foo\"
type=\"integer\">\n"
-" <column name=\"foo\" check=\"foo > 10\"/>\n"
-"</property>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: toolset_guide.xml:176
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Foo\" table=\"foos\"
check=\"bar < 100.0\">\n"
-" ...\n"
-" <property name=\"bar\" type=\"float\"/>\n"
-"</class>]]>"
-msgstr ""
-
#. Tag: para
-#: toolset_guide.xml:179
#, no-c-format
msgid "The following table summarizes these optional attributes."
msgstr ""
#. Tag: title
-#: toolset_guide.xml:182
#, no-c-format
msgid "Summary"
-msgstr "まとめ"
+msgstr "要約"
-#. Tag: entry
-#: toolset_guide.xml:189
+#. Tag: para
#, no-c-format
msgid "Attribute"
msgstr "属性"
-#. Tag: entry
-#: toolset_guide.xml:190
+#. Tag: para
#, no-c-format
msgid "Values"
msgstr "値"
-#. Tag: entry
-#: toolset_guide.xml:191
+#. Tag: para
#, no-c-format
msgid "Interpretation"
msgstr "説明"
-#. Tag: literal
-#: toolset_guide.xml:196
+#. Tag: para
#, no-c-format
-msgid "length"
-msgstr "length"
+msgid "<literal>length</literal>"
+msgstr "<literal>length</literal>"
-#. Tag: entry
-#: toolset_guide.xml:197 toolset_guide.xml:202 toolset_guide.xml:207
+#. Tag: para
#, no-c-format
msgid "number"
msgstr "数値"
-#. Tag: entry
-#: toolset_guide.xml:198
+#. Tag: para
#, no-c-format
msgid "column length"
msgstr "カラムの長さ"
-#. Tag: literal
-#: toolset_guide.xml:201
+#. Tag: para
#, no-c-format
-msgid "precision"
-msgstr "precision"
+msgid "<literal>precision</literal>"
+msgstr "<literal>precision</literal>"
-#. Tag: entry
-#: toolset_guide.xml:203
+#. Tag: para
#, no-c-format
msgid "column decimal precision"
-msgstr "カラムのDECIMAL型の精度(precision)"
+msgstr "カラムの DECIMAL 型の精度(precision)"
-#. Tag: literal
-#: toolset_guide.xml:206
+#. Tag: para
#, no-c-format
-msgid "scale"
-msgstr "scale"
+msgid "<literal>scale</literal>"
+msgstr "<literal>scale</literal>"
-#. Tag: entry
-#: toolset_guide.xml:208
+#. Tag: para
#, no-c-format
msgid "column decimal scale"
-msgstr "カラムのDECIMAL型のスケール(scale)"
+msgstr "カラムの DECIMAL 型のスケール(scale)"
-#. Tag: literal
-#: toolset_guide.xml:211
+#. Tag: para
#, no-c-format
-msgid "not-null"
-msgstr "not-null"
+msgid "<literal>not-null</literal>"
+msgstr "<literal>not-null</literal>"
-#. Tag: literal
-#: toolset_guide.xml:212 toolset_guide.xml:217
+#. Tag: para
#, no-c-format
-msgid "true|false"
-msgstr "true|false"
+msgid "<literal>true|false</literal>"
+msgstr "<literal>true|false</literal>"
-#. Tag: entry
-#: toolset_guide.xml:213
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "specifies that the column should be non-nullable"
-msgstr "カラムがnull値を取らないことを指定します"
+msgstr "カラムが null 値を取らないことを指定します"
-#. Tag: literal
-#: toolset_guide.xml:216
+#. Tag: para
#, no-c-format
-msgid "unique"
-msgstr "unique"
+msgid "<literal>unique</literal>"
+msgstr "<literal>unique</literal>"
-#. Tag: entry
-#: toolset_guide.xml:218
+#. Tag: para
#, no-c-format
msgid "specifies that the column should have a unique constraint"
msgstr "カラムがユニーク制約を持つことを指定します"
-#. Tag: literal
-#: toolset_guide.xml:221
+#. Tag: para
#, no-c-format
-msgid "index"
-msgstr "index"
+msgid "<literal>index</literal>"
+msgstr "<literal>index</literal>"
-#. Tag: literal
-#: toolset_guide.xml:222
+#. Tag: para
#, no-c-format
-msgid "index_name"
+msgid "<literal>index_name</literal>"
msgstr "インデックス名"
-#. Tag: entry
-#: toolset_guide.xml:223
+#. Tag: para
#, no-c-format
msgid "specifies the name of a (multi-column) index"
msgstr "(複数カラムの)インデックスの名前を指定します"
-#. Tag: literal
-#: toolset_guide.xml:226
+#. Tag: para
#, no-c-format
-msgid "unique-key"
-msgstr "unique-key"
+msgid "<literal>unique-key</literal>"
+msgstr "<literal>unique-key</literal>"
-#. Tag: literal
-#: toolset_guide.xml:227
+#. Tag: para
#, no-c-format
-msgid "unique_key_name"
+msgid "<literal>unique_key_name</literal>"
msgstr "ユニークキー名"
-#. Tag: entry
-#: toolset_guide.xml:228
+#. Tag: para
#, no-c-format
msgid "specifies the name of a multi-column unique constraint"
msgstr "複数カラムのユニーク制約の名前を指定します"
-#. Tag: literal
-#: toolset_guide.xml:231
+#. Tag: para
#, no-c-format
-msgid "foreign-key"
-msgstr "foreign-key"
+msgid "<literal>foreign-key</literal>"
+msgstr "<literal>foreign-key</literal>"
-#. Tag: literal
-#: toolset_guide.xml:232
-#, no-c-format
-msgid "foreign_key_name"
+#. Tag: para
+#, fuzzy, no-c-format
+msgid "<literal>foreign_key_name</literal>"
msgstr "外部キー名"
-#. Tag: entry
-#: toolset_guide.xml:233
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"specifies the name of the foreign key constraint generated for an "
"association, for a <literal><one-to-one></literal>,
<literal><many-"
@@ -527,64 +377,57 @@
"to-many></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/>."
+"<literal><one-to-one></literal>、
<literal><many-to-one></"
+"literal>、 <literal><key></literal>、 または
<literal><many-to-"
+"many></literal> マッピングエレメントのために、関連に対して生成された外部"
+"キー制約の名前を指定します。 <literal>inverse=\"true\"</literal> 側は "
+"<literal>SchemaExport</literal> によって考慮されないことに注意してください。"
-#. Tag: literal
-#: toolset_guide.xml:243
+#. Tag: para
#, no-c-format
-msgid "sql-type"
-msgstr "sql-type"
+msgid "<literal>sql-type</literal>"
+msgstr "<literal>sql-type</literal>"
-#. Tag: literal
-#: toolset_guide.xml:244
+#. Tag: para
#, no-c-format
-msgid "SQL column type"
-msgstr "SQLのカラム型"
+msgid "<literal>SQL column type</literal>"
+msgstr "SQL のカラム型"
-#. Tag: entry
-#: toolset_guide.xml:245
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
"overrides the default column type (attribute of
<literal><column></"
"literal> element only)"
msgstr ""
-"デフォルトのカラム型をオーバーライドします( <placeholder-1/> 要素の属性のみ)"
+"デフォルトのカラム型をオーバーライドします ( <literal><column></"
+"literal> 要素の属性に限る)"
-#. Tag: literal
-#: toolset_guide.xml:251
+#. Tag: para
#, no-c-format
-msgid "default"
-msgstr "default"
+msgid "<literal>default</literal>"
+msgstr "<literal>default</literal>"
-#. Tag: entry
-#: toolset_guide.xml:252 toolset_guide.xml:259
+#. Tag: para
#, no-c-format
msgid "SQL expression"
-msgstr "SQL式"
+msgstr "SQL 式"
-#. Tag: entry
-#: toolset_guide.xml:253
+#. Tag: para
#, no-c-format
msgid "specify a default value for the column"
msgstr "カラムのデフォルト値を指定します"
-#. Tag: literal
-#: toolset_guide.xml:258
+#. Tag: para
#, no-c-format
-msgid "check"
-msgstr "check"
+msgid "<literal>check</literal>"
+msgstr "<literal>check</literal>"
-#. Tag: entry
-#: toolset_guide.xml:260
+#. Tag: para
#, no-c-format
msgid "create an SQL check constraint on either column or table"
-msgstr "カラムかテーブルにSQLのチェック制約を作成します"
+msgstr "カラムかテーブルに SQL のチェック制約を作成します"
#. Tag: para
-#: toolset_guide.xml:268
#, no-c-format
msgid ""
"The <literal><comment></literal> element allows you to
specify "
@@ -593,252 +436,179 @@
"<literal><comment></literal> 要素で生成するスキーマにコメントを指定する"
"ことができます。"
-#. Tag: programlisting
-#: toolset_guide.xml:273
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Customer\"
table=\"CurCust\">\n"
-" <comment>Current customers only</comment>\n"
-" ...\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: programlisting
-#: toolset_guide.xml:275
-#, no-c-format
-msgid ""
-"<![CDATA[<property name=\"balance\">\n"
-" <column name=\"bal\">\n"
-" <comment>Balance in USD</comment>\n"
-" </column>\n"
-"</property>]]>"
-msgstr ""
-
-#. Tag: para
-#: toolset_guide.xml:277
-#, fuzzy, no-c-format
-msgid ""
"This results in a <literal>comment on table</literal> or
<literal>comment on "
"column</literal> statement in the generated DDL where supported."
msgstr ""
-"これにより、生成したDDLに <literal>comment on table</literal> や "
+"これにより、生成した DDL に <literal>comment on table</literal> や "
"<literal>comment on column</literal> 文が書かれます。"
#. Tag: title
-#: toolset_guide.xml:286
#, no-c-format
msgid "Running the tool"
msgstr "ツールの実行"
#. Tag: para
-#: toolset_guide.xml:288
#, no-c-format
msgid ""
"The <literal>SchemaExport</literal> tool writes a DDL script to
standard out "
"and/or executes the DDL statements."
msgstr ""
-"<literal>SchemaExport</literal> は標準出力に対してDDLスクリプトを書き出し、"
-"DDL文を実行したりもします。"
+"<literal>SchemaExport</literal> は標準出力に対して DDL スクリプトを書き出"
+"し、 DDL 文を実行したりもします。"
#. Tag: para
-#: toolset_guide.xml:293
#, fuzzy, no-c-format
msgid ""
"The following table displays the <literal>SchemaExport</literal>
command "
"line options"
-msgstr ""
-"<literal>SchemaExport</literal> Command Line Options
<literal>SchemaExport</"
-"literal> のコマンドラインオプション"
+msgstr "<literal>SchemaExport</literal> のコマンドラインオプション"
#. Tag: para
-#: toolset_guide.xml:295
#, no-c-format
msgid ""
"<literal>java -cp
</literal><emphasis>hibernate_classpaths</emphasis> "
"<literal>org.hibernate.tool.hbm2ddl.SchemaExport</literal>
<emphasis>options "
"mapping_files</emphasis>"
msgstr ""
+"<literal>java -cp
</literal><emphasis>hibernate_classpaths</emphasis> "
+"<literal>org.hibernate.tool.hbm2ddl.SchemaExport</literal>
<emphasis>options "
+"mapping_files</emphasis>"
#. Tag: title
-#: toolset_guide.xml:301
#, no-c-format
msgid "<literal>SchemaExport</literal> Command Line Options"
-msgstr ""
-"<literal>SchemaExport</literal> Command Line Options
<literal>SchemaExport</"
-"literal> のコマンドラインオプション"
+msgstr "<literal>SchemaExport</literal> のコマンドラインオプション"
-#. Tag: entry
-#: toolset_guide.xml:307 toolset_guide.xml:457 toolset_guide.xml:526
+#. Tag: para
#, no-c-format
msgid "Option"
msgstr "オプション"
-#. Tag: entry
-#: toolset_guide.xml:308 toolset_guide.xml:395 toolset_guide.xml:458
-#: toolset_guide.xml:527
+#. Tag: para
#, no-c-format
msgid "Description"
msgstr "説明"
-#. Tag: literal
-#: toolset_guide.xml:313 toolset_guide.xml:463
+#. Tag: para
#, no-c-format
-msgid "--quiet"
-msgstr "--quiet"
+msgid "<literal>--quiet</literal>"
+msgstr "<literal>--quiet</literal>"
-#. Tag: entry
-#: toolset_guide.xml:314 toolset_guide.xml:464
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "do not output the script to stdout"
-msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"スクリプトを標準出力に出力しません\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"標準出力にスクリプトを出力しません"
+msgstr "標準出力にスクリプトを出力しません"
-#. Tag: literal
-#: toolset_guide.xml:317
+#. Tag: para
#, no-c-format
-msgid "--drop"
-msgstr "--drop"
+msgid "<literal>--drop</literal>"
+msgstr "<literal>--drop</literal>"
-#. Tag: entry
-#: toolset_guide.xml:318
+#. Tag: para
#, no-c-format
msgid "only drop the tables"
msgstr "テーブルの削除だけを行います"
-#. Tag: literal
-#: toolset_guide.xml:321
+#. Tag: para
#, no-c-format
-msgid "--create"
-msgstr "--create"
+msgid "<literal>--create</literal>"
+msgstr "<literal>--create</literal>"
-#. Tag: entry
-#: toolset_guide.xml:322
+#. Tag: para
#, no-c-format
msgid "only create the tables"
-msgstr "テーブルの生成のみを行います。"
+msgstr "テーブルの生成のみを行います"
-#. Tag: literal
-#: toolset_guide.xml:325 toolset_guide.xml:467
+#. Tag: para
#, no-c-format
-msgid "--text"
-msgstr "--text"
+msgid "<literal>--text</literal>"
+msgstr "<literal>--text</literal>"
-#. Tag: entry
-#: toolset_guide.xml:326
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "do not export to the database"
msgstr "データベースにエクスポートしません"
-#. Tag: literal
-#: toolset_guide.xml:329
+#. Tag: para
#, no-c-format
-msgid "--output=my_schema.ddl"
-msgstr "--output=my_schema.ddl"
+msgid "<literal>--output=my_schema.ddl</literal>"
+msgstr "<literal>--output=my_schema.ddl</literal>"
-#. Tag: entry
-#: toolset_guide.xml:330
+#. Tag: para
#, no-c-format
msgid "output the ddl script to a file"
-msgstr "DDLスクリプトをファイルに出力します"
+msgstr "DDL スクリプトをファイルに出力します"
-#. Tag: literal
-#: toolset_guide.xml:333 toolset_guide.xml:471 toolset_guide.xml:532
+#. Tag: para
#, no-c-format
-msgid "--naming=eg.MyNamingStrategy"
-msgstr "--naming=eg.MyNamingStrategy"
+msgid "<literal>--naming=eg.MyNamingStrategy</literal>"
+msgstr "<literal>--naming=eg.MyNamingStrategy</literal>"
-#. Tag: entry
-#: toolset_guide.xml:334 toolset_guide.xml:472 toolset_guide.xml:533
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "select a <literal>NamingStrategy</literal>"
-msgstr "<literal>hibernate.properties</literal> ファイル内で"
+msgstr "<literal>NamingStrategy</literal> を選択"
-#. Tag: literal
-#: toolset_guide.xml:337 toolset_guide.xml:479 toolset_guide.xml:540
+#. Tag: para
#, no-c-format
-msgid "--config=hibernate.cfg.xml"
-msgstr "--config=hibernate.cfg.xml"
+msgid "<literal>--config=hibernate.cfg.xml</literal>"
+msgstr "<literal>--config=hibernate.cfg.xml</literal>"
-#. Tag: entry
-#: toolset_guide.xml:338
+#. Tag: para
#, no-c-format
msgid "read Hibernate configuration from an XML file"
-msgstr "XMLファイルからHibernateの定義情報を読み込みます"
+msgstr "XML ファイルから Hibernate の定義情報を読み込みます"
-#. Tag: literal
-#: toolset_guide.xml:341 toolset_guide.xml:475 toolset_guide.xml:536
+#. Tag: para
#, no-c-format
-msgid "--properties=hibernate.properties"
-msgstr "--properties=hibernate.properties"
+msgid "<literal>--properties=hibernate.properties</literal>"
+msgstr "<literal>--properties=hibernate.properties</literal>"
-#. Tag: entry
-#: toolset_guide.xml:342 toolset_guide.xml:476 toolset_guide.xml:537
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "read database properties from a file"
-msgstr ""
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"ファイルからデータベースプロパティを読み込みます\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"ファイルからデータベースプロパティを読み込みます\n"
-"#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-"ファイルからデータベースのプロパティを読み込みます"
+msgstr "ファイルからデータベースのプロパティを読み込みます"
-#. Tag: literal
-#: toolset_guide.xml:345
+#. Tag: para
#, no-c-format
-msgid "--format"
-msgstr "--format"
+msgid "<literal>--format</literal>"
+msgstr "<literal>--format</literal>"
-#. Tag: entry
-#: toolset_guide.xml:346
+#. Tag: para
#, no-c-format
msgid "format the generated SQL nicely in the script"
-msgstr "スクリプト内に生成するSQLを読みやすいようにフォーマットします"
+msgstr "スクリプト内に生成する SQL を読みやすいようにフォーマットします"
-#. Tag: literal
-#: toolset_guide.xml:349
+#. Tag: para
#, no-c-format
-msgid "--delimiter=;"
-msgstr "--delimiter=x"
+msgid "<literal>--delimiter=;</literal>"
+msgstr "<literal>--delimiter=;</literal>"
-#. Tag: entry
-#: toolset_guide.xml:350
+#. Tag: para
#, no-c-format
msgid "set an end of line delimiter for the script"
msgstr "スクリプトの行区切り文字を設定します"
#. Tag: para
-#: toolset_guide.xml:356
-#, fuzzy, no-c-format
+#, no-c-format
msgid "You can even embed <literal>SchemaExport</literal> in your
application:"
msgstr ""
"アプリケーションに <literal>SchemaExport</literal> を組み込むこともできます:"
-#. Tag: programlisting
-#: toolset_guide.xml:360
-#, no-c-format
-msgid ""
-"<![CDATA[Configuration cfg = ....;\n"
-"new SchemaExport(cfg).create(false, true);]]>"
-msgstr ""
-
#. Tag: title
-#: toolset_guide.xml:365
#, no-c-format
msgid "Properties"
msgstr "プロパティ"
#. Tag: para
-#: toolset_guide.xml:367
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Database properties can be specified:"
msgstr "次のように、データベースのプロパティを指定することができます。"
#. Tag: para
-#: toolset_guide.xml:373
#, no-c-format
msgid ""
"as system properties with
<literal>-D</literal><emphasis><property></"
@@ -848,236 +618,160 @@
"プロパティとして"
#. Tag: para
-#: toolset_guide.xml:376
#, no-c-format
msgid "in <literal>hibernate.properties</literal>"
msgstr "<literal>hibernate.properties</literal> ファイル内で"
#. Tag: para
-#: toolset_guide.xml:379
#, no-c-format
msgid "in a named properties file with
<literal>--properties</literal>"
msgstr "<literal>--properties</literal> を使って指定したプロパティファイル内で"
#. Tag: para
-#: toolset_guide.xml:383
#, no-c-format
msgid "The needed properties are:"
msgstr "必要なプロパティは以下のものです:"
#. Tag: title
-#: toolset_guide.xml:388
#, no-c-format
msgid "SchemaExport Connection Properties"
-msgstr "SchemaExportコネクションプロパティ"
+msgstr "SchemaExport コネクションプロパティ"
-#. Tag: entry
-#: toolset_guide.xml:394
+#. Tag: para
#, no-c-format
msgid "Property Name"
msgstr "プロパティ名"
-#. Tag: literal
-#: toolset_guide.xml:400
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.driver_class"
-msgstr "hibernate.connection.driver_class"
+msgid "<literal>hibernate.connection.driver_class</literal>"
+msgstr "<literal>hibernate.connection.driver_class</literal>"
-#. Tag: entry
-#: toolset_guide.xml:401
+#. Tag: para
#, no-c-format
msgid "jdbc driver class"
-msgstr "jdbcのドライバークラス"
+msgstr "jdbc のドライバークラス"
-#. Tag: literal
-#: toolset_guide.xml:404
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.url"
-msgstr "hibernate.connection.url"
+msgid "<literal>hibernate.connection.url</literal>"
+msgstr "<literal>hibernate.connection.url</literal>"
-#. Tag: entry
-#: toolset_guide.xml:405
+#. Tag: para
#, no-c-format
msgid "jdbc url"
-msgstr "jdbcのurl"
+msgstr "jdbc の url"
-#. Tag: literal
-#: toolset_guide.xml:408
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.username"
-msgstr "hibernate.connection.username"
+msgid "<literal>hibernate.connection.username</literal>"
+msgstr "<literal>hibernate.connection.username</literal>"
-#. Tag: entry
-#: toolset_guide.xml:409
+#. Tag: para
#, no-c-format
msgid "database user"
-msgstr "データベースのユーザ"
+msgstr "データベースのユーザー"
-#. Tag: literal
-#: toolset_guide.xml:412
+#. Tag: para
#, no-c-format
-msgid "hibernate.connection.password"
-msgstr "hibernate.connection.password"
+msgid "<literal>hibernate.connection.password</literal>"
+msgstr "<literal>hibernate.connection.password</literal>"
-#. Tag: entry
-#: toolset_guide.xml:413
+#. Tag: para
#, no-c-format
msgid "user password"
-msgstr "ユーザパスワード"
+msgstr "ユーザーパスワード"
-#. Tag: literal
-#: toolset_guide.xml:416
+#. Tag: para
#, no-c-format
-msgid "hibernate.dialect"
-msgstr "hibernate.dialect"
+msgid "<literal>hibernate.dialect</literal>"
+msgstr "<literal>hibernate.dialect</literal>"
-#. Tag: entry
-#: toolset_guide.xml:417
+#. Tag: para
#, no-c-format
msgid "dialect"
msgstr "データベース方言"
#. Tag: title
-#: toolset_guide.xml:426
#, no-c-format
msgid "Using Ant"
-msgstr "Antを使用する"
+msgstr "Ant を使用する"
#. Tag: para
-#: toolset_guide.xml:428
#, no-c-format
msgid ""
"You can call <literal>SchemaExport</literal> from your Ant build
script:"
msgstr ""
-"Antのビルドスクリプトから <literal>SchemaExport</literal> を呼び出すことがで"
-"きます。:"
+"Ant のビルドスクリプトから <literal>SchemaExport</literal> を呼び出すことがで"
+"きます:"
-#. Tag: programlisting
-#: toolset_guide.xml:432
-#, no-c-format
-msgid ""
-"<![CDATA[<target name=\"schemaexport\">\n"
-" <taskdef name=\"schemaexport\"\n"
-"
classname=\"org.hibernate.tool.hbm2ddl.SchemaExportTask\"\n"
-" classpathref=\"class.path\"/>\n"
-" \n"
-" <schemaexport\n"
-" properties=\"hibernate.properties\"\n"
-" quiet=\"no\"\n"
-" text=\"no\"\n"
-" drop=\"no\"\n"
-" delimiter=\";\"\n"
-" output=\"schema-export.sql\">\n"
-" <fileset dir=\"src\">\n"
-" <include name=\"**/*.hbm.xml\"/>\n"
-" </fileset>\n"
-" </schemaexport>\n"
-"</target>]]>"
-msgstr ""
-
#. Tag: title
-#: toolset_guide.xml:437
#, no-c-format
msgid "Incremental schema updates"
msgstr "インクリメンタルなスキーマ更新"
#. Tag: para
-#: toolset_guide.xml:439
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>SchemaUpdate</literal> tool will update an existing schema
with "
"\"incremental\" changes. The <literal>SchemaUpdate</literal>
depends upon "
"the JDBC metadata API and, as such, will not work with all JDBC drivers."
msgstr ""
"<literal>SchemaUpdate</literal> ツールは既存のスキーマをインクリメンタルに更"
-"新します。 <literal>SchemaUpdate</literal> はJDBCのメタデータAPIに強く依存し"
-"ます。 そのため、すべてのJDBCドライバでうまくいくとは限らないことに注意してく"
-"ださい。"
+"新します。 <literal>SchemaUpdate</literal> は JDBC のメタデータ API に強く依"
+"存します。そのため、すべての JDBC ドライバでうまくいくとは限らないことに注意"
+"してください。"
#. Tag: para
-#: toolset_guide.xml:445
#, no-c-format
msgid ""
"<literal>java -cp
</literal><emphasis>hibernate_classpaths</emphasis> "
"<literal>org.hibernate.tool.hbm2ddl.SchemaUpdate</literal>
<emphasis>options "
"mapping_files</emphasis>"
msgstr ""
+"<literal>java -cp
</literal><emphasis>hibernate_classpaths</emphasis> "
+"<literal>org.hibernate.tool.hbm2ddl.SchemaUpdate</literal>
<emphasis>options "
+"mapping_files</emphasis>"
#. Tag: title
-#: toolset_guide.xml:451
#, no-c-format
msgid "<literal>SchemaUpdate</literal> Command Line Options"
-msgstr "<literal>SchemaUpdate</literal> のコマンドライン・オプション"
+msgstr "<literal>SchemaUpdate</literal> のコマンドラインオプション"
-#. Tag: entry
-#: toolset_guide.xml:468
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "do not export the script to the database"
msgstr "データベースにスクリプトをエクスポートしません"
-#. Tag: entry
-#: toolset_guide.xml:480 toolset_guide.xml:541
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid "specify a <literal>.cfg.xml</literal> file"
-msgstr "<placeholder-1/> ファイルを指定します"
+msgstr "<literal>.cfg.xml</literal> ファイルを指定"
#. Tag: para
-#: toolset_guide.xml:486
-#, fuzzy, no-c-format
+#, no-c-format
msgid "You can embed <literal>SchemaUpdate</literal> in your
application:"
msgstr ""
-"アプリケーションに <literal>SchemaUpdate</literal> を組み込むことができま"
-"す。:"
+"アプリケーションに <literal>SchemaUpdate</literal> を組み込むことができます:"
-#. Tag: programlisting
-#: toolset_guide.xml:490
-#, no-c-format
-msgid ""
-"<![CDATA[Configuration cfg = ....;\n"
-"new SchemaUpdate(cfg).execute(false);]]>"
-msgstr ""
-
#. Tag: title
-#: toolset_guide.xml:495
#, no-c-format
msgid "Using Ant for incremental schema updates"
-msgstr "インクリメンタルなスキーマ更新に対するAntの使用"
+msgstr "インクリメンタルなスキーマ更新に対する Ant の使用"
#. Tag: para
-#: toolset_guide.xml:497
#, no-c-format
msgid "You can call <literal>SchemaUpdate</literal> from the Ant
script:"
msgstr ""
-"Antスクリプトから <literal>SchemaUpdate</literal> を呼び出すことができます:"
+"Ant スクリプトから <literal>SchemaUpdate</literal> を呼び出すことができます:"
-#. Tag: programlisting
-#: toolset_guide.xml:501
-#, no-c-format
-msgid ""
-"<![CDATA[<target name=\"schemaupdate\">\n"
-" <taskdef name=\"schemaupdate\"\n"
-"
classname=\"org.hibernate.tool.hbm2ddl.SchemaUpdateTask\"\n"
-" classpathref=\"class.path\"/>\n"
-" \n"
-" <schemaupdate\n"
-" properties=\"hibernate.properties\"\n"
-" quiet=\"no\">\n"
-" <fileset dir=\"src\">\n"
-" <include name=\"**/*.hbm.xml\"/>\n"
-" </fileset>\n"
-" </schemaupdate>\n"
-"</target>]]>"
-msgstr ""
-
#. Tag: title
-#: toolset_guide.xml:506
#, no-c-format
msgid "Schema validation"
msgstr "Schema validation"
#. Tag: para
-#: toolset_guide.xml:508
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>SchemaValidator</literal> tool will validate that the
existing "
"database schema \"matches\" your mapping documents. The "
@@ -1086,126 +780,387 @@
"extremely useful for testing."
msgstr ""
"<literal>SchemaValidator</literal> ツールは、既存のデータベーススキーマと作成"
-"したマッピングドキュメントが\"一致する\"ことを検証します。 "
-"<literal>SchemaValidator</literal> はJDBCのメタデータAPIに強く依存することに"
-"注意してください。そのため、すべてのJDBCドライバーで作動するものではありませ"
-"ん。このツールはテスト時に非常に有用です。"
+"したマッピングドキュメントが「一致する」ことを検証します。 "
+"<literal>SchemaValidator</literal> は JDBC のメタデータ API に強く依存するこ"
+"とに注意してください。そのため、すべての JDBC ドライバーで作動するものではあ"
+"りません。このツールはテスト時に非常に有用です。"
#. Tag: para
-#: toolset_guide.xml:514
#, no-c-format
msgid ""
"<literal>java -cp
</literal><emphasis>hibernate_classpaths</emphasis> "
"<literal>org.hibernate.tool.hbm2ddl.SchemaValidator</literal> "
"<emphasis>options mapping_files</emphasis>"
msgstr ""
+"<literal>java -cp
</literal><emphasis>hibernate_classpaths</emphasis> "
+"<literal>org.hibernate.tool.hbm2ddl.SchemaValidator</literal> "
+"<emphasis>options mapping_files</emphasis>"
+#. Tag: para
+#, fuzzy, no-c-format
+msgid ""
+"The following table displays the <literal>SchemaValidator</literal>
command "
+"line options:"
+msgstr "<literal>SchemaValidator</literal> のコマンドラインオプション"
+
#. Tag: title
-#: toolset_guide.xml:520
#, no-c-format
msgid "<literal>SchemaValidator</literal> Command Line Options"
-msgstr "<literal>SchemaValidator</literal> のコマンドライン・オプション"
+msgstr "<literal>SchemaValidator</literal> のコマンドラインオプション"
#. Tag: para
-#: toolset_guide.xml:547
-#, fuzzy, no-c-format
+#, no-c-format
msgid "You can embed <literal>SchemaValidator</literal> in your
application:"
msgstr ""
"<literal>SchemaValidator</literal> をアプリケーションに組み込むことが出来ま"
"す:"
-#. Tag: programlisting
-#: toolset_guide.xml:551
-#, no-c-format
-msgid ""
-"<![CDATA[Configuration cfg = ....;\n"
-"new SchemaValidator(cfg).validate();]]>"
-msgstr ""
-
#. Tag: title
-#: toolset_guide.xml:556
#, no-c-format
msgid "Using Ant for schema validation"
-msgstr "スキーマのバリデーションにAntを使用します"
+msgstr "スキーマのバリデーションに Ant を使用します"
#. Tag: para
-#: toolset_guide.xml:558
#, no-c-format
msgid "You can call <literal>SchemaValidator</literal> from the Ant
script:"
-msgstr "Antスクリプトから <literal>SchemaValidator</literal> を呼び出せます:"
+msgstr "Ant スクリプトから <literal>SchemaValidator</literal> を呼び出せます:"
-#. Tag: programlisting
-#: toolset_guide.xml:562
-#, no-c-format
-msgid ""
-"<![CDATA[<target name=\"schemavalidate\">\n"
-" <taskdef name=\"schemavalidator\"\n"
-"
classname=\"org.hibernate.tool.hbm2ddl.SchemaValidatorTask\"\n"
-" classpathref=\"class.path\"/>\n"
-" \n"
-" <schemavalidator\n"
-" properties=\"hibernate.properties\">\n"
-" <fileset dir=\"src\">\n"
-" <include name=\"**/*.hbm.xml\"/>\n"
-" </fileset>\n"
-" </schemavalidator>\n"
-"</target>]]>"
-msgstr ""
+#, fuzzy
+#~ msgid "<![CDATA[<property name=\"zip\"
length=\"5\"/>]]>"
+#~ msgstr "<property name=\"zip\"
length=\"5\"/>"
-#~ msgid "Ant Tasks:"
-#~ msgstr "Ant Tasks:"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property name=\"balance\" precision=\"12\"
scale=\"2\"/>]]>"
+#~ msgstr "<property name=\"balance\" precision=\"12\"
scale=\"2\"/>"
-#~ msgid "<one-to-one>"
-#~ msgstr "<one-to-one>"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"bar\" column=\"barId\"
not-null=\"true\"/>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"bar\" column=\"barId\"
not-null=\"true\"/>"
-#~ msgid "<many-to-one>"
-#~ msgstr "<many-to-one>"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<element column=\"serialNumber\"
type=\"long\" not-null=\"true\" "
+#~ "unique=\"true\"/>]]>"
+#~ msgstr ""
+#~ "<element column=\"serialNumber\" type=\"long\"
not-null=\"true\" "
+#~ "unique=\"true\"/>"
-#~ msgid "<key>"
-#~ msgstr "<key>"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"org\" column=\"orgId\"
unique-key="
+#~ "\"OrgEmployeeId\"/>\n"
+#~ "<property name=\"employeeId\"
unique-key=\"OrgEmployee\"/>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"org\" column=\"orgId\"
unique-key=\"OrgEmployeeId"
+#~ "\"/>\n"
+#~ "<property name=\"employeeId\"
unique-key=\"OrgEmployee\"/>"
-#~ msgid "<many-to-many>"
-#~ msgstr "<many-to-many>"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property name=\"lastName\"
index=\"CustName\"/>\n"
+#~ "<property name=\"firstName\"
index=\"CustName\"/>]]>"
+#~ msgstr ""
+#~ "<property name=\"lastName\"
index=\"CustName\"/>\n"
+#~ "<property name=\"firstName\"
index=\"CustName\"/>"
-#~ msgid "inverse=\"true\""
-#~ msgstr "inverse=\"true\""
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<many-to-one name=\"bar\" column=\"barId\"
foreign-key=\"FKFooBar"
+#~ "\"/>]]>"
+#~ msgstr ""
+#~ "<many-to-one name=\"bar\" column=\"barId\"
foreign-key=\"FKFooBar\"/"
+#~ ">"
-#~ msgid "SchemaExport"
-#~ msgstr "SchemaExport"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property name=\"name\"
type=\"my.customtypes.Name\"/>\n"
+#~ " <column name=\"last\" not-null=\"true\"
index=\"bar_idx\" length=\"30"
+#~ "\"/>\n"
+#~ " <column name=\"first\" not-null=\"true\"
index=\"bar_idx\" length=\"20"
+#~ "\"/>\n"
+#~ " <column name=\"initial\"/>\n"
+#~ "</property>]]>"
+#~ msgstr ""
+#~ "<property name=\"name\"
type=\"my.customtypes.Name\"/>\n"
+#~ " <column name=\"last\" not-null=\"true\"
index=\"bar_idx\" length="
+#~ "\"30\"/>\n"
+#~ " <column name=\"first\" not-null=\"true\"
index=\"bar_idx\" length="
+#~ "\"20\"/>\n"
+#~ " <column name=\"initial\"/>\n"
+#~ "</property>"
-#~ msgid "<column>"
-#~ msgstr "<column>"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property name=\"credits\" type=\"integer\"
insert=\"false\">\n"
+#~ " <column name=\"credits\" default=\"10\"/>\n"
+#~ "</property>]]>"
+#~ msgstr ""
+#~ "<property name=\"credits\" type=\"integer\"
insert=\"false\">\n"
+#~ " <column name=\"credits\"
default=\"10\"/>\n"
+#~ "</property>"
-#~ msgid "java -cp"
-#~ msgstr "java -cp"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<version name=\"version\" type=\"integer\"
insert=\"false\">\n"
+#~ " <column name=\"version\" default=\"0\"/>\n"
+#~ "</property>]]>"
+#~ msgstr ""
+#~ "<version name=\"version\" type=\"integer\"
insert=\"false\">\n"
+#~ " <column name=\"version\"
default=\"0\"/>\n"
+#~ "</property>"
-#~ msgid "hibernate_classpaths"
-#~ msgstr "hibernate_classpaths"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property name=\"balance\"
type=\"float\">\n"
+#~ " <column name=\"balance\"
sql-type=\"decimal(13,3)\"/>\n"
+#~ "</property>]]>"
+#~ msgstr ""
+#~ "<property name=\"balance\"
type=\"float\">\n"
+#~ " <column name=\"balance\"
sql-type=\"decimal(13,3)\"/>\n"
+#~ "</property>"
-#~ msgid "org.hibernate.tool.hbm2ddl.SchemaExport"
-#~ msgstr "org.hibernate.tool.hbm2ddl.SchemaExport"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property name=\"foo\"
type=\"integer\">\n"
+#~ " <column name=\"foo\" check=\"foo >
10\"/>\n"
+#~ "</property>]]>"
+#~ msgstr ""
+#~ "<property name=\"foo\"
type=\"integer\">\n"
+#~ " <column name=\"foo\" check=\"foo >
10\"/>\n"
+#~ "</property>"
-#~ msgid "options mapping_files"
-#~ msgstr "options mapping_files"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Foo\" table=\"foos\"
check=\"bar < 100.0\">\n"
+#~ " ...\n"
+#~ " <property name=\"bar\" type=\"float\"/>\n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Foo\" table=\"foos\" check=\"bar
< 100.0\">\n"
+#~ " ...\n"
+#~ " <property name=\"bar\"
type=\"float\"/>\n"
+#~ "</class>"
-#~ msgid "NamingStrategy"
-#~ msgstr "NamingStrategy"
+#~ msgid "length"
+#~ msgstr "length"
+#~ msgid "precision"
+#~ msgstr "precision"
+
+#~ msgid "scale"
+#~ msgstr "scale"
+
+#~ msgid "not-null"
+#~ msgstr "not-null"
+
+#~ msgid "true|false"
+#~ msgstr "true|false"
+
+#~ msgid "unique"
+#~ msgstr "unique"
+
+#~ msgid "index"
+#~ msgstr "index"
+
+#~ msgid "index_name"
+#~ msgstr "インデックス名"
+
+#~ msgid "unique-key"
+#~ msgstr "unique-key"
+
+#~ msgid "unique_key_name"
+#~ msgstr "ユニークキー名"
+
+#~ msgid "foreign-key"
+#~ msgstr "foreign-key"
+
+#~ msgid "sql-type"
+#~ msgstr "sql-type"
+
+#~ msgid "default"
+#~ msgstr "default"
+
+#~ msgid "check"
+#~ msgstr "check"
+
#, fuzzy
-#~ msgid "select a <placeholder-1/>"
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Customer\"
table=\"CurCust\">\n"
+#~ " <comment>Current customers only</comment>\n"
+#~ " ...\n"
+#~ "</class>]]>"
#~ msgstr ""
-#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-#~ "<placeholder-1/> を選択します\n"
-#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-#~ "<placeholder-1/> を選択します。\n"
-#~ "#-#-#-#-# - (PACKAGE VERSION) #-#-#-#-#\n"
-#~ "<placeholder-1/> を選択します"
+#~ "<class name=\"Customer\"
table=\"CurCust\">\n"
+#~ " <comment>Current customers
only</comment>\n"
+#~ " ...\n"
+#~ "</class>"
-#~ msgid "org.hibernate.tool.hbm2ddl.SchemaUpdate"
-#~ msgstr "org.hibernate.tool.hbm2ddl.SchemaUpdate"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<property name=\"balance\">\n"
+#~ " <column name=\"bal\">\n"
+#~ " <comment>Balance in USD</comment>\n"
+#~ " </column>\n"
+#~ "</property>]]>"
+#~ msgstr ""
+#~ "<property name=\"balance\">\n"
+#~ " <column name=\"bal\">\n"
+#~ " <comment>Balance in USD</comment>\n"
+#~ " </column>\n"
+#~ "</property>"
-#~ msgid ".cfg.xml"
-#~ msgstr ".cfg.xml"
+#~ msgid "--quiet"
+#~ msgstr "--quiet"
-#~ msgid "org.hibernate.tool.hbm2ddl.SchemaValidator"
-#~ msgstr "org.hibernate.tool.hbm2ddl.SchemaValidator"
+#~ msgid "--drop"
+#~ msgstr "--drop"
+
+#~ msgid "--create"
+#~ msgstr "--create"
+
+#~ msgid "--text"
+#~ msgstr "--text"
+
+#~ msgid "--properties=hibernate.properties"
+#~ msgstr "--properties=hibernate.properties"
+
+#~ msgid "--format"
+#~ msgstr "--format"
+
+#~ msgid "--delimiter=;"
+#~ msgstr "--delimiter=x"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Configuration cfg = ....;\n"
+#~ "new SchemaExport(cfg).create(false, true);]]>"
+#~ msgstr ""
+#~ "Configuration cfg = ....;\n"
+#~ "new SchemaExport(cfg).create(false, true);"
+
+#~ msgid "hibernate.connection.url"
+#~ msgstr "hibernate.connection.url"
+
+#~ msgid "hibernate.connection.username"
+#~ msgstr "hibernate.connection.username"
+
+#~ msgid "hibernate.connection.password"
+#~ msgstr "hibernate.connection.password"
+
+#~ msgid "hibernate.dialect"
+#~ msgstr "hibernate.dialect"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<target name=\"schemaexport\">\n"
+#~ " <taskdef name=\"schemaexport\"\n"
+#~ "
classname=\"org.hibernate.tool.hbm2ddl.SchemaExportTask\"\n"
+#~ " classpathref=\"class.path\"/>\n"
+#~ " \n"
+#~ " <schemaexport\n"
+#~ " properties=\"hibernate.properties\"\n"
+#~ " quiet=\"no\"\n"
+#~ " text=\"no\"\n"
+#~ " drop=\"no\"\n"
+#~ " delimiter=\";\"\n"
+#~ " output=\"schema-export.sql\">\n"
+#~ " <fileset dir=\"src\">\n"
+#~ " <include name=\"**/*.hbm.xml\"/>\n"
+#~ " </fileset>\n"
+#~ " </schemaexport>\n"
+#~ "</target>]]>"
+#~ msgstr ""
+#~ "<target name=\"schemaexport\">\n"
+#~ " <taskdef name=\"schemaexport\"\n"
+#~ "
classname=\"org.hibernate.tool.hbm2ddl.SchemaExportTask\"\n"
+#~ " classpathref=\"class.path\"/>\n"
+#~ " \n"
+#~ " <schemaexport\n"
+#~ " properties=\"hibernate.properties\"\n"
+#~ " quiet=\"no\"\n"
+#~ " text=\"no\"\n"
+#~ " drop=\"no\"\n"
+#~ " delimiter=\";\"\n"
+#~ " output=\"schema-export.sql\">\n"
+#~ " <fileset dir=\"src\">\n"
+#~ " <include name=\"**/*.hbm.xml\"/>\n"
+#~ " </fileset>\n"
+#~ " </schemaexport>\n"
+#~ "</target>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Configuration cfg = ....;\n"
+#~ "new SchemaUpdate(cfg).execute(false);]]>"
+#~ msgstr ""
+#~ "Configuration cfg = ....;\n"
+#~ "new SchemaUpdate(cfg).execute(false);"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<target name=\"schemaupdate\">\n"
+#~ " <taskdef name=\"schemaupdate\"\n"
+#~ "
classname=\"org.hibernate.tool.hbm2ddl.SchemaUpdateTask\"\n"
+#~ " classpathref=\"class.path\"/>\n"
+#~ " \n"
+#~ " <schemaupdate\n"
+#~ " properties=\"hibernate.properties\"\n"
+#~ " quiet=\"no\">\n"
+#~ " <fileset dir=\"src\">\n"
+#~ " <include name=\"**/*.hbm.xml\"/>\n"
+#~ " </fileset>\n"
+#~ " </schemaupdate>\n"
+#~ "</target>]]>"
+#~ msgstr ""
+#~ "<target name=\"schemaupdate\">\n"
+#~ " <taskdef name=\"schemaupdate\"\n"
+#~ "
classname=\"org.hibernate.tool.hbm2ddl.SchemaUpdateTask\"\n"
+#~ " classpathref=\"class.path\"/>\n"
+#~ " \n"
+#~ " <schemaupdate\n"
+#~ " properties=\"hibernate.properties\"\n"
+#~ " quiet=\"no\">\n"
+#~ " <fileset dir=\"src\">\n"
+#~ " <include name=\"**/*.hbm.xml\"/>\n"
+#~ " </fileset>\n"
+#~ " </schemaupdate>\n"
+#~ "</target>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Configuration cfg = ....;\n"
+#~ "new SchemaValidator(cfg).validate();]]>"
+#~ msgstr ""
+#~ "Configuration cfg = ....;\n"
+#~ "new SchemaValidator(cfg).validate();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<target name=\"schemavalidate\">\n"
+#~ " <taskdef name=\"schemavalidator\"\n"
+#~ "
classname=\"org.hibernate.tool.hbm2ddl.SchemaValidatorTask\"\n"
+#~ " classpathref=\"class.path\"/>\n"
+#~ " \n"
+#~ " <schemavalidator\n"
+#~ " properties=\"hibernate.properties\">\n"
+#~ " <fileset dir=\"src\">\n"
+#~ " <include name=\"**/*.hbm.xml\"/>\n"
+#~ " </fileset>\n"
+#~ " </schemavalidator>\n"
+#~ "</target>]]>"
+#~ msgstr ""
+#~ "<target name=\"schemavalidate\">\n"
+#~ " <taskdef name=\"schemavalidator\"\n"
+#~ "
classname=\"org.hibernate.tool.hbm2ddl.SchemaValidatorTask\"\n"
+#~ " classpathref=\"class.path\"/>\n"
+#~ " \n"
+#~ " <schemavalidator\n"
+#~ " properties=\"hibernate.properties\">\n"
+#~ " <fileset dir=\"src\">\n"
+#~ " <include name=\"**/*.hbm.xml\"/>\n"
+#~ " </fileset>\n"
+#~ " </schemaupdate>\n"
+#~ "</target>"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/transactions.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/transactions.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/transactions.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,24 +1,25 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-23T01:43:45\n"
+"PO-Revision-Date: 2010-01-13 11:23+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: transactions.xml:29
#, fuzzy, no-c-format
msgid "Transactions and Concurrency"
msgstr "トランザクションと並行性"
#. Tag: para
-#: transactions.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The most important point about Hibernate and concurrency control is that it "
"is easy to understand. Hibernate directly uses JDBC connections and JTA "
@@ -26,14 +27,14 @@
"that you spend some time with the JDBC, ANSI, and transaction isolation "
"specification of your database management system."
msgstr ""
-"Hibernateと同時実行制御について最も重要な点は、容易に理解できることです。 "
-"Hibernateは新たなロックの振る舞いを追加しておらず、直接JDBCコネクションとJTA"
-"リソースを使用します。 JDBC、ANSI、およびデータベース管理システム(DBMS)のト"
-"ランザクション分離の仕様を 少し時間をかけて勉強することを強く推奨します。"
+"Hibernate と同時実行制御について最も重要な点は、容易に理解できることです。 "
+"Hibernate は新たなロックの振る舞いを追加しておらず、直接 JDBC コネクションと "
+"JTA リソースを使用します。 JDBC 、 ANSI 、およびデータベース管理システム"
+"(DBMS)のトランザクション分離の仕様を少し時間をかけて勉強することを強く推奨"
+"します。"
#. Tag: para
-#: transactions.xml:38
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate does not lock objects in memory. Your application can expect the "
"behavior as defined by the isolation level of your database transactions. "
@@ -41,15 +42,14 @@
"cache, Hibernate provides repeatable reads for lookup by identifier and "
"entity queries and not reporting queries that return scalar values."
msgstr ""
-"Hibernateはメモリ内のオブジェクトをロックしません。 アプリケーションは、デー"
-"タベーストランザクションの分離レベルで 定義した振る舞いを期待できます。 トラ"
-"ンザクションスコープのキャッシュでもある <literal>Session</literal> のお陰"
-"で、 識別子やクエリにより検索したエンティティはリピータブルリードになります "
-"(スカラー値を返すようなレポートクエリは違います)。"
+"Hibernate はメモリ内のオブジェクトをロックしません。アプリケーションは、デー"
+"タベーストランザクションの分離レベルで定義した振る舞いを期待できます。トラン"
+"ザクションスコープのキャッシュでもある <literal>Session</literal> のお陰で、"
+"識別子やクエリにより検索したエンティティはリピータブルリードになります(スカ"
+"ラー値を返すようなレポートクエリは違います)。"
#. Tag: para
-#: transactions.xml:46
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In addition to versioning for automatic optimistic concurrency control, "
"Hibernate also offers, using the <literal>SELECT FOR UPDATE</literal>
"
@@ -57,13 +57,12 @@
"concurrency control and this API are discussed later in this chapter."
msgstr ""
"バージョニングによる自動的な楽観的同時実行制御に加えて、 <literal>SELECT FOR "
-"UPDATE</literal> 文を使用して、 行を悲観的ロックするための(マイナーな)APIも"
-"提供します。 楽観的同時実行制御とこのAPIについては、この章の後のほうで議論し"
-"ます。"
+"UPDATE</literal> 文を使用して、行を悲観的ロックするための(マイナーな) API "
+"も提供します。楽観的同時実行制御とこの API については、この章の後のほうで議論"
+"します。"
#. Tag: para
-#: transactions.xml:53
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The discussion of concurrency control in Hibernate begins with the "
"granularity of <literal>Configuration</literal>,
<literal>SessionFactory</"
@@ -72,32 +71,29 @@
msgstr ""
"データベーストランザクションや長い対話(conversation、ロングトランザクショ"
"ン)だけでなく、
<literal>Configuration</literal>、<literal>SessionFactory</"
-"literal>、および <literal>Session</literal> という粒度でHibernateが行う同時実"
-"行制御の議論を始めます。"
+"literal>、および <literal>Session</literal> という粒度で Hibernate
が行う同時"
+"実行制御の議論を始めます。"
#. Tag: title
-#: transactions.xml:60
#, no-c-format
msgid "Session and transaction scopes"
-msgstr "sessionスコープとtransactionスコープ"
+msgstr "session スコープと transaction スコープ"
#. Tag: para
-#: transactions.xml:62
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <literal>SessionFactory</literal> is an expensive-to-create,
threadsafe "
"object, intended to be shared by all application threads. It is created "
"once, usually on application startup, from a
<literal>Configuration</"
"literal> instance."
msgstr ""
-"<literal>SessionFactory</literal> は生成することが高価で、 スレッドセーフなオ"
-"ブジェクトです。 よって、アプリケーションのすべてのスレッドで共有すべきで"
-"す。 通常、アプリケーションの起動時に、 <literal>Configuration</literal> イン"
-"スタンスから1度だけ生成します。"
+"<literal>SessionFactory</literal> は生成することが高価で、スレッドセーフなオ"
+"ブジェクトです。よって、アプリケーションのすべてのスレッドで共有すべきです。"
+"通常、アプリケーションの起動時に、 <literal>Configuration</literal> インスタ"
+"ンスから1度だけ生成します。"
#. Tag: para
-#: transactions.xml:68
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <literal>Session</literal> is an inexpensive, non-threadsafe object
that "
"should be used once and then discarded for: a single request, a conversation
"
@@ -106,15 +102,14 @@
"unless it is needed. It will not consume any resources until used."
msgstr ""
"<literal>Session</literal> は高価ではなく、スレッドセーフなオブジェクトでもあ"
-"りません。 よって、1つの要求や1つの対話、1つの作業単位(unit of work)に対"
-"して1度だけ使い、 その後で捨てるべきです。 <literal>Session</literal> は必要"
+"りません。よって、1つの要求や1つの対話、1つの作業単位(unit of work)に対"
+"して1度だけ使い、その後で捨てるべきです。 <literal>Session</literal> は必要"
"になるまで、 JDBC <literal>Connection</literal>(もしくは "
-"<literal>DataSource</literal>)を獲得しません。 ゆえに、実際に使用するときま"
-"でリソースを消費しません。"
+"<literal>DataSource</literal>)を獲得しません。ゆえに、実際に使用するときまで"
+"リソースを消費しません。"
#. Tag: para
-#: transactions.xml:76
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In order to reduce lock contention in the database, a database transaction "
"has to be as short as possible. Long database transactions will prevent your
"
@@ -122,16 +117,15 @@
"that you hold a database transaction open during user think time until the "
"unit of work is complete."
msgstr ""
-"この状況を完了させるために、 データベーストランザクションについても考えなけれ"
-"ばなりません。 データベース内のロックの競合を少なくするために、 データベース"
-"トランザクションは可能な限り短くするべきです。 長いデータベーストランザクショ"
-"ンは、アプリケーションの高い並列実行性を阻害します。 ゆえに、ユーザーが考えて"
-"いる間(作業単位が完了するまで)データベーストランザクションを 開いたままにす"
-"るのは、たいていの場合よい設計とはいえません。"
+"この状況を完了させるために、データベーストランザクションについても考えなけれ"
+"ばなりません。データベース内のロックの競合を少なくするために、データベースト"
+"ランザクションは可能な限り短くするべきです。長いデータベーストランザクション"
+"は、アプリケーションの高い並列実行性を阻害します。ゆえに、ユーザーが考えてい"
+"る間(作業単位が完了するまで)データベーストランザクションを開いたままにする"
+"のは、たいていの場合よい設計とはいえません。"
#. Tag: para
-#: transactions.xml:84
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"What is the scope of a unit of work? Can a single Hibernate "
"<literal>Session</literal> span several database transactions, or is
this a "
@@ -139,20 +133,18 @@
"<literal>Session</literal> and how do you demarcate the database
transaction "
"boundaries? These questions are addressed in the following sections."
msgstr ""
-"作業単位というスコープとは何でしょうか? 1つのHibernate <literal>Session</"
-"literal> は、 いくつかのデータベーストランザクションをまたがることができるで"
-"しょうか? または、スコープと一対一の関係でしょうか? いつ <literal>Session</"
-"literal> を開き、閉じるべきでしょうか? そして、データベーストランザクション"
-"境界をどのように分けるのでしょうか?"
+"作業単位というスコープとは何でしょうか?1つの Hibernate <literal>Session</"
+"literal> は、いくつかのデータベーストランザクションをまたがることができるで"
+"しょうか?または、スコープと一対一の関係でしょうか?いつ <literal>Session</"
+"literal> を開き、閉じるべきでしょうか?そして、データベーストランザクション境"
+"界をどのように分けるのでしょうか?"
#. Tag: title
-#: transactions.xml:92
#, no-c-format
msgid "Unit of work"
msgstr "作業単位(Unit of work)"
#. Tag: para
-#: transactions.xml:94
#, no-c-format
msgid ""
"First, let's define a unit of work. A unit of work is a design pattern "
@@ -162,14 +154,13 @@
"citation> In other words, its a series of operations we wish to carry out
"
"against the database together. Basically, it is a transaction, though "
"fulfilling a unit of work will often span multiple physical database "
-"transactions (see <xref linkend=\"transactions-basics-apptx\"/>).
So really "
+"transactions (see <xref linkend=\"transactions-basics-apptx\" />).
So really "
"we are talking about a more abstract notion of a transaction. The term "
"\"business transaction\" is also sometimes used in lieu of unit of
work."
msgstr ""
#. Tag: para
-#: transactions.xml:111
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Do not use the <emphasis>session-per-operation</emphasis> antipattern:
do "
"not open and close a <literal>Session</literal> for every simple
database "
@@ -185,25 +176,24 @@
"clearly defined unit of work. The latter is also more maintainable and "
"extensible."
msgstr ""
-"1つ目は、<emphasis>session-per-operation</emphasis> アンチパターンを使っては"
-"いけません。 すなわち、1つのスレッドの中で、単純なデータベース呼び出しのたび"
-"に <literal>Session</literal> を開いて、閉じてはいけません! もちろん、データ"
-"ベーストランザクションについても同様です。 アプリケーション中のデータベース呼"
-"び出しは、 計画されたシーケンス(planned sequence)を使い、 アトミックな作業"
-"単位に分類されます。 (1つのSQL文ごとにコミットする自動コミットが、 使われな"
-"いという意味でもあることに注意してください。 自動コミットは、SQLコンソールで"
-"アドホックな作業をする際に使うものです。 Hibernateは直ちに自動コミットモード"
-"を無効にします。 もしくは、アプリケーションサーバーが無効化することを期待しま"
-"す。) データベーストランザクションはオプションではありません。 データベース"
-"とのすべての通信は、データの読み込みであっても、書き込みであっても、 トランザ"
-"クションの中で行わなければなりません。 説明すると、データ読み込みに対して、自"
-"動コミットは避けるべきです。 なぜなら、多数の小さなトランザクションは、明確に"
-"定義された1つの作業単位と比べて、 パフォーマンスがよくなることはありませ"
-"ん。 後者は保守性や拡張性もよりすぐれています。"
+"1つ目は、 <emphasis>session-per-operation</emphasis> アンチパターンを使って"
+"はいけません。すなわち、1つのスレッドの中で、単純なデータベース呼び出しの度"
+"に <literal>Session</literal> を開いて、閉じてはいけません。もちろん、データ"
+"ベーストランザクションについても同様です。アプリケーション中のデータベース呼"
+"び出しは、計画されたシーケンス(planned sequence)を使い、アトミックな作業単"
+"位に分類されます。(1つの SQL 文ごとにコミットする自動コミットが、使われない"
+"という意味でもあることに注意してください。自動コミットは、 SQL コンソールでア"
+"ドホックな作業をする際に使うものです。 Hibernate は直ちに自動コミットモードを"
+"無効にします。もしくは、アプリケーションサーバーが無効化することを期待しま"
+"す。)データベーストランザクションはオプションではありません。データベースと"
+"のすべての通信は、データの読み込みであっても、書き込みであっても、トランザク"
+"ションの中で行わなければなりません。説明すると、データ読み込みに対して、自動"
+"コミットは避けるべきです。なぜなら、多数の小さなトランザクションは、明確に定"
+"義された1つの作業単位と比べて、パフォーマンスがよくなることはありません。後"
+"者は保守性や拡張性もよりすぐれています。"
#. Tag: para
-#: transactions.xml:126
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The most common pattern in a multi-user client/server application is "
"<emphasis>session-per-request</emphasis>. In this model, a request from
the "
@@ -216,20 +206,19 @@
"literal>. The relationship between the two is one-to-one and this model is a
"
"perfect fit for many applications."
msgstr ""
-"マルチユーザーのクライアント/サーバーアプリケーションの中で、 最もよく使われ"
-"るパターンは、<emphasis>session-per-request</emphasis> です。 このモデルの中"
-"では、 クライアントから(Hibernate永続化層が動作する)サーバーへリクエストが"
-"送られ、 新しいHibernate <literal>Session</literal> が開かれます。 そして、こ"
-"の作業単位の中ですべてのデータベース処理が実行されます。 作業が完了した(そし"
+"マルチユーザーのクライアント/サーバーアプリケーションの中で、最もよく使われ"
+"るパターンは、 <emphasis>session-per-request</emphasis> です。このモデルの中"
+"では、クライアントから( Hibernate 永続化層が動作する)サーバーへリクエストが"
+"送られ、新しい Hibernate <literal>Session</literal> が開かれます。そして、こ"
+"の作業単位の中ですべてのデータベース処理が実行されます。作業が完了した(そし"
"て、クライアントへのレスポンスが準備できた)時点で、 session をフラッシュし、"
-"閉じます。 クライアントの要求を処理するために、1つのデータベーストランザク"
-"ションを使用するでしょう。 <literal>Session</literal> を開き、閉じる際に、 "
-"データベーストランザクションを開始し、コミットします。 二つの関係は一対一で"
-"す。 このモデルは多くのアプリケーションに完全に適合します。"
+"閉じます。クライアントの要求を処理するために、1つのデータベーストランザク"
+"ションを使用するでしょう。 <literal>Session</literal> を開き、閉じる際に、"
+"データベーストランザクションを開始し、コミットします。二つの関係は一対一で"
+"す。このモデルは多くのアプリケーションに完全に適合します。"
#. Tag: para
-#: transactions.xml:138
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The challenge lies in the implementation. Hibernate provides built-in "
"management of the \"current session\" to simplify this pattern. Start a
"
@@ -243,38 +232,36 @@
"use the Hibernate <literal>Transaction</literal> API shown later in
this "
"chapter."
msgstr ""
-"以降の実装にチャレンジしてください。 Hibernateは単純なこのパターンのために、"
-"予め組み込まれた 「current session」の管理を提供します。 サーバーリクエストを"
-"処理する際はトランザクションを開始しなければなりません。 そして、レスポンスを"
-"クライアントに送信する前にトランザクションを終わらせます。 好きな方法で実現で"
-"きます。一般的な解決策は <literal>ServletFilter</literal> や サービスメソッド"
-"をポイントカットしてAOPインターセプター、 proxy/interception コンテナです。 "
-"EJBコンテナはEJBセッションビーンをトランザクション境界として アスペクトをクロ"
-"スカットする実装の標準的な方法です(CMTによる宣言的)。 プログラムによるトラ"
-"ンザクション境界を使うと決めた場合、 簡単に使うため、互換性のあるコードにする"
-"ために、 この章の後のほうにあるHibernate <literal>Transaction</literal> APIの"
-"ほうがよいです。"
+"以降の実装にチャレンジしてください。 Hibernate は単純なこのパターンのために、"
+"予め組み込まれた \"current session\" の管理を提供します。サーバーリクエストを"
+"処理する際はトランザクションを開始しなければなりません。そして、レスポンスを"
+"クライアントに送信する前にトランザクションを終わらせます。好きな方法で実現で"
+"きます。一般的な解決策は <literal>ServletFilter</literal> やサービスメソッド"
+"をポイントカットして AOP インターセプター、 proxy/interception コンテナで"
+"す。 EJB コンテナは EJB セッション Bean をトランザクション境界としてアスペク"
+"トをクロスカットする実装の標準的な方法です( CMT による宣言的)。プログラムに"
+"よるトランザクション境界を使うと決めた場合、簡単に使うため、互換性のあるコー"
+"ドにするために、この章の後のほうにある Hibernate <literal>Transaction</"
+"literal> API のほうがよいです。"
#. Tag: para
-#: transactions.xml:150
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Your application code can access a \"current session\" to process the
"
"request by calling
<literal>sessionFactory.getCurrentSession()</literal>. "
"You will always get a <literal>Session</literal> scoped to the current
"
"database transaction. This has to be configured for either resource-local or
"
-"JTA environments, see <xref
linkend=\"architecture-current-session\"/>."
+"JTA environments, see <xref linkend=\"architecture-current-session\"
/>."
msgstr ""
-"アプリケーションのコードは、必要なときにどこでも、何回でも、 単に "
-"<literal>sessionFactory.getCurrentSession()</literal> を呼び出すだけで
「現在"
-"のセッション」にアクセスできます。 現在のデータベーストランザクションへの "
-"<literal>セッション</literal> を常に取得します。 リソース・ローカルな環境、も"
-"しくはJTA環境を構成しなければなりません (<xref linkend=\"architecture-"
+"アプリケーションのコードは、必要なときにどこでも、何回でも、単に "
+"<literal>sessionFactory.getCurrentSession()</literal>
を呼び出すだけで「現在"
+"のセッション」にアクセスできます。現在のデータベーストランザクションへの "
+"<literal>セッション</literal> を常に取得します。リソースローカルな環境、もし"
+"くは JTA 環境を構成しなければなりません (<xref linkend=\"architecture-"
"current-session\"/> を参照してください)。"
#. Tag: para
-#: transactions.xml:158
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can extend the scope of a <literal>Session</literal> and database
"
"transaction until the \"view has been rendered\". This is especially
useful "
@@ -287,24 +274,22 @@
"examples relating to this <emphasis>Open Session in View</emphasis>
pattern."
msgstr ""
"ときどき、「ビューを描画する」まで <literal>セッション</literal> とデータベー"
-"ストランザクションのスコープを拡張すると便利なことがあります。 これは、要求の"
-"処理と描画のフェーズを分けている サーブレットアプリケーションにおいて特に役立"
-"ちます。 独自のインターセプタを実装すれば、 ビューを描画するまでデータベース"
-"トランザクションを拡張するのは簡単です。 しかし、コンテナ管理トランザクション"
-"のEJBに頼る場合は、簡単にはできません。 なぜなら、ビューの描画を開始する前"
-"に、EJBのメソッドがリターンした際に、 トランザクションが完了するためです。 こ"
-"の <emphasis>Open Session in View</emphasis> パターンに関連するヒントと例につ"
-"いては、 HibernateのWebサイトやフォーラムを参照してください。"
+"ストランザクションのスコープを拡張すると便利なことがあります。これは、要求の"
+"処理と描画のフェーズを分けているサーブレットアプリケーションにおいて特に役立"
+"ちます。独自のインターセプタを実装すれば、ビューを描画するまでデータベースト"
+"ランザクションを拡張するのは簡単です。しかし、コンテナ管理トランザクションの "
+"EJB に頼る場合は、簡単にはできません。なぜなら、ビューの描画を開始する前に、 "
+"EJB のメソッドがリターンした際に、トランザクションが完了するためです。この "
+"<emphasis>Open Session in View</emphasis> パターンに関連するヒントと例につい"
+"ては、 Hibernate の Web サイトやフォーラムを参照してください。"
#. Tag: title
-#: transactions.xml:173
#, no-c-format
msgid "Long conversations"
msgstr "長い対話"
#. Tag: para
-#: transactions.xml:175
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The session-per-request pattern is not the only way of designing units of "
"work. Many business processes require a whole series of interactions with "
@@ -312,51 +297,47 @@
"applications, it is not acceptable for a database transaction to span a user
"
"interaction. Consider the following example:"
msgstr ""
-"session-per-requestパターンは、作業単位を設計する際に役立つ考えというだけでは"
-"ありません。 多くのビジネスプロセスは、ユーザーとの一連の相互作用全体を要求し"
-"ます。 その相互作用には、データベースアクセスが含まれます。 Webとエンタープラ"
-"イズアプリケーションでは、データベーストランザクションが ユーザとの相互作用に"
-"まで渡ることは許されません。 次の例をよく考えてみてください。"
+"session-per-request パターンは、作業単位を設計する際に役立つ考えというだけで"
+"はありません。多くのビジネスプロセスは、ユーザーとの一連の相互作用全体を要求"
+"します。その相互作用には、データベースアクセスが含まれます。 Web とエンタープ"
+"ライズアプリケーションでは、データベーストランザクションがユーザーとの相互作"
+"用にまで渡ることは許されません。次の例をよく考えてみてください: "
#. Tag: para
-#: transactions.xml:185
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The first screen of a dialog opens. The data seen by the user has been "
"loaded in a particular <literal>Session</literal> and database
transaction. "
"The user is free to modify the objects."
msgstr ""
"ダイアログの最初の画面が開き、個々の <literal>Session</literal> とデータベー"
-"ストランザクションの中でロードされたデータをユーザーに見せます。 ユーザーはオ"
+"ストランザクションの中でロードされたデータをユーザーに見せます。ユーザーはオ"
"ブジェクトを自由に修正できます。"
#. Tag: para
-#: transactions.xml:192
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The user clicks \"Save\" after 5 minutes and expects their modifications
to "
"be made persistent. The user also expects that they were the only person "
"editing this information and that no conflicting modification has occurred."
msgstr ""
-"5分後にユーザーは「Save」をクリックし、修正が永続化されるのを期待します。 ま"
-"た、この情報を編集したのは自分1人だけで、 修正のコンフリクトは発生しないと期"
+"5分後にユーザーは \"Save\" をクリックし、修正が永続化されるのを期待します。ま"
+"た、この情報を編集したのは自分1人だけで、修正のコンフリクトは発生しないと期"
"待します。"
#. Tag: para
-#: transactions.xml:200
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"From the point of view of the user, we call this unit of work a long-running
"
"<emphasis>conversation</emphasis> or <emphasis>application
transaction</"
"emphasis>. There are many ways to implement this in your application."
msgstr ""
"この作業単位を(ユーザーの視点で)長期の <emphasis>対話</emphasis> (もしく"
-"は、<emphasis>アプリケーショントランザクション</emphasis> )と呼びます。 アプ"
+"は、<emphasis>アプリケーショントランザクション</emphasis> )と呼びます。アプ"
"リケーションにこれを実装する方法はたくさんあります。"
#. Tag: para
-#: transactions.xml:206
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A first naive implementation might keep the <literal>Session</literal>
and "
"database transaction open during user think time, with locks held in the "
@@ -364,16 +345,15 @@
"atomicity. This is an anti-pattern, since lock contention would not allow "
"the application to scale with the number of concurrent users."
msgstr ""
-"最初に思いつく実装は、ユーザーが考えている間、<literal>Session</literal> と"
-"データベーストランザクションを開いたままにしておくことです。 同時に修正され"
-"ず、分離と原子性が保証されるように、 データベース内のロックは保持したままにし"
-"ます。 もちろん、これはアンチパターンです。 なぜなら、ロックの競合が発生する"
-"と、 アプリケーションが同時ユーザー数に応じてスケールアップできなくなるからで"
+"最初に思いつく実装は、ユーザーが考えている間、 <literal>Session</literal> と"
+"データベーストランザクションを開いたままにしておくことです。同時に修正され"
+"ず、分離と原子性が保証されるように、データベース内のロックは保持したままにし"
+"ます。もちろん、これはアンチパターンです。なぜなら、ロックの競合が発生する"
+"と、アプリケーションが同時ユーザー数に応じてスケールアップできなくなるからで"
"す。"
#. Tag: para
-#: transactions.xml:214
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You have to use several database transactions to implement the conversation.
"
"In this case, maintaining isolation of business processes becomes the "
@@ -384,31 +364,29 @@
"several request/response cycles). This is easier to implement than it might "
"sound, especially if you utilize some of Hibernate's features:"
msgstr ""
-"明らかに、対話を実装するためには、 いくつかのデータベーストランザクションを使"
-"用するべきです。 この場合、ビジネスプロセスの分離を維持することは、 アプリ"
-"ケーション層の責務の1つになります。 1つの対話は、 通常いくつかのデータベー"
-"ストランザクションに及びます。 データベーストランザクションの1つのみ(最後の"
-"1つ)が更新したデータを保存し、 他はデータを読むだけであれば、それはアトミッ"
-"クです (例えば、いくつかの要求/応答を繰り返すウィザード形式のダイアロ"
-"グ)。 これは聞くより、実装したほうが簡単です。 Hibernateの機能を使うのであれ"
-"ば、特に簡単です。"
+"明らかに、対話を実装するためには、いくつかのデータベーストランザクションを使"
+"用するべきです。この場合、ビジネスプロセスの分離を維持することは、アプリケー"
+"ション層の責務の1つになります。1つの対話は、通常いくつかのデータベーストラ"
+"ンザクションに及びます。データベーストランザクションの1つのみ(最後の1つ)"
+"が更新したデータを保存し、他はデータを読むだけであれば、それはアトミックです"
+"(例えば、いくつかの要求/応答を繰り返すウィザード形式のダイアログ)。これは"
+"聞くより、実装したほうが簡単です。 Hibernate の機能を使うのであれば、特に簡単"
+"です:"
#. Tag: para
-#: transactions.xml:227
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Automatic Versioning</emphasis>: Hibernate can perform
automatic "
"optimistic concurrency control for you. It can automatically detect if a "
"concurrent modification occurred during user think time. Check for this at "
"the end of the conversation."
msgstr ""
-"<emphasis>自動バージョニング</emphasis> - Hibernateは自動的に楽観的同時実行制"
-"御ができます。 ユーザーが考えている間に同時に修正がおきた場合、自動的に検出で"
-"きます。 通常、対話の終了時にチェックするだけです。"
+"<emphasis>自動バージョニング</emphasis> - Hibernate は自動的に楽観的同時実行"
+"制御ができます。ユーザーが考えている間に同時に修正がおきた場合、自動的に検出"
+"できます。通常、対話の終了時にチェックするだけです。"
#. Tag: para
-#: transactions.xml:235
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Detached Objects</emphasis>: if you decide to use the "
"<emphasis>session-per-request</emphasis> pattern, all loaded instances
will "
@@ -418,16 +396,15 @@
"versioning is used to isolate concurrent modifications."
msgstr ""
"<emphasis>分離(Detached)オブジェクト</emphasis> - すでに議論した "
-"<emphasis>session-per-request</emphasis> パターンを使うと決定した場合、 ロー"
-"ドされたすべてのインスタンスは、ユーザが考えている間は、 セッションから分離さ"
-"れた状態になります。 オブジェクトをセッションに再追加し、修正を永続化できま"
-"す。 これを <emphasis>session-per-request-with-detached-objects</emphasis>
パ"
-"ターンと呼びます。 自動バージョニングを使うことで、同時に行われる修正を分離で"
+"<emphasis>session-per-request</emphasis> パターンを使うと決定した場合、ロード"
+"されたすべてのインスタンスは、ユーザーが考えている間は、セッションから分離さ"
+"れた状態になります。オブジェクトをセッションに再追加し、修正を永続化できま"
+"す。これを <emphasis>session-per-request-with-detached-objects</emphasis>
パ"
+"ターンと呼びます。自動バージョニングを使うことで、同時に行われる修正を分離で"
"きます。"
#. Tag: para
-#: transactions.xml:245
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<emphasis>Extended (or Long) Session</emphasis>: the Hibernate "
"<literal>Session</literal> can be disconnected from the underlying JDBC
"
@@ -438,18 +415,17 @@
"<literal>Session</literal> will not be allowed to be flushed
automatically, "
"but explicitly."
msgstr ""
-"<emphasis>拡張(もしくは、長い)セッション</emphasis> - Hibernateの "
-"<literal>Session</literal> は、 データベーストランザクションをコミットした"
-"後、 裏で結びついているJDBCコネクションを切断できます。 そして、クライアント"
-"からの新しい要求が発生した際に、再接続できます。 このパターンは、"
+"<emphasis>拡張(もしくは、長い)セッション</emphasis> - Hibernate の "
+"<literal>Session</literal> は、データベーストランザクションをコミットした後、"
+"裏で結びついている JDBC コネクションを切断できます。そして、クライアントから"
+"の新しい要求が発生した際に、再接続できます。このパターンは、 "
"<emphasis>session-per-conversation</emphasis> という名で知られており、オブ"
-"ジェクトをセッションへ再追加することさえ不要にします。 自動バージョニングを使"
-"うことで、同時に行われる修正を分離できます。 通常 <literal>Session</literal> "
-"を自動的にフラッシュさせず、 明示的にフラッシュします。"
+"ジェクトをセッションへ再追加することさえ不要にします。自動バージョニングを使"
+"うことで、同時に行われる修正を分離できます。通常 <literal>Session</literal> "
+"を自動的にフラッシュさせず、明示的にフラッシュします。"
#. Tag: para
-#: transactions.xml:258
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Both <emphasis>session-per-request-with-detached-objects</emphasis> and
"
"<emphasis>session-per-conversation</emphasis> have advantages and
"
@@ -457,57 +433,50 @@
"the context of optimistic concurrency control."
msgstr ""
"<emphasis>session-per-request-with-detached-objects</emphasis> と
"
-"<emphasis>session-per-conversation</emphasis> の2つは、 利点と欠点を持ってい"
-"ます。 これについては、この章の後のほうで、楽観的同時実行制御の文脈の中で議論"
+"<emphasis>session-per-conversation</emphasis> の2つは、利点と欠点を持ってい"
+"ます。これについては、この章の後のほうで、楽観的同時実行制御の文脈の中で議論"
"します。"
#. Tag: title
-#: transactions.xml:267
#, no-c-format
msgid "Considering object identity"
msgstr "オブジェクト識別子を考える"
#. Tag: para
-#: transactions.xml:269
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An application can concurrently access the same persistent state in two "
"different <literal>Session</literal>s. However, an instance of a
persistent "
"class is never shared between two <literal>Session</literal> instances.
It "
"is for this reason that there are two different notions of identity:"
msgstr ""
-"アプリケーションは、2つの異なる <literal>Session</literal> から 同じ永続状態"
-"に同時にアクセスできます。 しかし、2つの <literal>Session</literal> インスタ"
-"ンスが 永続性クラスの1つのインスタンスを共有することはできません。 ゆえに、"
-"識別子には2つの異なる概念があるということになります。"
+"アプリケーションは、2つの異なる <literal>Session</literal> から同じ永続状態"
+"に同時にアクセスできます。しかし、2つの <literal>Session</literal> インスタ"
+"ンスが永続性クラスの1つのインスタンスを共有することはできません。ゆえに、識"
+"別子には2つの異なる概念があるということになります。"
#. Tag: term
-#: transactions.xml:278
#, no-c-format
msgid "Database Identity"
msgstr "データベース識別子"
-#. Tag: literal
-#: transactions.xml:281
+#. Tag: para
#, no-c-format
-msgid "foo.getId().equals( bar.getId() )"
-msgstr "foo.getId().equals( bar.getId() )"
+msgid "<literal>foo.getId().equals( bar.getId() )</literal>"
+msgstr "<literal>foo.getId().equals( bar.getId() )</literal>"
#. Tag: term
-#: transactions.xml:286
#, no-c-format
msgid "JVM Identity"
-msgstr "JVM識別子"
+msgstr "JVM 識別子"
-#. Tag: literal
-#: transactions.xml:289
+#. Tag: para
#, no-c-format
-msgid "foo==bar"
-msgstr "foo==bar"
+msgid "<literal>foo==bar</literal>"
+msgstr ""
#. Tag: para
-#: transactions.xml:295
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For objects attached to a <emphasis>particular</emphasis>
<literal>Session</"
"literal> (i.e., in the scope of a <literal>Session</literal>), the
two "
@@ -518,18 +487,17 @@
"resolved using an optimistic approach and automatic versioning at flush/"
"commit time."
msgstr ""
-"<emphasis>個々の</emphasis><literal>Session</literal>
に追加されたオブジェク"
+"<emphasis>特定の</emphasis><literal>Session</literal>
に追加されたオブジェク"
"トにとって (すなわち、1つの <literal>Session</literal> のスコープの中で"
-"は)、2つの概念は同じです。 データベース同一性とJVM同一性が一致することを、"
-"Hibernateが保証します。 しかし、アプリケーションが2つの異なるセッションから "
-"「同じ」(永続性識別子の)ビジネスオブジェクトに同時にアクセスする限り、 2つ"
-"のインスタンスは実際に(JVM識別子が)「異なり」ます。 楽観的アプローチによっ"
-"て、(自動バージョニングの)フラッシュ/コミット時に コンフリクトが解決されま"
-"す。"
+"は) 、2つの概念は同じです。データベース同一性と JVM 同一性が一致すること"
+"を、 Hibernate が保証します。しかし、アプリケーションが2つの異なるセッション"
+"から「同じ」(永続性識別子の)ビジネスオブジェクトに同時にアクセスする限り、"
+"2つのインスタンスは実際に( JVM 識別子が)「異なり」ます。楽観的アプローチに"
+"よって、 (自動バージョニングの) フラッシュ/コミット時にコンフリクトが解決"
+"されます。"
#. Tag: para
-#: transactions.xml:304
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This approach leaves Hibernate and the database to worry about concurrency. "
"It also provides the best scalability, since guaranteeing identity in
single-"
@@ -539,17 +507,16 @@
"<literal>Session</literal>. Within a
<literal>Session</literal> the "
"application can safely use <literal>==</literal> to compare
objects."
msgstr ""
-"このアプローチでは、Hibernateとデータベースに同時実行についての心配が残りま"
-"す。 一方で、最高のスケーラビリティが提供されます。 なぜなら、1スレッドの作"
-"業単位の中で一意性が保証されれば、 高価なロックや同期化が不要になるためで"
-"す。 <literal>Session</literal> ごとに1つのスレッドを貼り付ける限り、 アプリ"
-"ケーションはビジネスオブジェクトをsynchronizeする必要はありません。 "
+"このアプローチでは、 Hibernate とデータベースに同時実行についての心配が残りま"
+"す。一方で、最高のスケーラビリティが提供されます。なぜなら、1スレッドの作業"
+"単位の中で一意性が保証されれば、高価なロックや同期化が不要になるためです。 "
+"<literal>Session</literal> ごとに1つのスレッドを貼り付ける限り、アプリケー"
+"ションはビジネスオブジェクトを synchronize する必要はありません。 "
"<literal>Session</literal> 内では、アプリケーションはオブジェクトを比較するた"
"めに、 <literal>==</literal> を安全に使用できます。"
#. Tag: para
-#: transactions.xml:313
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"However, an application that uses <literal>==</literal> outside of a
"
"<literal>Session</literal> might produce unexpected results. This might
"
@@ -572,33 +539,31 @@
"that this is not a Hibernate issue, but simply how Java object identity and "
"equality has to be implemented."
msgstr ""
-"けれども、<literal>Session</literal> の外で <literal>==</literal>
を使うアプ"
-"リケーションは、予期しない結果に遭遇します。 これは予期しない場所で起こりえま"
-"す。 例えば、2つの分離インスタンスを同じ <literal>Set</literal> に putしたと"
-"きなどです。 両方とも同じデータベース識別子を持ちます(すなわち、同じ行を表し"
-"ます)。 しかし、分離状態のインスタンスのJVM識別子は当然保証されません。 開発"
+"けれども、 <literal>Session</literal> の外で <literal>==</literal>
を使うアプ"
+"リケーションは、予期しない結果に遭遇します。これは予期しない場所で起こりえま"
+"す。例えば、2つの分離インスタンスを同じ <literal>Set</literal> に put したと"
+"きなどです。両方とも同じデータベース識別子を持ちます(すなわち、同じ行を表し"
+"ます)。しかし、分離状態のインスタンスの JVM 識別子は当然保証されません。開発"
"者は、永続性クラスの <literal>equals()</literal> と
<literal>hashCode()</"
"literal> メソッドをオーバーライドし、オブジェクト等価性の概念を実装すべきで"
-"す。 警告が1つあります。等価性の実装にデータベース識別子を使わないでくださ"
-"い。 ユニークな(普通は不変の)属性の組み合わせであるビジネスキーを使ってくだ"
-"さい。 もし、一時オブジェクトが永続化された場合、データベース識別子が変わりま"
-"す。 一時オブジェクトを(通常分離インスタンスと共に) <literal>Set</literal> "
-"に保持する場合、ハッシュコードが変わるということは、<literal>Set</literal> の"
-"契約を破るということです。 ビジネスキーのための属性は、データベースの主キーほ"
-"ど安定すべきではないです。 オブジェクトが同じ <literal>Set</literal> の中にい"
-"る間だけ、安定を保証すべきです。 この問題のより徹底的な議論は、HibernateのWeb"
-"サイトを参照してください。 また、これはHibernateの問題ではなく、単にJavaオブ"
-"ジェクトの識別子や等価性を どのように実装すべきかということです。"
+"す。警告が1つあります。等価性の実装にデータベース識別子を使わないでくださ"
+"い。ユニークな(普通は不変の)属性の組み合わせであるビジネスキーを使ってくだ"
+"さい。もし、一時オブジェクトが永続化された場合、データベース識別子が変わりま"
+"す。一時オブジェクトを(通常分離インスタンスと共に) <literal>Set</literal> "
+"に保持する場合、ハッシュコードが変わるということは、 <literal>Set</literal> "
+"の契約を破るということです。ビジネスキーのための属性は、データベースの主キー"
+"ほど安定すべきではないです。オブジェクトが同じ <literal>Set</literal> の中に"
+"いる間だけ、安定を保証すべきです。この問題のより徹底的な議論は、 Hibernate "
+"の Web サイトを参照してください。また、これは Hibernate の問題ではなく、単に "
+"Java オブジェクトの識別子や等価性をどのように実装すべきかということです。"
#. Tag: title
-#: transactions.xml:334
#, no-c-format
msgid "Common issues"
msgstr "一般的な問題"
#. Tag: para
-#: transactions.xml:336
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Do not use the anti-patterns
<emphasis>session-per-user-session</emphasis> "
"or <emphasis>session-per-application</emphasis> (there are, however,
rare "
@@ -607,13 +572,12 @@
"implications before making a design decision:"
msgstr ""
"<emphasis>session-per-user-session</emphasis> と
<emphasis>session-per-"
-"application</emphasis> アンチパターン は使ってはいけません(もちろん、まれに"
-"例外があります)。 注意:下記の問題のいくつかは、推奨されるパターンとしても出"
-"現します。 設計を決定する前に、裏の意味を理解するようにしてください。"
+"application</emphasis> アンチパターンは使ってはいけません(もちろん、まれに例"
+"外があります)。注記:下記の問題のいくつかは、推奨されるパターンとしても出現"
+"します。設計を決定する前に、裏の意味を理解するようにしてください。"
#. Tag: para
-#: transactions.xml:345
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A <literal>Session</literal> is not thread-safe. Things that work
"
"concurrently, like HTTP requests, session beans, or Swing workers, will "
@@ -624,18 +588,17 @@
"that clicks reload fast enough can use the same
<literal>Session</literal> "
"in two concurrently running threads."
msgstr ""
-"<literal>Session</literal> はスレッドセーフではありません。 HTTPリクエスト、"
-"セッションBean、Swingワーカーのように、 同時実行が可能なものが "
-"<literal>Session</literal> インスタンスを共有すると、 競合状態を引き起こしま"
-"す。 (後で議論する)<literal>HttpSession</literal> の中で Hibernate "
-"<literal>Session</literal> を保持する場合、 HttpSessionへのアクセスを同期化す"
-"ることを考慮すべきです。 さもなければ、ユーザーが十分早くリロードをクリックす"
-"ると、 同時に走る2つのスレッドの中で、同じ <literal>Session</literal> が使わ"
-"れます。"
+"<literal>Session</literal> はスレッドセーフではありません。 HTTP リクエスト、"
+"セッション Bean 、 Swing ワーカーのように、同時実行が可能なものが "
+"<literal>Session</literal> インスタンスを共有すると、競合状態を引き起こしま"
+"す。(後で議論する) <literal>HttpSession</literal> の中で Hibernate "
+"<literal>Session</literal> を保持する場合、 HttpSession へのアクセスを同期化"
+"することを考慮すべきです。さもなければ、ユーザーが十分早くリロードをクリック"
+"すると、同時に走る2つのスレッドの中で、同じ <literal>Session</literal> が使"
+"われます。"
#. Tag: para
-#: transactions.xml:356
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An exception thrown by Hibernate means you have to rollback your database "
"transaction and close the <literal>Session</literal> immediately (this
is "
@@ -647,18 +610,17 @@
"Usually this is not a problem, because exceptions are not recoverable and "
"you will have to start over after rollback anyway."
msgstr ""
-"Hibernateが例外を投げた場合は、データベーストランザクションをロールバック"
-"し、 直ちに <literal>Session</literal> を閉じるべきです(詳細を後で議論しま"
-"す)。 <literal>Session</literal> がアプリケーションに結び付けられているので"
-"あれば、 アプリケーションを停止すべきです。 データベーストランザクションを"
-"ロールバックしても、ビジネスオブジェクトは トランザクションを開始したときの状"
-"態に戻りません。 これは、データベースの状態とビジネスオブジェクトは同期してい"
-"ないことを意味します。 通常これは問題になりません。 なぜなら、例外は回復でき"
-"ないからです。 とにかくロールバックした後にやり直すべきです。"
+"Hibernate が例外を投げた場合は、データベーストランザクションをロールバック"
+"し、直ちに <literal>Session</literal> を閉じるべきです (詳細を後で議論しま"
+"す) 。 <literal>Session</literal> がアプリケーションに結び付けられているので"
+"あれば、アプリケーションを停止すべきです。データベーストランザクションをロー"
+"ルバックしても、ビジネスオブジェクトはトランザクションを開始したときの状態に"
+"戻りません。これは、データベースの状態とビジネスオブジェクトは同期していない"
+"ことを意味します。通常これは問題になりません。なぜなら、例外は回復できないか"
+"らです。とにかくロールバックした後にやり直すべきです。"
#. Tag: para
-#: transactions.xml:368
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>Session</literal> caches every object that is in a
persistent "
"state (watched and checked for dirty state by Hibernate). If you keep it "
@@ -666,31 +628,28 @@
"until you get an OutOfMemoryException. One solution is to call
<literal>clear"
"()</literal> and <literal>evict()</literal> to manage the
<literal>Session</"
"literal> cache, but you should consider a Stored Procedure if you need mass
"
-"data operations. Some solutions are shown in <xref
linkend=\"batch\"/>. "
+"data operations. Some solutions are shown in <xref linkend=\"batch\"
/>. "
"Keeping a <literal>Session</literal> open for the duration of a user
session "
"also means a higher probability of stale data."
msgstr ""
-"<literal>Session</literal> は永続(persistent)状態のすべてのオブジェクトを "
-"キャッシュします(Hibernateは監視し、ダーティ状態かチェックします)。 これ"
-"は、長い間セッションを開いたままにするか、 非常に多くのデータをロードし続ける"
-"かした場合は、 OutOfMemoryExceptionが発生するまで無限に大きくなることを意味し"
-"ます。 解決策の1つは、<literal>Session</literal> キャッシュを管理するため"
+"<literal>Session</literal> は永続 (persistent) 状態のすべてのオブジェクトを"
+"キャッシュします( Hibernate は監視し、ダーティ状態かチェックします)。これ"
+"は、長い間セッションを開いたままにするか、非常に多くのデータをロードし続ける"
+"かした場合は、 OutOfMemoryException が発生するまで無限に大きくなることを意味"
+"します。解決策の1つは、<literal>Session</literal> キャッシュを管理するため"
"に、 <literal>clear()</literal> か <literal>evict()</literal>
を呼ぶことで"
-"す。 しかし、大きなデータを処理する必要があるなら、 たぶんストアドプロシー"
-"ジャを考慮するべきでしょう。 いくつかの解決策は、<xref linkend=\"batch\"/> で"
-"紹介されています。 ユーザーセッションの間、<literal>Session</literal> を開い"
-"たままにするということは、 データが新鮮でなくなる確率が高くなることを意味しま"
-"す。"
+"す。しかし、大きなデータを処理する必要があるなら、たぶんストアドプロシージャ"
+"を考慮するべきでしょう。いくつかの解決策は、 <xref linkend=\"batch\"/> で紹介"
+"されています。ユーザーセッションの間、 <literal>Session</literal> を開いたま"
+"まにするということは、データが新鮮でなくなる確率が高くなることを意味します。"
#. Tag: title
-#: transactions.xml:386
#, no-c-format
msgid "Database transaction demarcation"
msgstr "データベーストランザクション境界"
#. Tag: para
-#: transactions.xml:388
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Database, or system, transaction boundaries are always necessary. No "
"communication with the database can occur outside of a database transaction "
@@ -701,18 +660,17 @@
"transactions explicitly. Certainly, a single database transaction is going "
"to perform better than many small transactions, even for reading data."
msgstr ""
-"データベース(もしくはシステム)トランザクションの境界は、常に必要です。 デー"
-"タベーストランザクションの外で、データベースとの通信は起きません (これは自動"
-"コミットモードに慣れている多くの開発者を混乱させるかもしれません)。 読み込む"
-"だけの操作にでも、いつも明確なトランザクション境界を使用してください。 分離レ"
-"ベルとデータベースの能力次第で、これは必要ないかもしれませんが、 常にトランザ"
-"クション境界を明示的に指定しても、マイナス面は全くありません。 確かに、1つの"
-"データベーストランザクションは多数の小さなトランザクションより (データの読み"
-"込みであっても)パフォーマンスがすぐれています。"
+"データベース (もしくはシステム) トランザクションの境界は、常に必要です。"
+"データベーストランザクションの外で、データベースとの通信は起きません (これは"
+"自動コミットモードに慣れている多くの開発者を混乱させるかもしれません) 。読み"
+"込むだけの操作にでも、いつも明確なトランザクション境界を使用してください。分"
+"離レベルとデータベースの能力次第で、これは必要ないかもしれませんが、常にトラ"
+"ンザクション境界を明示的に指定しても、マイナス面は全くありません。確かに、1"
+"つのデータベーストランザクションは多数の小さなトランザクションより (データの"
+"読み込みであっても) パフォーマンスがすぐれています。"
#. Tag: para
-#: transactions.xml:398
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A Hibernate application can run in non-managed (i.e., standalone, simple "
"Web- or Swing applications) and managed J2EE environments. In a non-managed "
@@ -724,20 +682,19 @@
"descriptors of EJB session beans, for example). Programmatic transaction "
"demarcation is then no longer necessary."
msgstr ""
-"J2EE環境に管理されていない状態 (すなわち、スタンドアロン、単純なWebやSwingア"
-"プリケーション)でも、 管理された状態でも、Hibernateアプリケーションを実行で"
-"きます。 管理されていない環境では、Hiberanteがデータベースのコネクションプー"
-"ルを提供します。 アプリケーション開発者は、トランザクション境界を手動で設定し"
-"なければなりません。 言い換えると、データベーストランザクションの開始、コミッ"
-"ト、ロールバックを 開発者自身が設定する必要があるということです。 通常、管理"
-"された環境では、コンテナ管理によるトランザクション(CMT)が提供されます。 例"
-"えば、セッションBeanのデプロイメントディスクリプタで宣言的に定義し、 トランザ"
-"クションを組み立てます。 プログラムによるトランザクション境界はもう必要ありま"
-"せん。"
+"J2EE 環境に管理されていない状態 (すなわち、スタンドアロン、単純な Web や "
+"Swing アプリケーション)でも、管理された状態でも、 Hibernate アプリケーション"
+"を実行できます。管理されていない環境では、 Hiberante がデータベースのコネク"
+"ションプールを提供します。アプリケーション開発者は、トランザクション境界を手"
+"動で設定しなければなりません。言い換えると、データベーストランザクションの開"
+"始、コミット、ロールバックを開発者自身が設定する必要があるということです。通"
+"常、管理された環境では、コンテナ管理によるトランザクション (CMT) が提供され"
+"ます。例えば、セッション Bean のデプロイメントディスクリプタで宣言的に定義"
+"し、トランザクションを組み立てます。プログラムによるトランザクション境界はも"
+"う必要ありません。"
#. Tag: para
-#: transactions.xml:408
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"However, it is often desirable to keep your persistence layer portable "
"between non-managed resource-local environments, and systems that can rely "
@@ -747,155 +704,102 @@
"system of your deployment environment. This API is actually optional, but we
"
"strongly encourage its use unless you are in a CMT session bean."
msgstr ""
-"しかしながら、管理されていないリソース・ローカルな環境と JTAに依存したシステ"
-"ム(CMTではなくBMT)の両方に、 永続化層をポータブルに保つのは、しばしば望まし"
-"いことです。 デプロイ環境のネイティブのトランザクションシステムを呼び出す "
-"<literal>Transaction</literal> というラッパーAPIをHibernateが提供します。 こ"
-"のAPIを使うかは任意ですが、CMTのセッションBeanを使わないのであれば、使うこと"
-"を強く推奨します。"
+"しかしながら、管理されていないリソースローカルな環境と JTA に依存したシステ"
+"ム (CMT ではなく BMT) の両方に、永続化層をポータブルに保つのは、しばしば望"
+"ましいことです。デプロイ環境のネイティブのトランザクションシステムを呼び出す "
+"<literal>Transaction</literal> というラッパー API を Hibernate が提供します。"
+"この API を使うかは任意ですが、 CMT のセッション Bean を使わないのであれば、"
+"使うことを強く推奨します。"
#. Tag: para
-#: transactions.xml:417
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Ending a <literal>Session</literal> usually involves four distinct
phases:"
msgstr ""
-"通常、<literal>Session</literal> 終了は、4つの異なるフェーズを含みます。"
+"通常、 <literal>Session</literal> 終了は、4つの異なるフェーズを含みます:"
#. Tag: para
-#: transactions.xml:423
#, no-c-format
msgid "flush the session"
msgstr "セッションのフラッシュ"
#. Tag: para
-#: transactions.xml:428
#, no-c-format
msgid "commit the transaction"
msgstr "トランザクションのコミット"
#. Tag: para
-#: transactions.xml:433
#, no-c-format
msgid "close the session"
msgstr "セッションのクローズ"
#. Tag: para
-#: transactions.xml:438
#, no-c-format
msgid "handle exceptions"
msgstr "例外のハンドリング"
#. Tag: para
-#: transactions.xml:444
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"We discussed Flushing the session earlier, so we will now have a closer look
"
"at transaction demarcation and exception handling in both managed and non-"
"managed environments."
msgstr ""
-"セッションのフラッシュについては、前のほうですでに議論しました。 管理された環"
-"境と管理されていない環境の両方について、 トランザクション境界と例外ハンドリン"
-"グをもっと詳しく見ていきましょう。"
+"セッションのフラッシュについては、前の方で既に議論しました。管理された環境と"
+"管理されていない環境の両方について、トランザクション境界と例外ハンドリングを"
+"もっと詳しく見ていきましょう。"
#. Tag: title
-#: transactions.xml:451
#, no-c-format
msgid "Non-managed environment"
msgstr "管理されていない環境"
#. Tag: para
-#: transactions.xml:453
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If a Hibernate persistence layer runs in a non-managed environment, database
"
"connections are usually handled by simple (i.e., non-DataSource) connection "
"pools from which Hibernate obtains connections as needed. The session/"
"transaction handling idiom looks like this:"
msgstr ""
-"Hibernate永続化層を管理されていない環境で実装する場合は、 通常単純なコネク"
-"ションプール(すなわちDataSourceではない)によって、 データベースコネクション"
-"を制御します。 Hibernateはそのコネクションプールから必要なコネクションを取得"
-"します。 セッション/トランザクション制御のイディオムは次のようになります。"
+"Hibernate 永続化層を管理されていない環境で実装する場合は、通常単純なコネク"
+"ションプール (すなわち DataSource ではない) によって、データベースコネク"
+"ションを制御します。 Hibernate はそのコネクションプールから必要なコネクション"
+"を取得します。セッション/トランザクション制御のイディオムは次のようになりま"
+"す:"
-#. Tag: programlisting
-#: transactions.xml:460
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[// Non-managed environment idiom\n"
-"Session sess = factory.openSession();\n"
-"Transaction tx = null;\n"
-"try {\n"
-" tx = sess.beginTransaction();\n"
-"\n"
-" // do some work\n"
-" ...\n"
-"\n"
-" tx.commit();\n"
-"}\n"
-"catch (RuntimeException e) {\n"
-" if (tx != null) tx.rollback();\n"
-" throw e; // or display error message\n"
-"}\n"
-"finally {\n"
-" sess.close();\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: transactions.xml:462
-#, fuzzy, no-c-format
-msgid ""
"You do not have to <literal>flush()</literal> the
<literal>Session</literal> "
"explicitly: the call to <literal>commit()</literal> automatically
triggers "
-"the synchronization depending on the <link
linkend=\"objectstate-flushing"
-"\">FlushMode</link> for the session. A call to
<literal>close()</literal> "
+"the synchronization depending on the FlushMode for the session (see <xref
"
+"linkend=\"objectstate-flushing\" />). A call to
<literal>close()</literal> "
"marks the end of a session. The main implication of
<literal>close()</"
"literal> is that the JDBC connection will be relinquished by the session.
"
"This Java code is portable and runs in both non-managed and JTA
environments."
msgstr ""
"明示的に <literal>Session</literal> の
<literal>flush()</literal> を呼び出す"
"べきではなく、 <literal>commit()</literal> を呼び出すことにより、自動的に同期"
-"化処理が実行されます (セッションの <xref linkend=\"objectstate-flushing"
-"\">FlushMode</xref> に依存している)。 <literal>close()</literal>
を呼び出す"
-"ことにより、セッションの終わりを明確にします。 <literal>close()</literal> が"
-"暗黙的に行う主なことは、 セッションがJDBCコネクションを開放することです。 上"
-"記のJavaコードはポータブルであり、管理されていない環境とJTA環境の両方で実行で"
+"化処理が実行されます (セッションの <xref linkend=\"objectstate-flushing\"/> "
+"FlushMode に依存している)。 <literal>close()</literal> を呼び出すことによ"
+"り、セッションの終わりを明確にします。 <literal>close()</literal> が暗黙的に"
+"行う主なことは、セッションが JDBC コネクションを開放することです。上記の "
+"Java コードはポータブルであり、管理されていない環境と JTA 環境の両方で実行で"
"きます。"
#. Tag: para
-#: transactions.xml:471
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"As outlined earlier, a much more flexible solution is Hibernate's built-in
"
"\"current session\" context management:"
msgstr ""
-"より適応性のある解決策は、Hibernateに予め組み込まれている 「current session」"
-"コンテキスト管理です。 言葉で説明するより下記を見たほうが速いでしょう。"
+"より適応性のある解決策は、 Hibernate に予め組み込まれている \"current session"
+"\" コンテキスト管理です。言葉で説明するより下記を見たほうが速いでしょう。"
-#. Tag: programlisting
-#: transactions.xml:476
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[// Non-managed environment idiom with getCurrentSession()\n"
-"try {\n"
-" factory.getCurrentSession().beginTransaction();\n"
-"\n"
-" // do some work\n"
-" ...\n"
-"\n"
-" factory.getCurrentSession().getTransaction().commit();\n"
-"}\n"
-"catch (RuntimeException e) {\n"
-" factory.getCurrentSession().getTransaction().rollback();\n"
-" throw e; // or display error message\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: transactions.xml:478
-#, fuzzy, no-c-format
-msgid ""
"You will not see these code snippets in a regular application; fatal "
"(system) exceptions should always be caught at the \"top\". In other
words, "
"the code that executes Hibernate calls in the persistence layer, and the "
@@ -906,37 +810,34 @@
"this chapter."
msgstr ""
"正規のアプリケーションの中では、このようなコードの切れ端を決して見ないでしょ"
-"う。 致命的な(システム)例外は、常に「最上位」でキャッチすべきです。 言い換"
-"えれば、(永続化層で)Hibernate呼び出しを実行するコードと、 "
+"う。致命的な (システム) 例外は、常に「最上位」でキャッチすべきです。言い換"
+"えれば、 (永続化層で) Hibernate 呼び出しを実行するコードと、 "
"<literal>RuntimeException</literal> を制御する (通常はクリーンアップと終了の"
-"み行うことができる)コードは、別々の層の中にあります。 Hibernateによるカレン"
-"トコンテキスト管理は、この設計をかなり単純にします。 必要なのは、"
-"<literal>SessionFactory</literal> にアクセスすることだけです。 例外処理は、こ"
+"み行うことができる) コードは、別々の層の中にあります。 Hibernate によるカレ"
+"ントコンテキスト管理は、この設計をかなり単純にします。必要なのは、 "
+"<literal>SessionFactory</literal> にアクセスすることだけです。例外処理は、こ"
"の章の後のほうで議論します。"
#. Tag: para
-#: transactions.xml:488
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You should select
<literal>org.hibernate.transaction.JDBCTransactionFactory</"
"literal>, which is the default, and for the second example select
<literal>"
"\"thread\"</literal> as your <literal>hibernate."
"current_session_context_class</literal>."
msgstr ""
-"注意:(デフォルトですが) <literal>org.hibernate.transaction."
-"JDBCTransactionFactory</literal> を選択するべきです。 第2の用例としては、 "
+"注記:(デフォルトですが) <literal>org.hibernate.transaction."
+"JDBCTransactionFactory</literal> を選択するべきです。第2の用例としては、 "
"<literal>hibernate.current_session_context_class</literal> を
<literal>"
"\"thread\"</literal> とするとよいでしょう。"
#. Tag: title
-#: transactions.xml:497
#, no-c-format
msgid "Using JTA"
-msgstr "JTAを使用する"
+msgstr "JTA を使用する"
#. Tag: para
-#: transactions.xml:499
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If your persistence layer runs in an application server (for example, behind
"
"EJB session beans), every datasource connection obtained by Hibernate will "
@@ -944,113 +845,50 @@
"standalone JTA implementation and use it without EJB. Hibernate offers two "
"strategies for JTA integration."
msgstr ""
-"永続化層をアプリケーションサーバー(例えば、EJBセッションBeanの背後)で実行す"
-"る場合、 Hibernateから取得するすべてのデータソースコネクションは、 自動的にグ"
-"ローバルJTAトランザクションの一部になります。 EJBを使わずに、スタンドアロンの"
-"JTA実装を導入することもできます。 JTA統合のために、Hibernateは2つの戦略を提"
-"供します。"
+"永続化層をアプリケーションサーバー (例えば、 EJB セッション Bean の背後) で"
+"実行する場合、 Hibernate から取得するすべてのデータソースコネクションは、自動"
+"的にグローバル JTA トランザクションの一部になります。 EJB を使わずに、スタン"
+"ドアロンの JTA 実装を導入することもできます。 JTA 統合のために、 Hibernate は"
+"2つの戦略を提供します。"
#. Tag: para
-#: transactions.xml:506
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you use bean-managed transactions (BMT), Hibernate will tell the "
"application server to start and end a BMT transaction if you use the "
"<literal>Transaction</literal> API. The transaction management code is
"
"identical to the non-managed environment."
msgstr ""
-"Bean管理トランザクション(BMT)を使い、<literal>Transaction</literal> APIを使"
-"う場合、 HibernateはアプリケーションサーバーにBMTトランザクションの開始と終わ"
-"りを告げます。 すなわち、トランザクション管理のコードは、管理されない環境と同"
-"じになります。"
+"Bean 管理トランザクション(BMT)を使い、 <literal>Transaction</literal> API "
+"を使う場合、 Hibernate はアプリケーションサーバーに BMT トランザクションの開"
+"始と終わりを告げます。すなわち、トランザクション管理のコードは、管理されない"
+"環境と同じになります。"
-#. Tag: programlisting
-#: transactions.xml:512
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[// BMT idiom\n"
-"Session sess = factory.openSession();\n"
-"Transaction tx = null;\n"
-"try {\n"
-" tx = sess.beginTransaction();\n"
-"\n"
-" // do some work\n"
-" ...\n"
-"\n"
-" tx.commit();\n"
-"}\n"
-"catch (RuntimeException e) {\n"
-" if (tx != null) tx.rollback();\n"
-" throw e; // or display error message\n"
-"}\n"
-"finally {\n"
-" sess.close();\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: transactions.xml:514
-#, fuzzy, no-c-format
-msgid ""
"If you want to use a transaction-bound <literal>Session</literal>, that
is, "
"the <literal>getCurrentSession()</literal> functionality for easy
context "
"propagation, use the JTA <literal>UserTransaction</literal> API
directly:"
msgstr ""
-"トランザクション境界として <literal>Session</literal> を使いたい場合、 簡単に"
+"トランザクション境界として <literal>Session</literal> を使いたい場合、簡単に"
"コンテキストを伝播する機能である <literal>getCurrentSession()</literal> があ"
-"るので、 JTAの <literal>UserTransaction</literal> APIを直接使用すべきでしょ"
+"るので、 JTAの <literal>UserTransaction</literal> API を直接使用すべきでしょ"
"う。"
-#. Tag: programlisting
-#: transactions.xml:520
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[// BMT idiom with getCurrentSession()\n"
-"try {\n"
-" UserTransaction tx = (UserTransaction)new InitialContext()\n"
-"
.lookup(\"java:comp/UserTransaction\");\n"
-"\n"
-" tx.begin();\n"
-"\n"
-" // Do some work on Session bound to transaction\n"
-" factory.getCurrentSession().load(...);\n"
-" factory.getCurrentSession().persist(...);\n"
-"\n"
-" tx.commit();\n"
-"}\n"
-"catch (RuntimeException e) {\n"
-" tx.rollback();\n"
-" throw e; // or display error message\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: transactions.xml:522
-#, fuzzy, no-c-format
-msgid ""
"With CMT, transaction demarcation is completed in session bean deployment "
"descriptors, not programmatically. The code is reduced to:"
msgstr ""
-"CMTでは、トランザクション境界をセッションBeanのデプロイメントディスクリプタで"
-"定義し、 プログラムでは行いません。 ゆえに、コードは次のように少なくなりま"
-"す。"
+"CMT では、トランザクション境界をセッション Bean のデプロイメントディスクリプ"
+"タで定義し、プログラムでは行いません。ゆえに、コードは次のように少なくなりま"
+"す:"
-#. Tag: programlisting
-#: transactions.xml:527
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[// CMT idiom\n"
-" Session sess = factory.getCurrentSession();\n"
-"\n"
-" // do some work\n"
-" ...\n"
-"]]>"
-msgstr ""
-
-#. Tag: para
-#: transactions.xml:529
-#, fuzzy, no-c-format
-msgid ""
"In a CMT/EJB, even rollback happens automatically. An unhandled "
"<literal>RuntimeException</literal> thrown by a session bean method
tells "
"the container to set the global transaction to rollback. <emphasis>You do
"
@@ -1058,16 +896,16 @@
"BMT or CMT, and you get automatic propagation of the \"current\" Session
"
"bound to the transaction.</emphasis>"
msgstr ""
-"CMT/EJBの中では、常にロールバックが自動的に実施されます。 なぜなら、セッショ"
-"ンビーンのメソッドにより投げられた制御されていない "
-"<literal>RuntimeException</literal> は、グローバルトランザクションを ロール"
-"バックするようにコンテナに伝えるためです。 <emphasis>これは、BMTもしくはCMTと"
-"いっしょにHibernate <literal>Transaction</literal> APIを使う必要は少しもない"
-"という意味です。</emphasis>"
+"CMT/EJB の中では、常にロールバックが自動的に実施されます。なぜなら、セッショ"
+"ン Bean のメソッドにより投げられた制御されていない "
+"<literal>RuntimeException</literal> は、グローバルトランザクションをロール"
+"バックするようにコンテナに伝えるためです。 <emphasis>これは、 BMT もしくは "
+"CMT と一緒に Hibernate <literal>Transaction</literal> API を使う必要はまった"
+"くないということを意味し、トランザクションにバインドする「現在の」セッション"
+"を自動伝搬できます。</emphasis>"
#. Tag: para
-#: transactions.xml:537
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"When configuring Hibernate's transaction factory, choose
<literal>org."
"hibernate.transaction.JTATransactionFactory</literal> if you use JTA "
@@ -1077,18 +915,17 @@
"your <literal>hibernate.current_session_context_class</literal> is
either "
"unset (backwards compatibility), or is set to
<literal>\"jta\"</literal>."
msgstr ""
-"Hibernateのトランザクションファクトリを設定する際に、 JTAを直接使う(BMTの)"
-"場合は <literal>org.hibernate.transaction.JTATransactionFactory</literal>
"
-"を、 CMTセッションビーンの中では <literal>org.hibernate.transaction."
-"CMTTransactionFactory</literal> を 選択すべきだということに注意してくださ"
-"い。 <literal>hibernate.transaction.manager_lookup_class</literal>
をセットす"
-"ることも思い出してください。 なお、<literal>hibernate."
-"current_session_context_class</literal> は、 セットしないか(後方互換)、"
+"Hibernate のトランザクションファクトリを設定する際に、 JTA を直接使う (BMT"
+"の) 場合は <literal>org.hibernate.transaction.JTATransactionFactory</"
+"literal> を、 CMT セッション Bean の中では <literal>org.hibernate."
+"transaction.CMTTransactionFactory</literal> を選択すべきだということに注意し"
+"てください。 <literal>hibernate.transaction.manager_lookup_class</literal>
を"
+"セットすることも思い出してください。なお、 <literal>hibernate."
+"current_session_context_class</literal> は、セットしないか(後方互換)、 "
"<literal>\"jta\"</literal> をセットしてください。"
#. Tag: para
-#: transactions.xml:546
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>getCurrentSession()</literal> operation has one downside
in a "
"JTA environment. There is one caveat to the use of
<literal>after_statement</"
@@ -1103,28 +940,26 @@
"using <literal>scroll()</literal> or
<literal>iterate()</literal> from the "
"JTA or CMT code.)"
msgstr ""
-"<literal>getCurrentSession()</literal> オペレーションは、JTA環境では1つの欠"
-"点を持ちます。 デフォルトで使われる <literal>after_statement</literal> コネク"
-"ションリリースモードを使用する上で、 警告が1つあります。 JTA仕様の愚かな制約"
-"のために、 <literal>scroll()</literal> または
<literal>iterate()</literal> が"
-"返した、 閉じられていない <literal>ScrollableResults</literal> または "
-"<literal>Iterator</literal> インスタンスをHibernateが自動的にクリーンアップす"
-"ることはできません。 <literal>finally</literal> ブロックの中で、 "
+"<literal>getCurrentSession()</literal> オペレーションは、 JTA 環境では1つの"
+"欠点を持ちます。デフォルトで使われる <literal>after_statement</literal> コネ"
+"クションリリースモードを使用する上で、警告が1つあります。 JTA 仕様の愚かな制"
+"約のために、 <literal>scroll()</literal> または
<literal>iterate()</literal> "
+"が返した、閉じられていない <literal>ScrollableResults</literal> または "
+"<literal>Iterator</literal> インスタンスを Hibernate が自動的にクリーンアップ"
+"することはできません。 <literal>finally</literal> ブロックの中で、 "
"<literal>ScrollableResults.close()</literal> または
<literal>Hibernate.close"
-"(Iterator)</literal> を明示的に呼び出して、 裏に潜んだデータベースカーソルを"
-"解放 <emphasis>しなければなりません</emphasis>。 (もちろん、多くのアプリケー"
-"ションでは、JTAかCMTコードで <literal>scroll()</literal> や
<literal>iterate"
-"()</literal> の使用を避けるのは容易です。)"
+"(Iterator)</literal> を明示的に呼び出して、裏に潜んだデータベースカーソルを解"
+"放 <emphasis>しなければなりません</emphasis>。 (もちろん、多くのアプリケー"
+"ションでは、 JTA か CMT コードで <literal>scroll()</literal> や "
+"<literal>iterate()</literal> の使用を避けるのは容易です。)"
#. Tag: title
-#: transactions.xml:562
#, no-c-format
msgid "Exception handling"
msgstr "例外ハンドリング"
#. Tag: para
-#: transactions.xml:564
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If the <literal>Session</literal> throws an exception, including any
"
"<literal>SQLException</literal>, immediately rollback the database
"
@@ -1135,18 +970,17 @@
"Ensure that the <literal>Session</literal> will be closed by calling
"
"<literal>close()</literal> in a <literal>finally</literal>
block."
msgstr ""
-"<literal>Session</literal>
が例外(<literal>SQLException</literal>を含む)を"
-"投げた場合、 直ちに、データベーストランザクションをロールバックし、"
-"<literal>Session.close()</literal>
を呼び、<literal>Session</literal> インス"
-"タンスを破棄すべきです。 <literal>Session</literal> のいくつかのメソッドは、 "
-"セッションの状態を <emphasis>矛盾したまま</emphasis> にします。 Hibernateが投"
-"げた例外を、回復できるものとして扱うことはできません。 <literal>finally</"
+"<literal>Session</literal> が例外
(<literal>SQLException</literal>を含む) "
+"を投げた場合、直ちに、データベーストランザクションをロールバックし、 "
+"<literal>Session.close()</literal> を呼び、
<literal>Session</literal> インス"
+"タンスを破棄すべきです。 <literal>Session</literal> のいくつかのメソッドは、"
+"セッションの状態を <emphasis>矛盾したまま</emphasis> にします。 Hibernate が"
+"投げた例外を、回復できるものとして扱うことはできません。 <literal>finally</"
"literal> ブロックの中で <literal>close()</literal> を呼んで、 "
"<literal>Session</literal> を確実に閉じてください。"
#. Tag: para
-#: transactions.xml:575
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>HibernateException</literal>, which wraps most of the
errors "
"that can occur in a Hibernate persistence layer, is an unchecked exception. "
@@ -1159,19 +993,18 @@
"unchecked exceptions that are not a
<literal>HibernateException</literal>. "
"These are not recoverable and appropriate action should be taken."
msgstr ""
-"<literal>HibernateException</literal> は、Hibernate永続化層の中で発生する多く"
-"のエラーを ラップする、検査されない例外です(Hibernateの古いバージョンは違い"
-"ました)。 私たちの意見は、アプリケーション開発者に回復不可能な例外を 下層で"
-"キャッチすることを強要すべきではないということです。 多くのシステムでは、検査"
-"されない例外と致命的な例外は、 コールスタックの最初のフレームの1つ(例えば、"
-"最上位の層で)でハンドリングし、 エラーメッセージをアプリケーションユーザーに"
-"表示します (もしくは、他の適切な処理を実施します)。 Hibernateは、"
-"<literal>HibernateException</literal> 以外の検査されない例外も 投げることに注"
-"意してください。 これらもまた、回復不可能であり、適切な処理を実施すべきです。"
+"<literal>HibernateException</literal> は、 Hibernate 永続化層の中で発生する多"
+"くのエラーをラップする、検査されない例外です ( Hibernate の古いバージョンは"
+"違いました) 。私たちの意見は、アプリケーション開発者に回復不可能な例外を下層"
+"でキャッチすることを強要すべきではないということです。多くのシステムでは、検"
+"査されない例外と致命的な例外は、コールスタックの最初のフレームの1つ (例え"
+"ば、最上位の層で) でハンドリングし、エラーメッセージをアプリケーションユー"
+"ザーに表示します (もしくは、他の適切な処理を実施します) 。 Hibernate は、"
+"<literal>HibernateException</literal> 以外の検査されない例外も投げることに注"
+"意してください。これらもまた、回復不可能であり、適切な処理を実施すべきです。"
#. Tag: para
-#: transactions.xml:587
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate wraps <literal>SQLException</literal>s thrown while
interacting "
"with the database in a <literal>JDBCException</literal>. In fact,
Hibernate "
@@ -1188,43 +1021,40 @@
"class for details. The standard <literal>JDBCException</literal>
subtypes "
"are:"
msgstr ""
-"Hibernateは、データベースとの対話中に投げられた <literal>SQLException</"
-"literal> を <literal>JDBCException</literal> でラップします。 実は、例外をよ"
-"り意味のある <literal>JDBCException</literal> のサブクラスに 変換しようと試み"
-"ます。 元の <literal>SQLException</literal>
は、<literal>JDBCException."
-"getCause()</literal> によりいつでも得られます。 Hibernateは、"
+"Hibernate は、データベースとの対話中に投げられた <literal>SQLException</"
+"literal> を <literal>JDBCException</literal> でラップします。実は、例外をより"
+"意味のある <literal>JDBCException</literal> のサブクラスに変換しようと試みま"
+"す。元の <literal>SQLException</literal> は、
<literal>JDBCException.getCause"
+"()</literal> によりいつでも得られます。 Hibernate は、 "
"<literal>SessionFactory</literal> に追加されている "
-"<literal>SQLExceptionConverter</literal>
を使い、<literal>SQLException</"
-"literal> を 適当な <literal>JDBCException</literal> サブクラスに変換します。 "
-"デフォルトでは、<literal>SQLExceptionConverter</literal> は設定されているSQL"
-"方言により 定義されます。 一方で、独自の実装に差し替えることもできます (詳細"
-"は、<literal>SQLExceptionConverterFactory</literal>
クラスのJavadocを参照して"
-"ください)。 標準的な <literal>JDBCException</literal> のサブタイプを下記に示"
-"します。"
+"<literal>SQLExceptionConverter</literal> を使い、
<literal>SQLException</"
+"literal> を適当な <literal>JDBCException</literal> サブクラスに変換します。デ"
+"フォルトでは、 <literal>SQLExceptionConverter</literal> は設定されている SQL "
+"方言により定義されます。一方で、独自の実装に差し替えることもできます (詳細"
+"は、 <literal>SQLExceptionConverterFactory</literal> クラスの Javadoc
を参照"
+"してください)。標準的な <literal>JDBCException</literal> のサブタイプを下記"
+"に示します。"
#. Tag: para
-#: transactions.xml:603
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>JDBCConnectionException</literal>: indicates an error with the
"
"underlying JDBC communication."
msgstr ""
-"<literal>JDBCConnectionException</literal> - 基礎となるJDBC通信のエラーを表し"
-"ます。"
+"<literal>JDBCConnectionException</literal> - 基礎となる JDBC 通信のエラーを表"
+"します。"
#. Tag: para
-#: transactions.xml:609
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>SQLGrammarException</literal>: indicates a grammar or syntax
"
"problem with the issued SQL."
msgstr ""
-"<literal>SQLGrammarException</literal> - 発行するSQLの文法もしくは構文の問題"
-"を表します。"
+"<literal>SQLGrammarException</literal> - 発行する SQL の文法もしくは構文の問"
+"題を表します。"
#. Tag: para
-#: transactions.xml:615
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>ConstraintViolationException</literal>: indicates some form of
"
"integrity constraint violation."
@@ -1233,8 +1063,7 @@
"反を表します。"
#. Tag: para
-#: transactions.xml:621
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>LockAcquisitionException</literal>: indicates an error
acquiring a "
"lock level necessary to perform the requested operation."
@@ -1243,8 +1072,7 @@
"要なロックレベルを得る際のエラーを表します。"
#. Tag: para
-#: transactions.xml:627
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>GenericJDBCException</literal>: a generic exception which did
not "
"fall into any of the other categories."
@@ -1253,14 +1081,12 @@
"な例外です。"
#. Tag: title
-#: transactions.xml:637
#, no-c-format
msgid "Transaction timeout"
msgstr "トランザクションのタイムアウト"
#. Tag: para
-#: transactions.xml:639
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"An important feature provided by a managed environment like EJB, that is "
"never provided for non-managed code, is transaction timeout. Transaction "
@@ -1273,61 +1099,33 @@
"transaction timeout to JTA. This functionality is abstracted by the "
"Hibernate <literal>Transaction</literal> object."
msgstr ""
-"EJBのような管理された環境が提供するきわめて重要な特徴の1つは、 トランザク"
-"ションのタイムアウトです。 これは管理されていないコードには提供できません。 "
-"トランザクションタイムアウトは、不品行なトランザクションが ユーザーにレスポン"
-"スを返さないまま、無期限にリソースを使い続けない ことを保障します。 管理され"
-"た環境(JTA)の外では、Hibernateはこの機能をフルに提供できません。 しかしなが"
-"ら、Hibernateは次のようなデータアクセス操作の制御くらいはできます。 データ"
-"ベースレベルのデッドロックや大きなリザルトセットを返すクエリを 定義されたタイ"
-"ムアウトによって確実に制限します。 管理された環境では、Hibernateはトランザク"
-"ションタイムアウトをJTAに委譲します。 この機能は、Hibernateの "
-"<literal>Transaction</literal> オブジェクトに よって抽象化されています。"
+"EJB のような管理された環境が提供するきわめて重要な特徴の1つは、トランザク"
+"ションのタイムアウトです。これは管理されていないコードには提供できません。ト"
+"ランザクションタイムアウトは、不品行なトランザクションがユーザーにレスポンス"
+"を返さないまま、無期限にリソースを使い続けないことを保障します。管理された環"
+"境 (JTA) の外では、 Hibernate はこの機能をフルに提供できません。しかしなが"
+"ら、 Hibernate は次のようなデータアクセス操作の制御くらいはできます。データ"
+"ベースレベルのデッドロックや大きなリザルトセットを返すクエリを定義されたタイ"
+"ムアウトによって確実に制限します。管理された環境では、 Hibernate はトランザク"
+"ションタイムアウトを JTA に委譲します。この機能は、 Hibernate の "
+"<literal>Transaction</literal> オブジェクトによって抽象化されています。"
-#. Tag: programlisting
-#: transactions.xml:652
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[\n"
-"Session sess = factory.openSession();\n"
-"try {\n"
-" //set transaction timeout to 3 seconds\n"
-" sess.getTransaction().setTimeout(3);\n"
-" sess.getTransaction().begin();\n"
-"\n"
-" // do some work\n"
-" ...\n"
-"\n"
-" sess.getTransaction().commit()\n"
-"}\n"
-"catch (RuntimeException e) {\n"
-" sess.getTransaction().rollback();\n"
-" throw e; // or display error message\n"
-"}\n"
-"finally {\n"
-" sess.close();\n"
-"}]]>"
-msgstr ""
-
-#. Tag: para
-#: transactions.xml:654
-#, fuzzy, no-c-format
-msgid ""
"<literal>setTimeout()</literal> cannot be called in a CMT bean, where
"
"transaction timeouts must be defined declaratively."
msgstr ""
-"CMTビーンの中では <literal>setTimeout()</literal> を 呼び出せないことに注意し"
-"てください。 トランザクションタイムアウトは宣言的に定義されるべきです。"
+"CMT Bean の中では <literal>setTimeout()</literal> を呼び出せないことに注意し"
+"てください。トランザクションタイムアウトは宣言的に定義されるべきです。"
#. Tag: title
-#: transactions.xml:664
#, no-c-format
msgid "Optimistic concurrency control"
msgstr "楽観的同時実行制御"
#. Tag: para
-#: transactions.xml:666
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The only approach that is consistent with high concurrency and high "
"scalability, is optimistic concurrency control with versioning. Version "
@@ -1337,23 +1135,21 @@
"discuss are in the context of long conversations, but version checking also "
"has the benefit of preventing lost updates in single database transactions."
msgstr ""
-"高い並列性と高いスケーラビリティの両方を実現するアプローチは、 バージョニング"
-"を使った楽観的同時実行制御のみです。 更新の衝突を見つけるために(および、更新"
-"が失われるのを防ぐために)、 バージョン番号もしくはタイムスタンプを使って、"
-"バージョンをチェックします。 Hibernateは、楽観的同時実行を行うアプリケーショ"
-"ンコードを書くための アプローチを3つ提供します。 私たちが見せるユースケース"
-"は、長い対話を持ちますが、 バージョンチェックはまだ1つのデータベーストランザ"
-"クションの中で更新を失うことを防ぐ 利点も持っています。"
+"高い並列性と高いスケーラビリティの両方を実現するアプローチは、バージョニング"
+"を使った楽観的同時実行制御のみです。更新の衝突を見つけるために(および、更新"
+"が失われるのを防ぐために)、バージョン番号もしくはタイムスタンプを使って、"
+"バージョンをチェックします。 Hibernate は、楽観的同時実行を行うアプリケーショ"
+"ンコードを書くためのアプローチを3つ提供します。私たちが見せるユースケース"
+"は、長い対話を持ちますが、バージョンチェックはまだ1つのデータベーストランザ"
+"クションの中で更新を失うことを防ぐ利点も持っています。"
#. Tag: title
-#: transactions.xml:677
#, no-c-format
msgid "Application version checking"
msgstr "アプリケーションによるバージョンチェック"
#. Tag: para
-#: transactions.xml:679
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In an implementation without much help from Hibernate, each interaction with
"
"the database occurs in a new <literal>Session</literal> and the
developer is "
@@ -1363,48 +1159,28 @@
"least efficient in terms of database access. It is the approach most similar
"
"to entity EJBs."
msgstr ""
-"Hibernateにほとんど助けてもらわずに実装するケースです。 データベースとのやり"
-"取りは、それぞれ新しい <literal>Session</literal> の中で起こります。 開発者"
-"は、すべての永続性インスタンスを操作する前に、 データベースから再読み込みする"
-"責務があります。 このアプローチでは、対話トランザクションの分離を守るため"
-"に、 アプリケーション自身がバージョンチェックを行う必要があります。 このアプ"
-"ローチは、データベースアクセスの中では、最も非効率です。 エンティティEJBと最"
-"も似ているアプローチです。"
+"Hibernate にほとんど助けてもらわずに実装するケースです。データベースとのやり"
+"取りは、それぞれ新しい <literal>Session</literal> の中で起こります。開発者"
+"は、すべての永続性インスタンスを操作する前に、データベースから再読み込みする"
+"責務があります。このアプローチでは、対話トランザクションの分離を守るために、"
+"アプリケーション自身がバージョンチェックを行う必要があります。このアプローチ"
+"は、データベースアクセスの中では、最も非効率です。エンティティ EJB と最も似て"
+"いるアプローチです。"
-#. Tag: programlisting
-#: transactions.xml:688
-#, no-c-format
-msgid ""
-"<![CDATA[// foo is an instance loaded by a previous Session\n"
-"session = factory.openSession();\n"
-"Transaction t = session.beginTransaction();\n"
-"\n"
-"int oldVersion = foo.getVersion();\n"
-"session.load( foo, foo.getKey() ); // load the current state\n"
-"if ( oldVersion != foo.getVersion() ) throw new StaleObjectStateException"
-"();\n"
-"foo.setProperty(\"bar\");\n"
-"\n"
-"t.commit();\n"
-"session.close();]]>"
-msgstr ""
-
#. Tag: para
-#: transactions.xml:690
#, no-c-format
msgid ""
"The <literal>version</literal> property is mapped using
<literal><"
"version></literal>, and Hibernate will automatically increment it
during "
"flush if the entity is dirty."
msgstr ""
-"<literal><version></literal>
を使って、<literal>version</literal> プロ"
-"パティをマッピングします。 Hibernateは、エンティティがダーティである場合、フ"
-"ラッシュし、 その間に <literal>version</literal> プロパティを自動的にインクリ"
+"<literal><version></literal> を使って、
<literal>version</literal> プロ"
+"パティをマッピングします。 Hibernate は、エンティティがダーティである場合、フ"
+"ラッシュし、その間に <literal>version</literal> プロパティを自動的にインクリ"
"メントします。"
#. Tag: para
-#: transactions.xml:696
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If you are operating in a low-data-concurrency environment, and do not "
"require version checking, you can use this approach and skip the version "
@@ -1414,15 +1190,14 @@
"messages or a chance to merge conflicting changes."
msgstr ""
"もちろん、データの並列性が低い環境で運用しており、バージョンチェックが不要な"
-"ら、 このアプローチを使い、バージョンチェックをスキップするだけです。 その場"
-"合は、長い対話には、 <emphasis>「最後にコミットしたものが勝つ」</emphasis> が"
-"デフォルトの戦略でしょう。 このアプローチは、アプリケーションのユーザーを混乱"
-"させるかもしれないことを 心に留めて置いてください。それは、エラーメッセージや"
-"競合した変更をマージする機会が ないまま、更新を失う経験をするためです。"
+"ら、このアプローチを使い、バージョンチェックをスキップするだけです。その場合"
+"は、長い対話には、 <emphasis>最後にコミットしたものが勝つ</emphasis> がデフォ"
+"ルトの戦略でしょう。このアプローチは、アプリケーションのユーザーを混乱させる"
+"かもしれないことを心に留めて置いてください。それは、エラーメッセージや競合し"
+"た変更をマージする機会がないまま、更新を失う可能性があるからです。"
#. Tag: para
-#: transactions.xml:705
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Manual version checking is only feasible in trivial circumstances and not "
"practical for most applications. Often not only single instances, but "
@@ -1431,20 +1206,18 @@
"literal> or detached instances as the design paradigm."
msgstr ""
"確かに、マニュアルによるバージョンチェックは、些細な儀式だけで実行できます"
-"が、 多くのアプリケーションにとって実用的ではありません。 しばしば、1つのイ"
-"ンスタンスだけでなく、 修正されたオブジェクトの完全なグラフをチェックしなけれ"
-"ばなりません。 Hibernateは、設計パラダイムとして、拡張 <literal>Session</"
-"literal> か 分離されたインスタンスを自動的にバージョンチェックします。"
+"が、多くのアプリケーションにとって実用的ではありません。しばしば、1つのイン"
+"スタンスだけでなく、修正されたオブジェクトの完全なグラフをチェックしなければ"
+"なりません。 Hibernate は、設計パラダイムとして、拡張 <literal>Session</"
+"literal> か分離されたインスタンスを自動的にバージョンチェックします。"
#. Tag: title
-#: transactions.xml:716
#, no-c-format
msgid "Extended session and automatic versioning"
msgstr "拡張セッションと自動バージョニング"
#. Tag: para
-#: transactions.xml:718
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A single <literal>Session</literal> instance and its persistent
instances "
"that are used for the whole conversation are known as
<emphasis>session-per-"
@@ -1455,15 +1228,14 @@
"conversation with non-stale data."
msgstr ""
"1つの <literal>Session</literal> インスタンスとその永続性インスタンスは、 "
-"<emphasis>session-per-conversation</emphasis> として知られる、 対話全体で使わ"
-"れます。 Hibernateはフラッシュする際に、インスタンスのバージョンをチェックし"
-"ます。 同時に修正されたことを検出すると、例外を投げます。 この例外をキャッチ"
-"して扱うのは、開発者の責任です (一般的な選択肢は、変更をマージするか古くない"
-"データでビジネス対話を 再スタートする機会をユーザーに提供することです)。"
+"<emphasis>session-per-conversation</emphasis> として知られる、対話全体で使わ"
+"れます。 Hibernate はフラッシュする際に、インスタンスのバージョンをチェックし"
+"ます。同時に修正されたことを検出すると、例外を投げます。この例外をキャッチし"
+"て扱うのは、開発者の責任です (一般的な選択肢は、変更をマージするか古くない"
+"データでビジネス対話を再スタートする機会をユーザーに提供することです)。"
#. Tag: para
-#: transactions.xml:727
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>Session</literal> is disconnected from any underlying JDBC
"
"connection when waiting for user interaction. This approach is the most "
@@ -1471,31 +1243,15 @@
"check or reattach detached instances, nor does it have to reload instances "
"in every database transaction."
msgstr ""
-"ユーザーの対話を待っているときは、 <literal>Session</literal> を基礎となる"
-"JDBCコネクションから切り離します。 このアプローチは、データベースアクセスの中"
-"では、最も効率的です。 アプリケーションは、バージョンチェックや分離されたイン"
-"スタンスを再追加すること に関心を持つ必要はありません。また、あらゆるデータ"
-"ベーストランザクションの中で インスタンスを再読み込みする必要はありません。"
+"ユーザーの対話を待っているときは、 <literal>Session</literal> を基礎となる "
+"JDBC コネクションから切り離します。このアプローチは、データベースアクセスの中"
+"では、最も効率的です。アプリケーションは、バージョンチェックや分離されたイン"
+"スタンスを再追加することに関心を持つ必要はありません。また、あらゆるデータ"
+"ベーストランザクションの中でインスタンスを再読み込みする必要はありません。"
-#. Tag: programlisting
-#: transactions.xml:735
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[// foo is an instance loaded earlier by the old session\n"
-"Transaction t = session.beginTransaction(); // Obtain a new JDBC connection,
"
-"start transaction\n"
-"\n"
-"foo.setProperty(\"bar\");\n"
-"\n"
-"session.flush(); // Only for last transaction in conversation\n"
-"t.commit(); // Also return JDBC connection\n"
-"session.close(); // Only for last transaction in conversation]]>"
-msgstr ""
-
-#. Tag: para
-#: transactions.xml:736
-#, fuzzy, no-c-format
-msgid ""
"The <literal>foo</literal> object knows which
<literal>Session</literal> it "
"was loaded in. Beginning a new database transaction on an old session "
"obtains a new connection and resumes the session. Committing a database "
@@ -1512,23 +1268,22 @@
"<literal>close()</literal> the session to end the conversation."
msgstr ""
"<literal>foo</literal> オブジェクトは、自分をロードした
<literal>Session</"
-"literal> をまだ知っています。 古いセッションの上で新しいデータベーストランザ"
-"クションを開始することで、 新しいコネクションを取得し、そのセッションが再開さ"
-"れます。 データベーストランザクションをコミットすることで、 セッションから"
-"JDBCコネクションを切断し、コネクションをプールに返します。 再接続した後、更新"
-"していないデータのバージョンチェックを強制するために、 他のトランザクションに"
-"より更新されているかもしれないオブジェクトに関して、 <literal>LockMode.READ</"
+"literal> をまだ知っています。古いセッションの上で新しいデータベーストランザク"
+"ションを開始することで、新しいコネクションを取得し、そのセッションが再開され"
+"ます。データベーストランザクションをコミットすることで、セッションから JDBC "
+"コネクションを切断し、コネクションをプールに返します。再接続した後、更新して"
+"いないデータのバージョンチェックを強制するために、他のトランザクションにより"
+"更新されているかもしれないオブジェクトに関して、 <literal>LockMode.READ</"
"literal> をつけて <literal>Session.lock()</literal> を呼び出すことができま"
-"す。 更新して <emphasis>いる</emphasis> データをロックする必要はありません。 "
-"通常、拡張 <literal>Session</literal> に
<literal>FlushMode.MANUAL</literal> "
-"をセットします。 最後のデータベーストランザクションの周期でのみ、 対話の中で"
-"変更されたすべてを実際に永続化させるためです。 ゆえに、最後のデータベーストラ"
-"ンザクションのみ <literal>flush()</literal> オペレーションを含みます。そし"
-"て、対話を終わらせるために、 セッションも <literal>close()</literal> します。"
+"す。更新して <emphasis>いる</emphasis> データをロックする必要はありません。通"
+"常、拡張 <literal>Session</literal> に
<literal>FlushMode.MANUAL</literal> を"
+"セットします。最後のデータベーストランザクションの周期でのみ、対話の中で変更"
+"されたすべてを実際に永続化させるためです。ゆえに、最後のデータベーストランザ"
+"クションのみ <literal>flush()</literal> オペレーションを含みます。そして、対"
+"話を終わらせるために、セッションも <literal>close()</literal> します。"
#. Tag: para
-#: transactions.xml:751
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This pattern is problematic if the <literal>Session</literal> is too
big to "
"be stored during user think time (for example, an
<literal>HttpSession</"
@@ -1539,34 +1294,31 @@
"have stale data."
msgstr ""
"ユーザーが考慮中に、格納することができないくらい <literal>Session</literal> "
-"が大きいのであれば、このパターンは問題があります。 例えば、"
+"が大きいのであれば、このパターンは問題があります。例えば、 "
"<literal>HttpSession</literal> は可能な限り小さく保つべきです。 "
-"<literal>Session</literal> は(強制的に)1次キャッシュでもあり、 ロードした"
-"オブジェクトをすべて保持します。 おそらく、リクエスト/レスポンスのサイクルが"
-"数回であれば、この戦略が使えます。 1つの対話のためだけに <literal>Session</"
-"literal> を使うべきです。 なぜなら、すぐに新鮮でないデータを持つためです。"
+"<literal>Session</literal> は (強制的に) 1次キャッシュでもあり、ロードした"
+"オブジェクトをすべて保持します。おそらく、リクエスト/レスポンスのサイクルが"
+"数回であれば、この戦略が使えます。1つの対話のためだけに <literal>Session</"
+"literal> を使うべきです。なぜなら、すぐに新鮮でないデータを持つためです。"
#. Tag: title
-#: transactions.xml:762
#, no-c-format
msgid "Note"
-msgstr ""
+msgstr "注記"
#. Tag: para
-#: transactions.xml:763
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Earlier versions of Hibernate required explicit disconnection and "
"reconnection of a <literal>Session</literal>. These methods are
deprecated, "
"as beginning and ending a transaction has the same effect."
msgstr ""
-"(Hibernateの以前のバージョンは、明示的な <literal>Session</literal> の 切断"
-"と再接続が必要だったことに注意してください。 これらのメソッドは非推奨になりま"
-"した。 なぜなら、トランザクションの開始と終了は同じ効果があるためです。)"
+"Hibernate の以前のバージョンは、明示的な <literal>Session</literal> の切断と"
+"再接続が必要だったことに注意してください。これらのメソッドは非推奨になりまし"
+"た。なぜなら、トランザクションの開始と終了は同じ効果があるためです。"
#. Tag: para
-#: transactions.xml:769
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Keep the disconnected <literal>Session</literal> close to the
persistence "
"layer. Use an EJB stateful session bean to hold the
<literal>Session</"
@@ -1574,15 +1326,14 @@
"or even serialize it to a separate tier, to store it in the "
"<literal>HttpSession</literal>."
msgstr ""
-"切断した <literal>Session</literal> を永続化層の近くで保持すべきであることに "
-"注意してください。 言い換えると、3層環境の中で <literal>Session</literal> を"
-"保持するために、 EJBステートフルセッションBeanを使ってください。 "
-"<literal>HttpSession</literal> に格納するために、Web層に転送しないでください "
-"(別の層へのシリアライズもしないでください)。"
+"切断した <literal>Session</literal> を永続化層の近くで保持すべきであることに"
+"注意してください。言い換えると、3層環境の中で <literal>Session</literal> を"
+"保持するために、 EJB ステートフルセッション Bean を使ってください。 "
+"<literal>HttpSession</literal> に格納するために、 Web 層に転送しないでくださ"
+"い (別の層へのシリアライズもしないでください)。"
#. Tag: para
-#: transactions.xml:777
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The extended session pattern, or
<emphasis>session-per-conversation</"
"emphasis>, is more difficult to implement with automatic current session "
@@ -1590,19 +1341,17 @@
"<literal>CurrentSessionContext</literal> for this. See the Hibernate
Wiki "
"for examples."
msgstr ""
-"拡張セッションパターン(もしくは、<emphasis>session-per-conversation</"
-"emphasis>)は、 自動的なカレントセッションコンテキスト管理を実施するより難し"
-"い。 このために、あなたは <literal>CurrentSessionContext</literal> の実装を供"
-"給する必要があります。 Hibernate Wikiにある例を参照してください。"
+"拡張セッションパターン (もしくは、 <emphasis>session-per-conversation</"
+"emphasis> ) は、自動的なカレントセッションコンテキスト管理を実施するより難し"
+"い。このために、あなたは <literal>CurrentSessionContext</literal> の実装を供"
+"給する必要があります。 Hibernate Wiki にある例を参照してください。"
#. Tag: title
-#: transactions.xml:787
#, no-c-format
msgid "Detached objects and automatic versioning"
msgstr "デタッチされたオブジェクトと自動バージョニング"
#. Tag: para
-#: transactions.xml:789
#, no-c-format
msgid ""
"Each interaction with the persistent store occurs in a new
<literal>Session</"
@@ -1613,41 +1362,25 @@
"<literal>Session.saveOrUpdate()</literal>, or
<literal>Session.merge()</"
"literal>."
msgstr ""
-"新しい <literal>Session</literal>により、永続化ストア(訳注:DB)との対話が"
-"発生します。 また一方、同じ永続性インスタンスが、データベースとの対話ごとに再"
-"利用されます。 アプリケーションは、元々は他の <literal>Session</literal> で"
-"ロードされ、 デタッチされたインスタンスの状態を操作します。 そして、"
-"<literal>Session.update()</literal>
もしくは、<literal>Session.saveOrUpdate()"
-"</literal>、 <literal>Session.merge()</literal>
を使って、それらのインスタン"
-"スを再追加します。"
+"新しい <literal>Session</literal> により、永続化ストア (訳注:DB) との対"
+"話が発生します。また一方、同じ永続性インスタンスが、データベースとの対話ごと"
+"に再利用されます。アプリケーションは、元々は他の <literal>Session</literal> "
+"でロードされ、デタッチされたインスタンスの状態を操作します。そして、 "
+"<literal>Session.update()</literal> もしくは、
<literal>Session.saveOrUpdate"
+"()</literal> 、 <literal>Session.merge()</literal>
を使って、それらのインスタ"
+"ンスを再追加します。"
-#. Tag: programlisting
-#: transactions.xml:797
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[// foo is an instance loaded by a previous Session\n"
-"foo.setProperty(\"bar\");\n"
-"session = factory.openSession();\n"
-"Transaction t = session.beginTransaction();\n"
-"session.saveOrUpdate(foo); // Use merge() if \"foo\" might have been
loaded "
-"already\n"
-"t.commit();\n"
-"session.close();]]>"
-msgstr ""
-
-#. Tag: para
-#: transactions.xml:799
-#, fuzzy, no-c-format
-msgid ""
"Again, Hibernate will check instance versions during flush, throwing an "
"exception if conflicting updates occurred."
msgstr ""
-"この場合もやはり、Hibernateはフラッシュする際に、インスタンスのバージョンを"
-"チェックします。 更新の競合が発生した場合には、例外を投げます。"
+"この場合もやはり、 Hibernate はフラッシュする際に、インスタンスのバージョンを"
+"チェックします。更新の競合が発生した場合には、例外を投げます。"
#. Tag: para
-#: transactions.xml:804
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also call <literal>lock()</literal> instead of
<literal>update()</"
"literal>, and use <literal>LockMode.READ</literal> (performing a
version "
@@ -1655,19 +1388,17 @@
"modified."
msgstr ""
"オブジェクトが修正されていないことを確信している場合は、 <literal>update()</"
-"literal> の代わりに、<literal>LockMode.READ</literal> を使って、 "
+"literal> の代わりに、 <literal>LockMode.READ</literal> を使って、 "
"<literal>lock()</literal> を呼び出すこともできます (すべてのキャッシュを迂回"
"し、バージョンチェックを実施します)。"
#. Tag: title
-#: transactions.xml:813
#, no-c-format
msgid "Customizing automatic versioning"
msgstr "自動バージョニングのカスタマイズ"
#. Tag: para
-#: transactions.xml:815
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can disable Hibernate's automatic version increment for particular "
"properties and collections by setting the
<literal>optimistic-lock</literal> "
@@ -1675,13 +1406,12 @@
"increment versions if the property is dirty."
msgstr ""
"マッピングの <literal>optimistic-lock</literal> 属性に
<literal>false</"
-"literal> を設定することにより、特定のプロパティやコレクションのために 自動"
-"バージョンインクリメントを無効にできます。 プロパティがダーティであっても、"
-"バージョンをインクリメントしません。"
+"literal> を設定することにより、特定のプロパティやコレクションのために自動バー"
+"ジョンインクリメントを無効にできます。プロパティがダーティであっても、バー"
+"ジョンをインクリメントしません。"
#. Tag: para
-#: transactions.xml:822
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Legacy database schemas are often static and cannot be modified. Or, other "
"applications might access the same database and will not know how to handle "
@@ -1694,21 +1424,20 @@
"long <literal>Session</literal> and not
session-per-request-with-detached-"
"objects)."
msgstr ""
-"レガシーのデータベーススキーマは、しばしば固定的であり、変更できません。 また"
-"は、他のアプリケーションが同じデータベースにアクセスしなければならず、 そのア"
-"プリケーションはバージョン番号やタイムスタンプさえ操作する方法を知りません。 "
+"レガシーのデータベーススキーマは、しばしば固定的であり、変更できません。また"
+"は、他のアプリケーションが同じデータベースにアクセスしなければならず、そのア"
+"プリケーションはバージョン番号やタイムスタンプさえ操作する方法を知りません。"
"どちらの場合も、テーブルの特定のカラムを当てにして、バージョニングを行えませ"
-"ん。 バージョンやタイムスタンプのプロパティをマッピングせずに、バージョン"
+"ん。バージョンやタイムスタンプのプロパティをマッピングせずに、バージョン"
"チェックさせるために、 <literal><class></literal> マッピングに "
-"<literal>optimistic-lock=\"all\"</literal> を 指定してください。
行のすべての"
-"フィールドの状態を比較するようになります。 これは、Hibernateが古い状態と新し"
-"い状態を比較できる場合に、 理論的に動作するだけであることに注意してくださ"
-"い。 例えば、session-per-request-with-detached-objects ではなく、 1つの長い "
+"<literal>optimistic-lock=\"all\"</literal>
を指定してください。行のすべての"
+"フィールドの状態を比較するようになります。これは、 Hibernate が古い状態と新し"
+"い状態を比較できる場合に、理論的に動作するだけであることに注意してください。"
+"例えば、 session-per-request-with-detached-objects ではなく、1つの長い "
"<literal>Session</literal> を使う場合です。"
#. Tag: para
-#: transactions.xml:834
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Concurrent modification can be permitted in instances where the changes that
"
"have been made do not overlap. If you set
<literal>optimistic-lock=\"dirty"
@@ -1717,12 +1446,11 @@
msgstr ""
"ときどき、行われた変更が重ならない限り、同時に行われた変更を受け入れることが"
"できます。 <literal><class></literal> マッピングに
<literal>optimistic-"
-"lock=\"dirty\"</literal> を設定した場合、フラッシュする際に、Hibernateはダー"
-"ティフィールドのみを比較します。"
+"lock=\"dirty\"</literal> を設定した場合、フラッシュする際に、 Hibernate は"
+"ダーティフィールドのみを比較します。"
#. Tag: para
-#: transactions.xml:840
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"In both cases, with dedicated version/timestamp columns or with a full/dirty
"
"field comparison, Hibernate uses a single <literal>UPDATE</literal>
"
@@ -1737,27 +1465,25 @@
"to <literal>SELECT</literal> the instance to ensure that changes did
occur "
"before updating the row."
msgstr ""
-"専用のバージョン/タイムスタンプのカラムを使う場合、 もしくはすべて/ダーティ"
-"のフィールドを比較する場合どちらであっても、 Hibernateはエンティティごとに1つ"
-"の <literal>UPDATE</literal> 文を (適切な
<literal>WHERE</literal> 節と共"
-"に)使い、 バージョンチェックと情報の更新を行います。 関連するエンティティの"
-"再追加をカスケードするために、 連鎖的な永続化を使用した場合、不必要な更新を実"
-"行するかもしれません。 これは通常問題になりません。 しかし、分離したインスタ"
-"ンスを変更していなくとも、 データベースの <emphasis>on update</emphasis> トリ"
-"ガーが実行されるかもしれません。 <literal><class></literal> マッピング"
-"に <literal>select-before-update=\"true\"</literal>
を設定することによって、 "
-"この振る舞いをカスタマイズできます。 確実に変更されたかを確認するために、行を"
-"更新する前に、 必ずインスタンスを <literal>SELECT</literal> します。"
+"専用のバージョン/タイムスタンプのカラムを使う場合、もしくはすべて/ダーティ"
+"のフィールドを比較する場合どちらであっても、 Hibernate はエンティティごとに1"
+"つの <literal>UPDATE</literal> 文を (適切な
<literal>WHERE</literal> 節と共"
+"に) 使い、バージョンチェックと情報の更新を行います。関連するエンティティの再"
+"追加をカスケードするために、連鎖的な永続化を使用した場合、不必要な更新を実行"
+"するかもしれません。これは通常問題になりません。しかし、分離したインスタンス"
+"を変更していなくとも、データベースの <emphasis>on update</emphasis> トリガー"
+"が実行されるかもしれません。 <literal><class></literal> マッピングに "
+"<literal>select-before-update=\"true\"</literal>
を設定することによって、この"
+"振る舞いをカスタマイズできます。確実に変更されたかを確認するために、行を更新"
+"する前に、必ずインスタンスを <literal>SELECT</literal> します。"
#. Tag: title
-#: transactions.xml:858
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Pessimistic locking"
msgstr "悲観的ロック"
#. Tag: para
-#: transactions.xml:860
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is not intended that users spend much time worrying about locking "
"strategies. It is usually enough to specify an isolation level for the JDBC "
@@ -1765,80 +1491,73 @@
"advanced users may wish to obtain exclusive pessimistic locks or re-obtain "
"locks at the start of a new transaction."
msgstr ""
-"ユーザがロック戦略に悩むのに多くの時間を費やすことを意図していません。 通常"
-"は、JDBCコネクションに分離レベルを指定し、 単にデータベースにすべての仕事をさ"
-"せれば十分です。 しかしながら、高度なユーザは、排他的な悲観的ロックを獲得する"
-"ことか、 新しいトランザクションが開始される際にロックを再獲得することを とき"
-"どき望むかもしれません。"
+"ユーザーがロック戦略に悩むのに多くの時間を費やすことを意図していません。通常"
+"は、 JDBC コネクションに分離レベルを指定し、単にデータベースにすべての仕事を"
+"させれば十分です。しかしながら、高度なユーザーは、排他的な悲観的ロックを獲得"
+"することか、新しいトランザクションが開始される際にロックを再獲得することをと"
+"きどき望むかもしれません。"
#. Tag: para
-#: transactions.xml:867
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate will always use the locking mechanism of the database; it never "
"lock objects in memory."
msgstr ""
-"Hibernateはいつもデータベースのロックの仕組みを使います。 メモリ内のオブジェ"
-"クトを決してロックしません!"
+"Hibernate はいつもデータベースのロックの仕組みを使います。メモリ内のオブジェ"
+"クトを決してロックしません。"
#. Tag: para
-#: transactions.xml:872
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>LockMode</literal> class defines the different lock levels
that "
"can be acquired by Hibernate. A lock is obtained by the following
mechanisms:"
msgstr ""
-"<literal>LockMode</literal> クラスは、Hibernateが獲得できる異なるロックレベル"
-"を定義します。 以下の仕組みにより、ロックを獲得できます。"
+"<literal>LockMode</literal> クラスは、 Hibernate が獲得できる異なるロックレベ"
+"ルを定義します。以下の仕組みにより、ロックを獲得できます。"
#. Tag: para
-#: transactions.xml:879
#, no-c-format
msgid ""
"<literal>LockMode.WRITE</literal> is acquired automatically when
Hibernate "
"updates or inserts a row."
msgstr ""
-"<literal>LockMode.WRITE</literal> は、 Hibernateが行を更新もしくは挿入する際"
+"<literal>LockMode.WRITE</literal> は、 Hibernate が行を更新もしくは挿入する際"
"に自動的に得られます。"
#. Tag: para
-#: transactions.xml:885
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>LockMode.UPGRADE</literal> can be acquired upon explicit user
"
"request using <literal>SELECT ... FOR UPDATE</literal> on databases
which "
"support that syntax."
msgstr ""
-"<literal>LockMode.UPGRADE</literal> は、 データベースでサポートされている文"
-"法 <literal>SELECT ... FOR UPDATE</literal> を使った、明示的なユーザー要求に"
-"より得られるかもしれません。"
+"<literal>LockMode.UPGRADE</literal> は、データベースでサポートされている文法 "
+"<literal>SELECT ... FOR UPDATE</literal> を使った、明示的なユーザー要求により"
+"得られるかもしれません。"
#. Tag: para
-#: transactions.xml:891
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>LockMode.UPGRADE_NOWAIT</literal> can be acquired upon
explicit "
"user request using a <literal>SELECT ... FOR UPDATE NOWAIT</literal>
under "
"Oracle."
msgstr ""
"<literal>LockMode.UPGRADE_NOWAIT</literal> は、 Oracle で "
-"<literal>SELECT ... FOR UPDATE NOWAIT</literal> を使った、 明示的なユーザー要"
+"<literal>SELECT ... FOR UPDATE NOWAIT</literal> を使った、明示的なユーザー要"
"求により得られるかもしれません。"
#. Tag: para
-#: transactions.xml:897
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>LockMode.READ</literal> is acquired automatically when
Hibernate "
"reads data under Repeatable Read or Serializable isolation level. It can be "
"re-acquired by explicit user request."
msgstr ""
-"<literal>LockMode.READ</literal> は、 Repeatable
ReadもしくはSerializableの分"
-"離レベルで、データを読んだ際に自動的に得られます。 おそらく、明示的なユーザー"
-"要求により、再取得されます。"
+"<literal>LockMode.READ</literal> は、 Repeatable Read もしくは Serializable
"
+"の分離レベルで、データを読んだ際に自動的に得られます。おそらく、明示的なユー"
+"ザー要求により、再取得されます。"
#. Tag: para
-#: transactions.xml:904
#, no-c-format
msgid ""
"<literal>LockMode.NONE</literal> represents the absence of a lock. All
"
@@ -1848,20 +1567,18 @@
"mode."
msgstr ""
"<literal>LockMode.NONE</literal> は、ロックしないことを表します。 "
-"<literal>Transaction</literal> の終わりに、 すべてのオブジェクトはこのロック"
+"<literal>Transaction</literal> の終わりに、すべてのオブジェクトはこのロック"
"モードに切り替わります。 <literal>update()</literal> や
<literal>saveOrUpdate"
-"()</literal> を呼び出すことによって、 セッションに関連付けられたオブジェクト"
+"()</literal> を呼び出すことによって、セッションに関連付けられたオブジェクト"
"も、このロックモードで出発します。"
#. Tag: para
-#: transactions.xml:913
#, no-c-format
msgid ""
"The \"explicit user request\" is expressed in one of the following
ways:"
msgstr "「明示的なユーザー要求」とは、下記の方法の1つで言い表せます。"
#. Tag: para
-#: transactions.xml:919
#, no-c-format
msgid ""
"A call to <literal>Session.load()</literal>, specifying a
<literal>LockMode</"
@@ -1871,19 +1588,16 @@
"び出し。"
#. Tag: para
-#: transactions.xml:924
#, no-c-format
msgid "A call to <literal>Session.lock()</literal>."
msgstr "<literal>Session.lock()</literal> の呼び出し。"
#. Tag: para
-#: transactions.xml:929
#, no-c-format
msgid "A call to <literal>Query.setLockMode()</literal>."
msgstr "<literal>Query.setLockMode()</literal> の呼び出し。"
#. Tag: para
-#: transactions.xml:935
#, no-c-format
msgid ""
"If <literal>Session.load()</literal> is called with
<literal>UPGRADE</"
@@ -1895,16 +1609,15 @@
"object."
msgstr ""
"<literal>UPGRADE</literal> もしくは
<literal>UPGRADE_NOWAIT</literal> が指定"
-"された <literal>Session.load()</literal> が呼び出され、 かつ要求されたオブ"
-"ジェクトがセッションによってまだロードされていなかった場合は、 "
+"された <literal>Session.load()</literal> が呼び出され、かつ要求されたオブジェ"
+"クトがセッションによってまだロードされていなかった場合は、 "
"<literal>SELECT ... FOR UPDATE</literal> を使って、オブジェクトがロードされま"
-"す。 <literal>load()</literal> で呼び出されたオブジェクトが、 要求されている"
-"より制限が少ないロックですでにロードされていた場合は、 Hibernateはそのオブ"
-"ジェクトのために、<literal>lock()</literal> を呼び出します。"
+"す。 <literal>load()</literal> で呼び出されたオブジェクトが、要求されているよ"
+"り制限が少ないロックですでにロードされていた場合は、 Hibernate はそのオブジェ"
+"クトのために、 <literal>lock()</literal> を呼び出します。"
#. Tag: para
-#: transactions.xml:944
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>Session.lock()</literal> performs a version number check if
the "
"specified lock mode is <literal>READ</literal>,
<literal>UPGRADE</literal> "
@@ -1912,33 +1625,30 @@
"literal> or <literal>UPGRADE_NOWAIT</literal>, <literal>SELECT
... FOR "
"UPDATE</literal> is used."
msgstr ""
-"指定されたロックモードが <literal>READ</literal>
もしくは、<literal>UPGRADE</"
-"literal>、 <literal>UPGRADE_NOWAIT</literal>
だった場合、<literal>Session."
-"lock()</literal> は、バージョン番号のチェックを実施します。 "
+"指定されたロックモードが <literal>READ</literal> もしくは、 "
+"<literal>UPGRADE</literal> 、
<literal>UPGRADE_NOWAIT</literal> だった場合、 "
+"<literal>Session.lock()</literal> は、バージョン番号のチェックを実施します。 "
"(<literal>UPGRADE</literal> もしくは
<literal>UPGRADE_NOWAIT</literal> の場"
"合、 <literal>SELECT ... FOR UPDATE</literal> が使われます。)"
#. Tag: para
-#: transactions.xml:951
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"If the requested lock mode is not supported by the database, Hibernate uses "
"an appropriate alternate mode instead of throwing an exception. This ensures
"
"that applications are portable."
msgstr ""
-"データベースが要求されたロックモードをサポートしていない場合、 Hibernateは"
-"(例外を投げる代わりに、)適切な代わりのモードを使います。 これは、アプリケー"
+"データベースが要求されたロックモードをサポートしていない場合、 Hibernate は"
+"(例外を投げる代わりに、)適切な代わりのモードを使います。これは、アプリケー"
"ションがポータブルであることを保証します。"
#. Tag: title
-#: transactions.xml:960
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Connection release modes"
msgstr "コネクション開放モード"
#. Tag: para
-#: transactions.xml:962
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"One of the legacies of Hibernate 2.x JDBC connection management meant that a
"
"<literal>Session</literal> would obtain a connection when it was first
"
@@ -1951,40 +1661,37 @@
"by the enumerated values of
<literal>org.hibernate.ConnectionReleaseMode</"
"literal>:"
msgstr ""
-"Hibernateのレガシー(2.x)のJDBCコネクション管理に関する振る舞いは、 最初に必"
-"要とした際に <literal>Session</literal> がコネクションを得るというものでし"
-"た。 そして、セッションが閉じられるまで、そのコネクションを保持しました。 "
-"Hibernate 3.xは、セッションにJDBCコネクションをどのように制御するかを伝える "
-"コネクション開放モードという概念を導入しました。 以降の議論は、構成された "
-"<literal>ConnectionProvider</literal> を通して提供される コネクションに適切で"
-"あることに注意してください。 異なる開放モードは、<literal>org.hibernate."
-"ConnectionReleaseMode</literal> に 列挙された値により確認されます。"
+"Hibernate のレガシー(2.x)の JDBC コネクション管理に関する振る舞いは、最初に"
+"必要とした際に <literal>Session</literal> がコネクションを得るというものでし"
+"た。そして、セッションが閉じられるまで、そのコネクションを保持しました。 "
+"Hibernate 3.x は、セッションに JDBC コネクションをどのように制御するかを伝え"
+"るコネクション開放モードという概念を導入しました。以降の議論は、構成された "
+"<literal>ConnectionProvider</literal> を通して提供されるコネクションに適切で"
+"あることに注意してください。異なる開放モードは、 <literal>org.hibernate."
+"ConnectionReleaseMode</literal> に列挙された値により確認されます。"
#. Tag: para
-#: transactions.xml:976
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>ON_CLOSE</literal>: is the legacy behavior described above.
The "
"Hibernate session obtains a connection when it first needs to perform some "
"JDBC access and maintains that connection until the session is closed."
msgstr ""
"<literal>ON_CLOSE</literal> - 本質的に上記で述べたレガシーの振る舞いです。 "
-"Hibernateセッションは最初にJDBCアクセスを実行する必要がある際にコネクションを"
-"得ます。 そして、セッションが閉じられるまで、コネクションを保持します。"
+"Hibernate セッションは最初に JDBC アクセスを実行する必要がある際にコネクショ"
+"ンを得ます。そして、セッションが閉じられるまで、コネクションを保持します。"
#. Tag: para
-#: transactions.xml:983
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>AFTER_TRANSACTION</literal>: releases connections after a
"
"<literal>org.hibernate.Transaction</literal> has been completed."
msgstr ""
"<literal>AFTER_TRANSACTION</literal> -
<literal>org.hibernate.Transaction</"
-"literal> が完了した後、 コネクションを開放します。"
+"literal> が完了した後、コネクションを開放します。"
#. Tag: para
-#: transactions.xml:989
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>AFTER_STATEMENT</literal> (also referred to as aggressive
release): "
"releases connections after every statement execution. This aggressive "
@@ -1993,26 +1700,24 @@
"the use of <literal>org.hibernate.ScrollableResults</literal>."
msgstr ""
"<literal>AFTER_STATEMENT</literal> (積極的な開放とも呼ばれる) - すべてのス"
-"テートメントがそれぞれ実行された後、コネクションが開放されます。 ステートメン"
-"トがセッションに関連するリソースを開いたままにする場合は、 この積極的な開放は"
-"スキップされます。 今のところ、これが起こるのは <literal>org.hibernate."
+"テートメントがそれぞれ実行された後、コネクションが開放されます。ステートメン"
+"トがセッションに関連するリソースを開いたままにする場合は、この積極的な開放は"
+"スキップされます。今のところ、これが起こるのは <literal>org.hibernate."
"ScrollableResults</literal> が使われる場合のみです。"
#. Tag: para
-#: transactions.xml:999
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The configuration parameter
<literal>hibernate.connection.release_mode</"
"literal> is used to specify which release mode to use. The possible values
"
"are as follows:"
msgstr ""
"コンフィグレーションパラメータの <literal>hibernate.connection.release_mode</"
-"literal> は、使用する開放モードを指定するために使います。 指定できる値は次の"
-"通りです。"
+"literal> は、使用する開放モードを指定するために使います。指定できる値は次の通"
+"りです:"
#. Tag: para
-#: transactions.xml:1006
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>auto</literal> (the default): this choice delegates to the
release "
"mode returned by the
<literal>org.hibernate.transaction.TransactionFactory."
@@ -2024,26 +1729,24 @@
msgstr ""
"<literal>auto</literal> (デフォルト) - これを選択すると <literal>org."
"hibernate.transaction.TransactionFactory.getDefaultReleaseMode()</literal>
メ"
-"ソッドによって返される開放モードに委譲されます。 このメソッドは、 "
-"JTATransactionFactoryにはConnectionReleaseMode.AFTER_STATEMENTを返し、 "
-"JDBCTransactionFactoryにはConnectionReleaseMode.AFTER_TRANSACTIONを返しま"
-"す。 このデフォルトの振る舞いを変えてうまくいった試しがありません。 それは、"
-"この設定値が原因で起こる障害は、 ユーザコードの中でバグや間違った条件になりや"
+"ソッドによって返される開放モードに委譲されます。このメソッドは、 "
+"JTATransactionFactory には ConnectionReleaseMode.AFTER_STATEMENT を返し、 "
+"JDBCTransactionFactory には ConnectionReleaseMode.AFTER_TRANSACTION を返しま"
+"す。このデフォルトの振る舞いを変えてうまくいった試しがありません。それは、こ"
+"の設定値が原因で起こる障害は、ユーザーコードの中でバグや間違った条件になりや"
"すいからです。"
#. Tag: para
-#: transactions.xml:1016
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>on_close</literal>: uses ConnectionReleaseMode.ON_CLOSE. This
"
"setting is left for backwards compatibility, but its use is discouraged."
msgstr ""
-"<literal>on_close</literal> - ConnectionReleaseMode.ON_CLOSEを使います。
この"
+"<literal>on_close</literal> - ConnectionReleaseMode.ON_CLOSE
を使います。この"
"設定は後方互換のために残されていますが、使わないことを強く勧めます。"
#. Tag: para
-#: transactions.xml:1022
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>after_transaction</literal>: uses
ConnectionReleaseMode."
"AFTER_TRANSACTION. This setting should not be used in JTA environments. Also
"
@@ -2052,14 +1755,13 @@
"release mode were AFTER_STATEMENT."
msgstr ""
"<literal>after_transaction</literal> - ConnectionReleaseMode."
-"AFTER_TRANSACTIONを使います。 この設定はJTA環境の中では使うべきではありませ"
-"ん。 ConnectionReleaseMode.AFTER_TRANSACTIONを指定し、自動コミットモードの中"
-"では、 開放モードがAFTER_STATEMENTであるかのように、コネクションは開放される"
+"AFTER_TRANSACTION を使います。この設定は JTA 環境の中では使うべきではありませ"
+"ん。 ConnectionReleaseMode.AFTER_TRANSACTION を指定し、自動コミットモードの中"
+"では、開放モードが AFTER_STATEMENT であるかのように、コネクションは開放される"
"ことに注意してください。"
#. Tag: para
-#: transactions.xml:1030
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>after_statement</literal>: uses ConnectionReleaseMode."
"AFTER_STATEMENT. Additionally, the configured
<literal>ConnectionProvider</"
@@ -2071,11 +1773,287 @@
"getConnection()</literal> or in auto-commit environments where it does not
"
"matter if we re-establish the same connection."
msgstr ""
-"<literal>after_statement</literal> -
ConnectionReleaseMode.AFTER_STATEMENTを"
-"使います。 さらに、設定された <literal>ConnectionProvider</literal> は、 この"
-"設定 (<literal>supportsAggressiveRelease()</literal>) をサポートするかどうか "
-"を調べるために使用します。 もしそうでない場合、開放モードは"
-"ConnectionReleaseMode.AFTER_TRANSACTION にリセットされます。 この設定は次の環"
-"境でのみ安全です。 それは、<literal>ConnectionProvider.getConnection()</"
-"literal> を呼び出すたびに 基盤となるJDBCコネクションが同じものを取得できる"
-"か、 同じコネクションが得られることが問題とならない自動コミット環境の中です。"
+"<literal>after_statement</literal> -
ConnectionReleaseMode.AFTER_STATEMENT を"
+"使います。さらに、設定された <literal>ConnectionProvider</literal> は、この設"
+"定 (<literal>supportsAggressiveRelease()</literal>) をサポートするかどうかを"
+"調べるために使用します。もしそうでない場合、開放モードは "
+"ConnectionReleaseMode.AFTER_TRANSACTION にリセットされます。この設定は次の環"
+"境でのみ安全です。それは、 <literal>ConnectionProvider.getConnection()</"
+"literal> を呼び出すたびに基盤となる JDBC コネクションが同じものを取得できる"
+"か、同じコネクションが得られることが問題とならない自動コミット環境の中です。"
+
+#~ msgid "foo==bar"
+#~ msgstr "foo==bar"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// Non-managed environment idiom\n"
+#~ "Session sess = factory.openSession();\n"
+#~ "Transaction tx = null;\n"
+#~ "try {\n"
+#~ " tx = sess.beginTransaction();\n"
+#~ "\n"
+#~ " // do some work\n"
+#~ " ...\n"
+#~ "\n"
+#~ " tx.commit();\n"
+#~ "}\n"
+#~ "catch (RuntimeException e) {\n"
+#~ " if (tx != null) tx.rollback();\n"
+#~ " throw e; // or display error message\n"
+#~ "}\n"
+#~ "finally {\n"
+#~ " sess.close();\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "// Non-managed environment idiom\n"
+#~ "Session sess = factory.openSession();\n"
+#~ "Transaction tx = null;\n"
+#~ "try {\n"
+#~ " tx = sess.beginTransaction();\n"
+#~ "\n"
+#~ " // do some work\n"
+#~ " ...\n"
+#~ "\n"
+#~ " tx.commit();\n"
+#~ "}\n"
+#~ "catch (RuntimeException e) {\n"
+#~ " if (tx != null) tx.rollback();\n"
+#~ " throw e; // or display error message\n"
+#~ "}\n"
+#~ "finally {\n"
+#~ " sess.close();\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// Non-managed environment idiom with getCurrentSession()\n"
+#~ "try {\n"
+#~ " factory.getCurrentSession().beginTransaction();\n"
+#~ "\n"
+#~ " // do some work\n"
+#~ " ...\n"
+#~ "\n"
+#~ " factory.getCurrentSession().getTransaction().commit();\n"
+#~ "}\n"
+#~ "catch (RuntimeException e) {\n"
+#~ " factory.getCurrentSession().getTransaction().rollback();\n"
+#~ " throw e; // or display error message\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "// Non-managed environment idiom with getCurrentSession()\n"
+#~ "try {\n"
+#~ " factory.getCurrentSession().beginTransaction();\n"
+#~ "\n"
+#~ " // do some work\n"
+#~ " ...\n"
+#~ "\n"
+#~ " factory.getCurrentSession().getTransaction().commit();\n"
+#~ "}\n"
+#~ "catch (RuntimeException e) {\n"
+#~ " factory.getCurrentSession().getTransaction().rollback();\n"
+#~ " throw e; // or display error message\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// BMT idiom\n"
+#~ "Session sess = factory.openSession();\n"
+#~ "Transaction tx = null;\n"
+#~ "try {\n"
+#~ " tx = sess.beginTransaction();\n"
+#~ "\n"
+#~ " // do some work\n"
+#~ " ...\n"
+#~ "\n"
+#~ " tx.commit();\n"
+#~ "}\n"
+#~ "catch (RuntimeException e) {\n"
+#~ " if (tx != null) tx.rollback();\n"
+#~ " throw e; // or display error message\n"
+#~ "}\n"
+#~ "finally {\n"
+#~ " sess.close();\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "// BMT idiom\n"
+#~ "Session sess = factory.openSession();\n"
+#~ "Transaction tx = null;\n"
+#~ "try {\n"
+#~ " tx = sess.beginTransaction();\n"
+#~ "\n"
+#~ " // do some work\n"
+#~ " ...\n"
+#~ "\n"
+#~ " tx.commit();\n"
+#~ "}\n"
+#~ "catch (RuntimeException e) {\n"
+#~ " if (tx != null) tx.rollback();\n"
+#~ " throw e; // or display error message\n"
+#~ "}\n"
+#~ "finally {\n"
+#~ " sess.close();\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// BMT idiom with getCurrentSession()\n"
+#~ "try {\n"
+#~ " UserTransaction tx = (UserTransaction)new InitialContext()\n"
+#~ "
.lookup(\"java:comp/UserTransaction\");\n"
+#~ "\n"
+#~ " tx.begin();\n"
+#~ "\n"
+#~ " // Do some work on Session bound to transaction\n"
+#~ " factory.getCurrentSession().load(...);\n"
+#~ " factory.getCurrentSession().persist(...);\n"
+#~ "\n"
+#~ " tx.commit();\n"
+#~ "}\n"
+#~ "catch (RuntimeException e) {\n"
+#~ " tx.rollback();\n"
+#~ " throw e; // or display error message\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "// BMT idiom with getCurrentSession()\n"
+#~ "try {\n"
+#~ " UserTransaction tx = (UserTransaction)new InitialContext()\n"
+#~ "
.lookup(\"java:comp/UserTransaction\");\n"
+#~ "\n"
+#~ " tx.begin();\n"
+#~ "\n"
+#~ " // Do some work on Session bound to transaction\n"
+#~ " factory.getCurrentSession().load(...);\n"
+#~ " factory.getCurrentSession().persist(...);\n"
+#~ "\n"
+#~ " tx.commit();\n"
+#~ "}\n"
+#~ "catch (RuntimeException e) {\n"
+#~ " tx.rollback();\n"
+#~ " throw e; // or display error message\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// CMT idiom\n"
+#~ " Session sess = factory.getCurrentSession();\n"
+#~ "\n"
+#~ " // do some work\n"
+#~ " ...\n"
+#~ "]]>"
+#~ msgstr ""
+#~ "// CMT idiom\n"
+#~ " Session sess = factory.getCurrentSession();\n"
+#~ "\n"
+#~ " // do some work\n"
+#~ " ..."
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[\n"
+#~ "Session sess = factory.openSession();\n"
+#~ "try {\n"
+#~ " //set transaction timeout to 3 seconds\n"
+#~ " sess.getTransaction().setTimeout(3);\n"
+#~ " sess.getTransaction().begin();\n"
+#~ "\n"
+#~ " // do some work\n"
+#~ " ...\n"
+#~ "\n"
+#~ " sess.getTransaction().commit()\n"
+#~ "}\n"
+#~ "catch (RuntimeException e) {\n"
+#~ " sess.getTransaction().rollback();\n"
+#~ " throw e; // or display error message\n"
+#~ "}\n"
+#~ "finally {\n"
+#~ " sess.close();\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "Session sess = factory.openSession();\n"
+#~ "try {\n"
+#~ " //set transaction timeout to 3 seconds\n"
+#~ " sess.getTransaction().setTimeout(3);\n"
+#~ " sess.getTransaction().begin();\n"
+#~ "\n"
+#~ " // do some work\n"
+#~ " ...\n"
+#~ "\n"
+#~ " sess.getTransaction().commit()\n"
+#~ "}\n"
+#~ "catch (RuntimeException e) {\n"
+#~ " sess.getTransaction().rollback();\n"
+#~ " throw e; // or display error message\n"
+#~ "}\n"
+#~ "finally {\n"
+#~ " sess.close();\n"
+#~ "}"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// foo is an instance loaded by a previous Session\n"
+#~ "session = factory.openSession();\n"
+#~ "Transaction t = session.beginTransaction();\n"
+#~ "\n"
+#~ "int oldVersion = foo.getVersion();\n"
+#~ "session.load( foo, foo.getKey() ); // load the current state\n"
+#~ "if ( oldVersion != foo.getVersion() ) throw new StaleObjectStateException"
+#~ "();\n"
+#~ "foo.setProperty(\"bar\");\n"
+#~ "\n"
+#~ "t.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "// foo is an instance loaded by a previous Session\n"
+#~ "session = factory.openSession();\n"
+#~ "Transaction t = session.beginTransaction();\n"
+#~ "\n"
+#~ "int oldVersion = foo.getVersion();\n"
+#~ "session.load( foo, foo.getKey() ); // load the current state\n"
+#~ "if ( oldVersion!=foo.getVersion ) throw new
StaleObjectStateException();\n"
+#~ "foo.setProperty(\"bar\");\n"
+#~ "\n"
+#~ "t.commit();\n"
+#~ "session.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// foo is an instance loaded earlier by the old session\n"
+#~ "Transaction t = session.beginTransaction(); // Obtain a new JDBC "
+#~ "connection, start transaction\n"
+#~ "\n"
+#~ "foo.setProperty(\"bar\");\n"
+#~ "\n"
+#~ "session.flush(); // Only for last transaction in conversation\n"
+#~ "t.commit(); // Also return JDBC connection\n"
+#~ "session.close(); // Only for last transaction in conversation]]>"
+#~ msgstr ""
+#~ "// foo is an instance loaded earlier by the old session\n"
+#~ "Transaction t = session.beginTransaction(); // Obtain a new JDBC "
+#~ "connection, start transaction\n"
+#~ "\n"
+#~ "foo.setProperty(\"bar\");\n"
+#~ "\n"
+#~ "session.flush(); // Only for last transaction in conversation\n"
+#~ "t.commit(); // Also return JDBC connection\n"
+#~ "session.close(); // Only for last transaction in conversation"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[// foo is an instance loaded by a previous Session\n"
+#~ "foo.setProperty(\"bar\");\n"
+#~ "session = factory.openSession();\n"
+#~ "Transaction t = session.beginTransaction();\n"
+#~ "session.saveOrUpdate(foo); // Use merge() if \"foo\" might have been
"
+#~ "loaded already\n"
+#~ "t.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "// foo is an instance loaded by a previous Session\n"
+#~ "foo.setProperty(\"bar\");\n"
+#~ "session = factory.openSession();\n"
+#~ "Transaction t = session.beginTransaction();\n"
+#~ "session.saveOrUpdate(foo); // Use merge() if \"foo\" might have been
"
+#~ "loaded already\n"
+#~ "t.commit();\n"
+#~ "session.close();"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/tutorial.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/tutorial.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/tutorial.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,23 +1,24 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2009, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-23 18:41+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2010-01-08T04:07:20\n"
+"PO-Revision-Date: 2010-01-21 16:43+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: tutorial.xml:31
#, no-c-format
msgid "Tutorial"
msgstr ""
#. Tag: para
-#: tutorial.xml:33
#, no-c-format
msgid ""
"Intended for new users, this chapter provides an step-by-step introduction "
@@ -28,7 +29,6 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:42
#, no-c-format
msgid ""
"This tutorial expects the user have knowledge of both Java and SQL. If you "
@@ -37,7 +37,6 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:51
#, no-c-format
msgid ""
"The distribution contains another example application under the "
@@ -45,24 +44,21 @@
msgstr ""
#. Tag: title
-#: tutorial.xml:59
#, no-c-format
msgid "Part 1 - The first Hibernate Application"
-msgstr "パート1 - 初めてのHibernateアプリケーション"
+msgstr "パート1 - 初めての Hibernate アプリケーション"
#. Tag: para
-#: tutorial.xml:61
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For this example, we will set up a small database application that can store
"
"events we want to attend and information about the host(s) of these events."
msgstr ""
-"仮に小さなデータベースアプリケーションが必要だとしましょう。 そのアプリケー"
-"ションには出席したいイベントと、 そのイベントのホストについての情報を格納する"
+"仮に小さなデータベースアプリケーションが必要だとしましょう。そのアプリケー"
+"ションには出席したいイベントと、そのイベントのホストについての情報を格納する"
"ものとします。"
#. Tag: para
-#: tutorial.xml:67
#, no-c-format
msgid ""
"Although you can use whatever database you feel comfortable using, we will "
@@ -72,13 +68,11 @@
msgstr ""
#. Tag: title
-#: tutorial.xml:76
#, no-c-format
msgid "Setup"
msgstr ""
#. Tag: para
-#: tutorial.xml:78
#, no-c-format
msgid ""
"The first thing we need to do is to set up the development environment. We "
@@ -92,7 +86,6 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:88
#, no-c-format
msgid ""
"We will be using Maven in this tutorial, taking advantage of its transitive "
@@ -100,143 +93,43 @@
"automatically set up a project for us based on the maven descriptor."
msgstr ""
-#. Tag: programlisting
-#: tutorial.xml:94
-#, no-c-format
-msgid ""
-"<![CDATA[<project
xmlns=\"http://maven.apache.org/POM/4.0.0\"\n"
-"
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"
-"
xsi:schemaLocation=\"http://maven.apache.org/POM/4.0.0
http://maven."
-"apache.org/xsd/maven-4.0.0.xsd\">\n"
-"\n"
-" <modelVersion>4.0.0</modelVersion>\n"
-"\n"
-" <groupId>org.hibernate.tutorials</groupId>\n"
-" <artifactId>hibernate-tutorial</artifactId>\n"
-" <version>1.0.0-SNAPSHOT</version>\n"
-" <name>First Hibernate Tutorial</name>\n"
-"\n"
-" <build>\n"
-" <!-- we dont want the version to be part of the generated war file
"
-"name -->\n"
-" <finalName>${artifactId}</finalName>\n"
-" </build>\n"
-"\n"
-" <dependencies>\n"
-" <dependency>\n"
-" <groupId>org.hibernate</groupId>\n"
-" <artifactId>hibernate-core</artifactId>\n"
-" </dependency>\n"
-"\n"
-" <!-- Because this is a web app, we also have a dependency on the "
-"servlet api. -->\n"
-" <dependency>\n"
-" <groupId>javax.servlet</groupId>\n"
-" <artifactId>servlet-api</artifactId>\n"
-" </dependency>\n"
-"\n"
-" <!-- Hibernate uses slf4j for logging, for our purposes here use the
"
-"simple backend -->\n"
-" <dependency>\n"
-" <groupId>org.slf4j</groupId>\n"
-" <artifactId>slf4j-simple</artifactId>\n"
-" </dependency>\n"
-"\n"
-" <!-- Hibernate gives you a choice of bytecode providers between "
-"cglib and javassist -->\n"
-" <dependency>\n"
-" <groupId>javassist</groupId>\n"
-" <artifactId>javassist</artifactId>\n"
-" </dependency>\n"
-" </dependencies>\n"
-"\n"
-"</project>]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:97
#, no-c-format
msgid ""
-"It is not a requirement to use Maven. If you wish to use something else to "
-"build this tutoial (such as Ant), the layout will remain the same. The only "
-"change is that you will need to manually account for all the needed "
-"dependencies. If you use something like <ulink
url=\"http://ant.apache.org/"
-"ivy/\">Ivy</ulink> providing transitive dependency management you
would "
-"still use the dependencies mentioned below. Otherwise, you'd need to grab
"
-"<emphasis>all</emphasis> dependencies, both explicit and transitive,
and add "
-"them to the project's classpath. If working from the Hibernate distribution
"
-"bundle, this would mean <filename>hibernate3.jar</filename>, all
artifacts "
-"in the <filename>lib/required</filename> directory and all files from
either "
-"the <filename>lib/bytecode/cglib</filename> or
<filename>lib/bytecode/"
-"javassist</filename> directory; additionally you will need both the
servlet-"
-"api jar and one of the slf4j logging backends."
+"It is not a requirement to use Maven. If you wish to use another technology "
+"to build this tutorial (such as Ant), the layout will remain the same. The "
+"only change is that you will need to manually account for all the needed "
+"dependencies. If you use <ulink
url=\"http://ant.apache.org/ivy/\">Ivy</"
+"ulink> to provide transitive dependency management you would still use the
"
+"dependencies mentioned below. Otherwise, you will need to find all the "
+"dependencies, both explicit and transitive, and add them to the projects "
+"classpath. If working from the Hibernate distribution bundle, this would "
+"mean <filename>hibernate3.jar</filename>, all artifacts in the
<filename>lib/"
+"required</filename> directory and all files from either the
<filename>lib/"
+"bytecode/cglib</filename> or
<filename>lib/bytecode/javassist</filename> "
+"directory; additionally you will need both the servlet-api jar and one of "
+"the slf4j logging backends."
msgstr ""
#. Tag: para
-#: tutorial.xml:114
#, no-c-format
msgid ""
"Save this file as <filename>pom.xml</filename> in the project root
directory."
msgstr ""
#. Tag: title
-#: tutorial.xml:121
#, no-c-format
msgid "The first class"
msgstr "最初のクラス"
#. Tag: para
-#: tutorial.xml:123
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Next, we create a class that represents the event we want to store in the "
"database; it is a simple JavaBean class with some properties:"
msgstr "次にデータベースに格納するイベントを表すクラスを作成します。"
-#. Tag: programlisting
-#: tutorial.xml:128
-#, no-c-format
-msgid ""
-"<![CDATA[package org.hibernate.tutorial.domain;\n"
-"\n"
-"import java.util.Date;\n"
-"\n"
-"public class Event {\n"
-" private Long id;\n"
-"\n"
-" private String title;\n"
-" private Date date;\n"
-"\n"
-" public Event() {}\n"
-"\n"
-" public Long getId() {\n"
-" return id;\n"
-" }\n"
-"\n"
-" private void setId(Long id) {\n"
-" this.id = id;\n"
-" }\n"
-"\n"
-" public Date getDate() {\n"
-" return date;\n"
-" }\n"
-"\n"
-" public void setDate(Date date) {\n"
-" this.date = date;\n"
-" }\n"
-"\n"
-" public String getTitle() {\n"
-" return title;\n"
-" }\n"
-"\n"
-" public void setTitle(String title) {\n"
-" this.title = title;\n"
-" }\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:130
#, fuzzy, no-c-format
msgid ""
"This class uses standard JavaBean naming conventions for property getter and
"
@@ -245,16 +138,15 @@
"fields directly, the benefit of accessor methods is robustness for "
"refactoring."
msgstr ""
-"ご覧のとおり、このクラスはフィールドがprivateの可視性を持っているのと同時"
-"に、 JavaBean標準のゲッター、セッターメソッドの命名規約に従っています。 この"
-"ような設計は推奨されていますが必須ではありません。 アクセサメソッドを設けるの"
-"はリファクタリングを考えた頑健性のためで、 Hibernateはフィールドに直接アクセ"
-"スすることも可能です。 引数のないコンストラクタは、リフレクションでこのクラス"
-"のインスタンスを作成するために 必要です。"
+"ご覧のとおり、このクラスはフィールドが private の可視性を持っているのと同時"
+"に、 JavaBean 標準のゲッター、セッターメソッドの命名規約に従っています。この"
+"ような設計は推奨されていますが必須ではありません。アクセサメソッドを設けるの"
+"はリファクタリングを考えた頑健性のためで、 Hibernate はフィールドに直接アクセ"
+"スすることも可能です。引数のないコンストラクタは、リフレクションでこのクラス"
+"のインスタンスを作成するために必要です。"
#. Tag: para
-#: tutorial.xml:138
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>id</literal> property holds a unique identifier value for
a "
"particular event. All persistent entity classes (there are less important "
@@ -269,21 +161,20 @@
"to you and you can match it to fit your application design."
msgstr ""
"<literal>id</literal> プロパティは、ある特定のイベントに対するユニークな識別"
-"子の値を保持します。 Hibernateの完全な機能を使いたければ、すべての永続エン"
+"子の値を保持します。 Hibernate の完全な機能を使いたければ、すべての永続エン"
"ティティクラス (それほど重要ではない依存クラスというものもあります) にこの"
-"ような識別子プロパティが必要になります。 事実上ほとんどのアプリケーション(特"
-"にwebアプリケーション)では、 識別子でオブジェクトを区別する必要があるため、"
-"これは制限というよりも特徴であると考えるべきです。 しかし通常オブジェクトのID"
-"を操作するようなことはしません。 そのためセッターメソッドはprivateにするべき"
-"です。 Hibernateだけがオブジェクトがセーブされたときに識別子へ値を代入しま"
-"す。 Hibernateが(public, private, protected)フィールドに直接アクセスできる"
-"のと同様に、 public, private, protectedのアクセサメソッドにアクセスできるとい"
-"うことがわかるでしょう。 選択はあなたに任されているので、あなたのアプリケー"
-"ションの設計に合わせることができます。"
+"ような識別子プロパティが必要になります。事実上ほとんどのアプリケーション "
+"( 特に web アプリケーション) では、識別子でオブジェクトを区別する必要がある"
+"ため、これは制限というよりも特徴であると考えるべきです。しかし通常オブジェク"
+"トの ID を操作するようなことはしません。そのためセッターメソッドは private に"
+"するべきです。 Hibernate だけがオブジェクトがセーブされたときに識別子へ値を代"
+"入します。 Hibernate が(public, private, protected)フィールドに直接アクセス"
+"できるのと同様に、 public, private, protected のアクセサメソッドにアクセスで"
+"きるということがわかるでしょう。選択はあなたに任されているので、あなたのアプ"
+"リケーションの設計に合わせることができます。"
#. Tag: para
-#: tutorial.xml:153
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The no-argument constructor is a requirement for all persistent classes; "
"Hibernate has to create objects for you, using Java Reflection. The "
@@ -291,13 +182,12 @@
"for runtime proxy generation and efficient data retrieval without bytecode "
"instrumentation."
msgstr ""
-"引数のないコンストラクタはすべての永続クラスに必須です。 これはHibernateが"
-"Javaのリフレクションを使って、オブジェクトを作成しなければならないためです。 "
-"コンストラクタをprivateにすることは可能ですが、 実行時のプロキシ生成と、バイ"
-"トコード操作なしの効率的なデータの抽出には、 package可視性が必要です。"
+"引数のないコンストラクタはすべての永続クラスに必須です。これは Hibernate が "
+"Java のリフレクションを使って、オブジェクトを作成しなければならないためです。"
+"コンストラクタを private にすることは可能ですが、実行時のプロキシ生成と、バイ"
+"トコード操作なしの効率的なデータの抽出には、 package 可視性が必要です。"
#. Tag: para
-#: tutorial.xml:161
#, no-c-format
msgid ""
"Save this file to the
<filename>src/main/java/org/hibernate/tutorial/domain</"
@@ -305,13 +195,11 @@
msgstr ""
#. Tag: title
-#: tutorial.xml:168
#, no-c-format
msgid "The mapping file"
msgstr "マッピングファイル"
#. Tag: para
-#: tutorial.xml:170
#, no-c-format
msgid ""
"Hibernate needs to know how to load and store objects of the persistent "
@@ -319,35 +207,19 @@
"file tells Hibernate what table in the database it has to access, and what "
"columns in that table it should use."
msgstr ""
-"Hibernateは、どのように永続クラスのオブジェクトをロードし格納すればよいかを知"
-"る必要があります。 ここでHibernateマッピングファイルが登場します。 マッピング"
-"ファイルは、データベース内のどのテーブルにアクセスしなければならないか、 その"
-"テーブルのどのカラムを使うべきかを、Hibernateに教えます。"
+"Hibernate は、どのように永続クラスのオブジェクトをロードし格納すればよいかを"
+"知る必要があります。ここで Hibernate マッピングファイルが登場します。マッピン"
+"グファイルは、データベース内のどのテーブルにアクセスしなければならないか、そ"
+"のテーブルのどのカラムを使うべきかを、 Hibernate に教えます。"
#. Tag: para
-#: tutorial.xml:178
#, no-c-format
msgid "The basic structure of a mapping file looks like this:"
msgstr "マッピングファイルの基本的な構造はこのようになります:"
-#. Tag: programlisting
-#: tutorial.xml:182
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<?xml version=\"1.0\"?>\n"
-"<!DOCTYPE hibernate-mapping PUBLIC\n"
-" \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
-"
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
-"\n"
-"<hibernate-mapping
package=\"org.hibernate.tutorial.domain\">\n"
-"[...]\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:184
-#, fuzzy, no-c-format
-msgid ""
"Hibernate DTD is sophisticated. You can use it for auto-completion of XML "
"mapping elements and attributes in your editor or IDE. Opening up the DTD "
"file in your text editor is the easiest way to get an overview of all "
@@ -357,28 +229,26 @@
"<filename>hibernate-core.jar</filename> (it is also included in the
"
"<filename>hibernate3.jar</filename>, if using the distribution
bundle)."
msgstr ""
-"Hibernate DTDが非常に洗練されていることに注目してください。 このDTDは、エディ"
-"タやIDEでのXMLマッピング要素と属性のオートコンプリーション機能に利用できま"
-"す。 またDTDファイルをテキストエディタで開けてみてください。 というのも、すべ"
-"ての要素と属性を概観し、 コメントやデフォルトの値を見るには一番簡単な方法だか"
-"らです。 Hibernateは、webからDTDファイルをロードせずに、 まずアプリケーション"
-"のクラスパスからこれを探し出そうとすることに注意してください。 DTDファイルは"
-"Hibernateディストリビューションの <literal>src/</literal> ディレクトリと同"
-"様、<literal>hibernate3.jar</literal> にも含まれています。"
+"Hibernate DTD が非常に洗練されていることに注目してください。この DTD は、エ"
+"ディタや IDE での XML マッピング要素と属性のオートコンプリーション機能に利用"
+"できます。また DTD ファイルをテキストエディタで開けてみてください。というの"
+"も、すべての要素と属性を概観し、コメントやデフォルトの値を見るには一番簡単な"
+"方法だからです。 Hibernate は、 web から DTD ファイルをロードせずに、まずアプ"
+"リケーションのクラスパスからこれを探し出そうとすることに注意してください。 "
+"DTD ファイルは Hibernate ディストリビューションの <literal>src/</literal> "
+"ディレクトリと同様、<literal>hibernate3.jar</literal> にも含まれています。"
#. Tag: para
-#: tutorial.xml:197
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"We will omit the DTD declaration in future examples to shorten the code. It "
"is, of course, not optional."
msgstr ""
-"以降の例ではコードを短くするためにDTD宣言を省略します。 当然ですがこれはオプ"
+"以降の例ではコードを短くするために DTD 宣言を省略します。当然ですがこれはオプ"
"ションではありません。"
#. Tag: para
-#: tutorial.xml:203
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Between the two <literal>hibernate-mapping</literal> tags, include a
"
"<literal>class</literal> element. All persistent entity classes (again,
"
@@ -386,27 +256,13 @@
"entities) need a mapping to a table in the SQL database:"
msgstr ""
"2つの <literal>hibernate-mapping</literal> タグの間に
<literal>class</"
-"literal> 要素を含めてください。 すべての永続エンティティクラス(念を押します"
-"が、 ファーストクラスのエンティティではない依存クラスというものが後ほど登場し"
-"ます) はSQLデータベース内のテーブルへのこのようなマッピングを必要とします。"
+"literal> 要素を含めてください。すべての永続エンティティクラス(念を押します"
+"が、ファーストクラスのエンティティではない依存クラスというものが後ほど登場し"
+"ます)は SQL データベース内のテーブルへのこのようなマッピングを必要とします。"
-#. Tag: programlisting
-#: tutorial.xml:210
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<hibernate-mapping
package=\"org.hibernate.tutorial.domain\">\n"
-"\n"
-" <class name=\"Event\" table=\"EVENTS\">\n"
-"\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:212
-#, fuzzy, no-c-format
-msgid ""
"So far we have told Hibernate how to persist and load object of class "
"<literal>Event</literal> to the table
<literal>EVENTS</literal>. Each "
"instance is now represented by a row in that table. Now we can continue by "
@@ -414,31 +270,15 @@
"not want to care about handling this identifier, we configure Hibernate's
"
"identifier generation strategy for a surrogate primary key column:"
msgstr ""
-"これまで私たちは、<literal>Event</literal> クラスのオブジェクトを "
+"これまで私たちは、 <literal>Event</literal> クラスのオブジェクトを "
"<literal>EVENTS</literal> テーブルに対して、どのように永続化したりロードした"
-"りするのかを Hibernateに教えてきました。そして個々のインスタンスはテーブルの"
-"行として表現されます。 それでは引き続きテーブルの主キーに対するユニークな識別"
-"子プロパティをマッピングしていきます。 さらに、この識別子の扱いに気を使いたく"
-"なかったのと同様に、 代理の主キーカラムに対するHibernateの識別子生成戦略を設"
+"りするのかを Hibernate に教えてきました。そして個々のインスタンスはテーブルの"
+"行として表現されます。それでは引き続きテーブルの主キーに対するユニークな識別"
+"子プロパティをマッピングしていきます。さらに、この識別子の扱いに気を使いたく"
+"なかったのと同様に、代理の主キーカラムに対する Hibernate の識別子生成戦略を設"
"定します。"
-#. Tag: programlisting
-#: tutorial.xml:222
-#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-mapping
package=\"org.hibernate.tutorial.domain\">\n"
-"\n"
-" <class name=\"Event\" table=\"EVENTS\">\n"
-" <id name=\"id\" column=\"EVENT_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:224
#, no-c-format
msgid ""
"The <literal>id</literal> element is the declaration of the identifier
"
@@ -450,7 +290,6 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:234
#, no-c-format
msgid ""
"The nested <literal>generator</literal> element specifies the
identifier "
@@ -463,45 +302,25 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:246
#, no-c-format
msgid ""
-"<literal>native</literal> is no longer consider the best strategy in
terms "
-"of portability. for further discussion, see"
+"<literal>native</literal> is no longer considered the best strategy in
terms "
+"of portability. for further discussion, see <xref
linkend=\"portability-idgen"
+"\" />"
msgstr ""
#. Tag: para
-#: tutorial.xml:252
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Lastly, we need to tell Hibernate about the remaining entity class "
"properties. By default, no properties of the class are considered
persistent:"
msgstr ""
-"最後にクラスの永続プロパティの宣言をマッピングファイルに含めます。 デフォルト"
+"最後にクラスの永続プロパティの宣言をマッピングファイルに含めます。デフォルト"
"では、クラスのプロパティは永続と見なされません:"
-#. Tag: programlisting
-#: tutorial.xml:258
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[\n"
-"<hibernate-mapping
package=\"org.hibernate.tutorial.domain\">\n"
-"\n"
-" <class name=\"Event\" table=\"EVENTS\">\n"
-" <id name=\"id\" column=\"EVENT_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"date\" type=\"timestamp\"
column=\"EVENT_DATE\"/>\n"
-" <property name=\"title\"/>\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:260
-#, fuzzy, no-c-format
-msgid ""
"Similar to the <literal>id</literal> element, the
<literal>name</literal> "
"attribute of the <literal>property</literal> element tells Hibernate
which "
"getter and setter methods to use. In this case, Hibernate will search for "
@@ -510,12 +329,11 @@
msgstr ""
"<literal>id</literal> 要素の場合と同様に、
<literal>property</literal> 要素"
"の <literal>name</literal> 属性で、どのゲッターとセッターメソッドを使うべきか"
-"をHibernateに教えます。 この例では、Hibernateは <literal>getDate()/setDate()"
-"</literal> と <literal>getTitle()/setTitle()</literal> を
探します。"
+"を Hibernate に教えます。この例では、 Hibernate は <literal>getDate()/setDate"
+"()</literal> と <literal>getTitle()/setTitle()</literal>
を探します。"
#. Tag: para
-#: tutorial.xml:271
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Why does the <literal>date</literal> property mapping include the
"
"<literal>column</literal> attribute, but the
<literal>title</literal> does "
@@ -525,15 +343,14 @@
"databases so you will need to map it to a different name."
msgstr ""
"なぜ <literal>date</literal> プロパティのマッピングには
<literal>column</"
-"literal> 属性があり、<literal>title</literal> プロパティにはないのでしょう"
-"か? <literal>column</literal> 属性がなければ、Hibernateはプロパティ名をカラ"
-"ム名として使います。 これは <literal>title</literal> では上手く行きます。 し"
-"かし <literal>date</literal> はほとんどのデータベースで予約語なので、 違う名"
-"前でマッピングした方がよいのです。"
+"literal> 属性があり、 <literal>title</literal> プロパティにはないのでしょう"
+"か? <literal>column</literal> 属性がなければ、 Hibernate はデフォルトでプロ"
+"パティ名をカラム名として使います。これは <literal>title</literal> では上手く"
+"いきます。しかし <literal>date</literal> は、ほとんどのデータベースで予約語な"
+"ので、違う名前でマッピングした方がよいのです。"
#. Tag: para
-#: tutorial.xml:281
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The <literal>title</literal> mapping also lacks a
<literal>type</literal> "
"attribute. The types declared and used in the mapping files are not Java "
@@ -551,23 +368,22 @@
"property with a <literal>timestamp</literal> converter."
msgstr ""
"次に興味深いのは <literal>title</literal> マッピングが
<literal>type</"
-"literal> 属性をも欠いている点です。 マッピングファイルで宣言して使うtypeは、"
-"おわかりかもしれませんがJavaのデータ型ではありません。 SQLデータベースの型で"
-"もありません。 これは <emphasis>Hibernateマッピング型</emphasis> と呼ばれ"
-"る、 JavaからSQLデータの型へまたはSQLからJavaデータ型へ翻訳するコンバータで"
-"す。 繰り返しになりますが、Hibernateは <literal>type</literal> 属性がマッピン"
-"グファイル内になければ、 正しいコンバージョンとマッピング型を自分で解決しよう"
-"とします。 (Javaクラスのリフレクションを使った)この自動検知は、 場合によっ"
-"てはあなたが期待または必要とするデフォルト値にならないかもしれません。 "
-"<literal>date</literal> プロパティの場合がそうでした。 Hibernateはこの"
-"( <literal>java.util.Date</literal> の)プロパティを SQLの
<literal>date</"
+"literal> 属性をも欠いている点です。マッピングファイルで宣言して使う type は、"
+"おわかりかもしれませんが Java のデータ型ではありません。 SQL データベースの型"
+"でもありません。これは <emphasis>Hibernateマッピング型</emphasis> と呼ばれ"
+"る、 Java から SQL データの型へまたは SQL から Java データ型へ翻訳するコン"
+"バータです。繰り返しになりますが、 Hibernate は <literal>type</literal> 属性"
+"がマッピングファイル内になければ、正しいコンバージョンとマッピング型を自分で"
+"解決しようとします。 (Javaクラスのリフレクションを使った)この自動検知は、場"
+"合によってはあなたが期待または必要とするデフォルト値にならないかもしれませ"
+"ん。 <literal>date</literal> プロパティの場合がそうでした。 Hibernate はこの"
+"( <literal>java.util.Date</literal> の)プロパティを SQL の
<literal>date</"
"literal> , <literal>timestamp</literal> ,
<literal>time</literal> のうち、ど"
"のカラムにマッピングするべきなのかわかりません。 <literal>timestamp</"
"literal> コンバータでプロパティをマッピングすることにより、完全な日時を保存し"
"ます。"
#. Tag: para
-#: tutorial.xml:297
#, no-c-format
msgid ""
"Hibernate makes this mapping type determination using reflection when the "
@@ -577,7 +393,6 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:304
#, no-c-format
msgid ""
"Save this mapping file as <filename>src/main/resources/org/hibernate/"
@@ -585,13 +400,11 @@
msgstr ""
#. Tag: title
-#: tutorial.xml:312
#, no-c-format
msgid "Hibernate configuration"
-msgstr "Hibernateの設定"
+msgstr "Hibernate の設定"
#. Tag: para
-#: tutorial.xml:314
#, no-c-format
msgid ""
"At this point, you should have the persistent class and its mapping file in "
@@ -600,13 +413,11 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:321
#, no-c-format
-msgid "We do this do that the data remains between runs."
+msgid "We do this so that the data remains between runs."
msgstr ""
#. Tag: para
-#: tutorial.xml:326
#, fuzzy, no-c-format
msgid ""
"We will utilize the Maven exec plugin to launch the HSQLDB server by "
@@ -618,17 +429,16 @@
"filename> directory, and start HSQLDB again."
msgstr ""
"<literal>data</literal> というディレクトリを開発ディレクトリのルートに作成し"
-"てください。 HSQL DBはここにデータファイルを格納します。 このデータディレクト"
-"リにおいて <literal>java -classpath lib/hsqldb.jar org.hsqldb.Server</"
-"literal> を実行し、 データベースを起動させてください。 動作の開始と、TCP/IPソ"
-"ケットのバインドが確認できます。 後ほど作成するアプリケーションはここに接続し"
-"ます。 もしこのチュートリアル中にデータベースを初期化したければ、 HSQL DBを"
+"てください。 HSQL DB はここにデータファイルを格納します。このデータディレクト"
+"リにおいて <literal>java -classpath ../lib/hsqldb.jar
org.hsqldb.Server</"
+"literal> を実行し、データベースを起動させてください。動作の開始と、 TCP/IP ソ"
+"ケットのバインドが確認できます。後ほど作成するアプリケーションはここに接続し"
+"ます。もしこのチュートリアル中にデータベースを初期化したければ、 HSQL DB を"
"シャットダウンして(作業ウィンドウで <literal>CTRL + C</literal> を押しま"
"す) <literal>data/</literal> ディレクトリ内のファイルを全て消去した後、 "
-"HSQL DBを再起動します。"
+"HSQL DB を再起動します。"
#. Tag: para
-#: tutorial.xml:337
#, no-c-format
msgid ""
"Hibernate will be connecting to the database on behalf of your application, "
@@ -642,117 +452,63 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:348
#, no-c-format
msgid ""
-"The built-in Hibernate connection pool is in no way intended for production "
-"use. It lacks several features found on any decent connection pool."
+"The built-in Hibernate connection pool is not intended for production use."
msgstr ""
#. Tag: para
-#: tutorial.xml:354
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For Hibernate's configuration, we can use a simple
<literal>hibernate."
"properties</literal> file, a more sophisticated
<literal>hibernate.cfg.xml</"
"literal> file, or even complete programmatic setup. Most users prefer the
"
"XML configuration file:"
msgstr ""
-"Hibernateの設定では、単純な <literal>hibernate.properties</literal> ファイ"
-"ル、 それより少し洗練されている <literal>hibernate.cfg.xml</literal> ファイ"
-"ル、 または完全にプログラム上でセットアップする方法が利用できます。 ほとんど"
-"のユーザが好むのはXML設定ファイルです:"
+"Hibernate の設定では、単純な <literal>hibernate.properties</literal> ファイ"
+"ル、それより少し洗練されている <literal>hibernate.cfg.xml</literal> ファイ"
+"ル、または完全にプログラム上でセットアップする方法が利用できます。ほとんどの"
+"ユーザーが好むのは XML 設定ファイルです:"
-#. Tag: programlisting
-#: tutorial.xml:360
-#, no-c-format
-msgid ""
-"<![CDATA[<?xml version='1.0' encoding='utf-8'?>\n"
-"<!DOCTYPE hibernate-configuration PUBLIC\n"
-" \"-//Hibernate/Hibernate Configuration DTD 3.0//EN\"\n"
-"
\"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
-"\">\n"
-"\n"
-"<hibernate-configuration>\n"
-"\n"
-" <session-factory>\n"
-"\n"
-" <!-- Database connection settings -->\n"
-" <property
name=\"connection.driver_class\">org.hsqldb.jdbcDriver</"
-"property>\n"
-" <property
name=\"connection.url\">jdbc:hsqldb:hsql://localhost</"
-"property>\n"
-" <property
name=\"connection.username\">sa</property>\n"
-" <property
name=\"connection.password\"></property>\n"
-"\n"
-" <!-- JDBC connection pool (use the built-in) -->\n"
-" <property
name=\"connection.pool_size\">1</property>\n"
-"\n"
-" <!-- SQL dialect -->\n"
-" <property
name=\"dialect\">org.hibernate.dialect.HSQLDialect</"
-"property>\n"
-"\n"
-" <!-- Enable Hibernate's automatic session context management
-->\n"
-" <property
name=\"current_session_context_class\">thread</property>\n"
-"\n"
-" <!-- Disable the second-level cache -->\n"
-" <property
name=\"cache.provider_class\">org.hibernate.cache."
-"NoCacheProvider</property>\n"
-"\n"
-" <!-- Echo all executed SQL to stdout -->\n"
-" <property name=\"show_sql\">true</property>\n"
-"\n"
-" <!-- Drop and re-create the database schema on startup -->\n"
-" <property
name=\"hbm2ddl.auto\">update</property>\n"
-"\n"
-" <mapping
resource=\"org/hibernate/tutorial/domain/Event.hbm.xml\"/>\n"
-"\n"
-" </session-factory>\n"
-"\n"
-"</hibernate-configuration>]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:363
#, no-c-format
msgid "Notice that this configuration file specifies a different DTD"
-msgstr ""
+msgstr "この XML の設定が異なる DTD を使うことに注意してください。"
#. Tag: para
-#: tutorial.xml:366
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You configure Hibernate's <literal>SessionFactory</literal>.
SessionFactory "
"is a global factory responsible for a particular database. If you have "
"several databases, for easier startup you should use several
<literal><"
"session-factory></literal> configurations in several configuration
files."
msgstr ""
-"このXMLの設定が異なるDTDを使うことに注意してください。 特定のデータベースを受"
-"け持つグローバルファクトリであるHibernateの <literal>SessionFactory</"
-"literal> を設定します。 もし複数のデータベースがある場合には、 (スタートアッ"
-"プを簡単にするため)通常いくつかの設定ファイル内で、 いくつかの <literal><"
-"session-factory></literal> を使う設定にしてください。"
+"特定のデータベースを受け持つグローバルファクトリである Hibernate の "
+"<literal>SessionFactory</literal> を設定します。もし複数のデータベースがある"
+"場合には、 (スタートアップを簡単にするため)通常いくつかの設定ファイル内で、"
+"いくつかの <literal><session-factory></literal>
を使う設定にしてくださ"
+"い。"
#. Tag: para
-#: tutorial.xml:373
#, no-c-format
msgid ""
"The first four <literal>property</literal> elements contain the
necessary "
"configuration for the JDBC connection. The dialect
<literal>property</"
"literal> element specifies the particular SQL variant Hibernate
generates."
msgstr ""
+"最初の4つの <literal>property</literal> 要素は JDBC コネクションに必要な設定"
+"を含んでいます。 dialect という名前の <literal>property</literal> 要素は、 "
+"Hibernate が生成する特定の SQL 方言を指定します。"
#. Tag: para
-#: tutorial.xml:380
#, no-c-format
msgid ""
-"In most cases, Hibernate is able to properly determine which dialect to use.
"
-"See <xref linkend=\"portability-dialectresolver\"/> for more
information."
+"Hibernate is able to correctly determine which dialect to use in most cases.
"
+"See <xref linkend=\"portability-dialectresolver\" /> for more
information."
msgstr ""
#. Tag: para
-#: tutorial.xml:386
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate's automatic session management for persistence contexts is "
"particularly useful in this context. The
<literal>hbm2ddl.auto</literal> "
@@ -762,18 +518,15 @@
"Ant task. Finally, add the mapping file(s) for persistent classes to the "
"configuration."
msgstr ""
-"最初の4つの <literal>property</literal> 要素はJDBCコネクションに必要な設定を"
-"含んでいます。 dialectという名前の <literal>property</literal> 要素は、"
-"Hibernateが生成する特定のSQL方言を指定します。 永続的なコンテキストに対する"
-"Hibernateのセッションの自動管理は、後の例ですぐにわかるように、役に立つことで"
-"しょう。 <literal>hbm2ddl.auto</literal> オプションはデータベーススキーマの自"
-"動生成をonにします。 これは直接データベースに対して生成されます。 当然"
-"(configオプションを削除して)offにしたり、 <literal>SchemaExport</literal> "
-"というAntタスクの助けを借りてファイルにリダイレクトしたりできます。 最後に永"
-"続クラスのためのマッピングファイルを設定に追加します。"
+"永続的なコンテキストに対する Hibernate のセッションの自動管理は、後の例ですぐ"
+"にわかるように、役に立つことでしょう。 <literal>hbm2ddl.auto</literal> オプ"
+"ションはデータベーススキーマの自動生成を on にします。これは直接データベース"
+"に対して生成されます。当然(config オプションを削除して) off にしたり、 "
+"<literal>SchemaExport</literal> という Ant タスクの助けを借りてファイルにリダ"
+"イレクトしたりできます。最後に永続クラスのためのマッピングファイルを設定に追"
+"加します。"
#. Tag: para
-#: tutorial.xml:395
#, no-c-format
msgid ""
"Save this file as <filename>hibernate.cfg.xml</filename> into the
"
@@ -781,13 +534,11 @@
msgstr ""
#. Tag: title
-#: tutorial.xml:403
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Building with Maven"
-msgstr "Antによるビルド"
+msgstr "Maven によるビルド"
#. Tag: para
-#: tutorial.xml:405
#, no-c-format
msgid ""
"We will now build the tutorial with Maven. You will need to have Maven "
@@ -798,44 +549,13 @@
"make sure we can compile everything so far:"
msgstr ""
-#. Tag: programlisting
-#: tutorial.xml:415
-#, no-c-format
-msgid ""
-"<![CDATA[[hibernateTutorial]$ mvn compile\n"
-"[INFO] Scanning for projects...\n"
-"[INFO] "
-"------------------------------------------------------------------------\n"
-"[INFO] Building First Hibernate Tutorial\n"
-"[INFO] task-segment: [compile]\n"
-"[INFO] "
-"------------------------------------------------------------------------\n"
-"[INFO] [resources:resources]\n"
-"[INFO] Using default encoding to copy filtered resources.\n"
-"[INFO] [compiler:compile]\n"
-"[INFO] Compiling 1 source file to /home/steve/projects/sandbox/"
-"hibernateTutorial/target/classes\n"
-"[INFO] "
-"------------------------------------------------------------------------\n"
-"[INFO] BUILD SUCCESSFUL\n"
-"[INFO] "
-"------------------------------------------------------------------------\n"
-"[INFO] Total time: 2 seconds\n"
-"[INFO] Finished at: Tue Jun 09 12:25:25 CDT 2009\n"
-"[INFO] Final Memory: 5M/547M\n"
-"[INFO] "
-"------------------------------------------------------------------------]]>"
-msgstr ""
-
#. Tag: title
-#: tutorial.xml:420
#, no-c-format
msgid "Startup and helpers"
msgstr "スタートアップとヘルパ"
#. Tag: para
-#: tutorial.xml:422
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"It is time to load and store some <literal>Event</literal> objects, but
"
"first you have to complete the setup with some infrastructure code. You have
"
@@ -849,64 +569,29 @@
"global object that is instantiated once."
msgstr ""
"さて <literal>Event</literal> オブジェクトをロードしたり格納したりする準備が"
-"できました。 しかしまずはインフラストラクチャのコードを書いて、セットアップを"
-"完了する必要があります。 まずはHibernateをスタートアップしなければなりませ"
-"ん。 このスタートアップには、グローバルの <literal>SessionFactory</literal> "
-"オブジェクトを生成して、 それをアプリケーションのコードでアクセスしやすい場所"
-"に格納することが含まれます。 <literal>SessionFactory</literal> は新しく "
-"<literal>Session</literal> をオープンすることができます。
<literal>Session</"
-"literal> はシングルスレッドの作業単位(Unit of Work)を表現します。 それに対し"
-"<literal>SessionFactory</literal> はスレッドセーフのグローバルオブジェクトで"
-"あり、 一度だけインスタンス化されます。"
+"できました。しかしまずはインフラストラクチャのコードを書いて、セットアップを"
+"完了する必要があります。まずは Hibernate をスタートアップしなければなりませ"
+"ん。このスタートアップには、グローバルの <literal>SessionFactory</literal> オ"
+"ブジェクトを生成して、それをアプリケーションのコードでアクセスしやすい場所に"
+"格納することが含まれます。 <interfacename>org.hibernate.SessionFactory</"
+"interfacename> は新しく
<interfacename>org.hibernate.Session</interfacename> "
+"をオープンすることができます。 <interfacename>org.hibernate.Session</"
+"interfacename> はシングルスレッドの作業単位(Unit of Work)を表現します。それに"
+"対し <interfacename>org.hibernate.SessionFactory</interfacename>
はスレッド"
+"セーフのグローバルオブジェクトであり、一度だけインスタンス化されます。"
#. Tag: para
-#: tutorial.xml:436
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"We will create a <literal>HibernateUtil</literal> helper class that
takes "
"care of startup and makes accessing the <interfacename>org.hibernate."
"SessionFactory</interfacename> more convenient."
msgstr ""
-"ここでスタートアップを行い、 便利に <literal>SessionFactory</literal> へアク"
-"セスする <literal>HibernateUtil</literal> ヘルパクラスを作成します。 実装を見"
-"てみましょう:"
+"ここでスタートアップを行い、便利に <interfacename>org.hibernate."
+"SessionFactory</interfacename> へアクセスする
<literal>HibernateUtil</"
+"literal> ヘルパクラスを作成します。実装を見てみましょう:"
-#. Tag: programlisting
-#: tutorial.xml:442
-#, no-c-format
-msgid ""
-"<![CDATA[package org.hibernate.tutorial.util;\n"
-"\n"
-"import org.hibernate.SessionFactory;\n"
-"import org.hibernate.cfg.Configuration;\n"
-"\n"
-"public class HibernateUtil {\n"
-"\n"
-" private static final SessionFactory sessionFactory = buildSessionFactory"
-"();\n"
-"\n"
-" private static SessionFactory buildSessionFactory() {\n"
-" try {\n"
-" // Create the SessionFactory from hibernate.cfg.xml\n"
-" return new Configuration().configure().buildSessionFactory();\n"
-" }\n"
-" catch (Throwable ex) {\n"
-" // Make sure you log the exception, as it might be swallowed\n"
-" System.err.println(\"Initial SessionFactory creation
failed.\" + "
-"ex);\n"
-" throw new ExceptionInInitializerError(ex);\n"
-" }\n"
-" }\n"
-"\n"
-" public static SessionFactory getSessionFactory() {\n"
-" return sessionFactory;\n"
-" }\n"
-"\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:444
#, no-c-format
msgid ""
"Save this code as <filename>src/main/java/org/hibernate/tutorial/util/"
@@ -914,7 +599,6 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:449
#, fuzzy, no-c-format
msgid ""
"This class not only produces the global <interfacename>org.hibernate."
@@ -924,13 +608,13 @@
"reference from JNDI in an application server or any other location for that "
"matter."
msgstr ""
-"このクラスは静的初期化ブロック(クラスがロードされるときにJVMによって一度だけ"
-"呼ばれる) でグローバルの <literal>SessionFactory</literal> を生成するだけで"
-"はなく、 静的シングルトンの使用を隠蔽します。 アプリケーションサーバーのJNDI"
-"から <literal>SessionFactory</literal> を ルックアップするのと同様です。"
+"このクラスは静的初期化ブロック(クラスがロードされるときに JVM によって一度だ"
+"け呼ばれる) でグローバルの <interfacename>org.hibernate.SessionFactory</"
+"interfacename> を生成するだけではなく、静的シングルトンの使用を隠蔽します。ア"
+"プリケーションサーバーの JNDI から <interfacename>org.hibernate."
+"SessionFactory</interfacename> をルックアップするのと同様です。"
#. Tag: para
-#: tutorial.xml:458
#, fuzzy, no-c-format
msgid ""
"If you give the
<interfacename>org.hibernate.SessionFactory</interfacename> "
@@ -940,15 +624,15 @@
"<literal>HibernateService</literal> to JNDI. Such advanced options are
"
"discussed later."
msgstr ""
-"設定ファイル内で <literal>SessionFactory</literal> に名前を与えると、 "
-"Hibernateは <literal>SessionFactory</literal> 構築後にJNDIに対しバインドを行"
-"おうとします。 このコードを完全に排除するためには、 JMXデプロイメントを利用し"
-"て JMXを利用できるコンテナをインスタンス化し、 <literal>HibernateService</"
-"literal> をJNDIへバインドすることもできます。 これらの高度なオプションは、"
-"Hibernateのリファレンスドキュメントで説明されています。"
+"設定ファイル内で <interfacename>org.hibernate.SessionFactory</interfacename>
"
+"に名前を与えると、 Hibernate は <interfacename>org.hibernate.SessionFactory</"
+"interfacename> 構築後に JNDI に対しバインドを行おうとします。このコードを完全"
+"に排除するためには、 JMX デプロイメントを利用して JMX を利用できるコンテナを"
+"インスタンス化し、 <literal>HibernateService</literal> を JNDI へバインドする"
+"こともできます。これらの高度なオプションは、 Hibernate のリファレンスドキュメ"
+"ントで説明されています。"
#. Tag: para
-#: tutorial.xml:467
#, fuzzy, no-c-format
msgid ""
"You now need to configure a logging system. Hibernate uses commons logging "
@@ -960,86 +644,41 @@
"configuration, you can change the settings. By default, only the Hibernate "
"startup message is shown on stdout."
msgstr ""
-"これは問題なく再コンパイルできるはずです。 最後にロギングシステムを設定する必"
-"要があります。 Hibernateはcommons loggingを使うため、Log4jとJDK 1.4 loggingの"
-"選択をする必要がありません。 ほとんどの開発者が好むのはLog4jです。 Hibernate"
-"ディストリビューション(の<literal>etc/</literal> ディレクトリ)から "
-"<literal>log4j.properties</literal> をあなたの
<literal>src</literal> ディレ"
-"クトリ内の <literal>hibernate.cfg.xml</literal> の隣にコピーしてください。 設"
-"定例を見て、冗長な出力がよければ設定を変更してください。 デフォルトでは"
-"Hibernateのスタートアップメッセージだけが標準出力に表示されます。"
+"これは問題なく再コンパイルできるはずです。最後にロギングシステムを設定する必"
+"要があります。 Hibernate は commons logging を使うため、 Log4j と JDK 1.4 "
+"logging の選択をする必要がありません。ほとんどの開発者が好むのは Log4j で"
+"す。 Hibernate ディストリビューションの( <literal>etc/</literal> ディレクト"
+"リ)から <literal>log4j.properties</literal> をあなたの
<literal>src</"
+"literal> ディレクトリ内の <literal>hibernate.cfg.xml</literal>
の隣にコピーし"
+"てください。設定例を見て、冗長な出力がよければ設定を変更してください。デフォ"
+"ルトでは Hibernate のスタートアップメッセージだけが標準出力に表示されます。"
#. Tag: para
-#: tutorial.xml:477
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The tutorial infrastructure is complete and you are now ready to do some "
"real work with Hibernate."
msgstr ""
-"チュートリアルのインフラは完全です。 Hibernateを使って実際の作業をする準備が"
+"チュートリアルのインフラは完全です。 Hibernate を使って実際の作業をする準備が"
"整いました。"
#. Tag: title
-#: tutorial.xml:485
#, no-c-format
msgid "Loading and storing objects"
msgstr "オブジェクトのロードと格納"
#. Tag: para
-#: tutorial.xml:487
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"We are now ready to start doing some real worjk with Hibernate. Let's start
"
"by writing an <literal>EventManager</literal> class with a
<literal>main()</"
"literal> method:"
msgstr ""
-"ついにオブジェクトのロードと格納にHibernateを使うことができます。 "
+"ついにオブジェクトのロードと格納に Hibernate を使うことができます。 "
"<literal>main()</literal> メソッドを持つ
<literal>EventManager</literal> クラ"
"スを書きます:"
-#. Tag: programlisting
-#: tutorial.xml:493
-#, no-c-format
-msgid ""
-"<![CDATA[package org.hibernate.tutorial;\n"
-"\n"
-"import org.hibernate.Session;\n"
-"\n"
-"import java.util.*;\n"
-"\n"
-"import org.hibernate.tutorial.domain.Event;\n"
-"import org.hibernate.tutorial.util.HibernateUtil;\n"
-"\n"
-"public class EventManager {\n"
-"\n"
-" public static void main(String[] args) {\n"
-" EventManager mgr = new EventManager();\n"
-"\n"
-" if (args[0].equals(\"store\")) {\n"
-" mgr.createAndStoreEvent(\"My Event\", new Date());\n"
-" }\n"
-"\n"
-" HibernateUtil.getSessionFactory().close();\n"
-" }\n"
-"\n"
-" private void createAndStoreEvent(String title, Date theDate) {\n"
-" Session session =
HibernateUtil.getSessionFactory().getCurrentSession"
-"();\n"
-" session.beginTransaction();\n"
-"\n"
-" Event theEvent = new Event();\n"
-" theEvent.setTitle(title);\n"
-" theEvent.setDate(theDate);\n"
-" session.save(theEvent);\n"
-"\n"
-" session.getTransaction().commit();\n"
-" }\n"
-"\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:495
#, fuzzy, no-c-format
msgid ""
"In <literal>createAndStoreEvent()</literal> we created a new
<literal>Event</"
@@ -1047,13 +686,12 @@
"takes care of the SQL and executes an <literal>INSERT</literal> on the
"
"database."
msgstr ""
-"新しい <literal>Event</literal> オブジェクトを生成し、それをHibernateに渡しま"
-"す。 今ではHibernateがSQLを処理し、データベースで <literal>INSERT</literal> "
-"を実行します。 実行前に <literal>Session</literal> と
<literal>Transaction</"
+"新しい <literal>Event</literal> オブジェクトを生成し、それを Hibernate に渡し"
+"ます。 Hibernate が SQL を処理し、データベースで <literal>INSERT</literal> を"
+"実行します。実行前にl <literal>Session</literal> と
<literal>Transaction</"
"literal> を処理するコードを確認してください。"
#. Tag: para
-#: tutorial.xml:502
#, fuzzy, no-c-format
msgid ""
"A <interface>org.hibernate.Session</interface> is designed to represent
a "
@@ -1065,15 +703,15 @@
"interfacename> API. In this particular case we are using JDBC-based "
"transactional semantics, but it could also run with JTA."
msgstr ""
-"<literal>Session</literal> は1つの作業単位(Unit of Work)です。 当分の間、話を"
-"簡単にするために、 <literal>Session</literal> と
<literal>Transaction</"
-"literal> の対応を一対一と仮定します。 使用しているトランザクション・システム"
-"(このケースではJTAと共存できる単純なJDBC)からコードを保護するために、 "
-"Hibernate <literal>Session</literal> 上で利用可能な
<literal>Transaction</"
-"literal> APIを使用します。"
+"<interface>org.hibernate.Session</interface> は1つの作業単位 (Unit of Work)
"
+"です。当分の間、話を簡単にするために、 <interface>org.hibernate.Session</"
+"interface> と <literal>Transaction</literal> の対応を一対一と仮定します。使用"
+"しているトランザクションシステム(このケースでは JTA と共存できる単純な "
+"JDBC)からコードを保護するために、 Hibernate <literal>Session</literal> 上で"
+"利用可能な <interfacename>org.hibernate.Transaction</interfacename> API
を使"
+"用します。"
#. Tag: para
-#: tutorial.xml:515
#, fuzzy, no-c-format
msgid ""
"What does <literal>sessionFactory.getCurrentSession()</literal> do?
First, "
@@ -1085,17 +723,18 @@
"xml</filename>? Due to that setting, the context of a current unit of work
"
"is bound to the current Java thread that executes the application."
msgstr ""
-"<literal>sessionFactory.getCurrentSession()</literal>
はなにをするのでしょう"
-"か? まず、いったん <literal>SessionFactory</literal> を取得し保持すれば "
-"( <literal>HibernateUtil</literal> のおかげで簡単です)、このメソッドを何度"
-"でも、 どこからでも呼び出すことが出来ます。 <literal>getCurrentSession()</"
-"literal> メソッドは常に「現在の」作業単位(Unit of Work)を返します。 "
-"<literal>hibernate.cfg.xml</literal>
のこの機能の設定で、\"thread\"を指定した"
-"ことを思い出してください。 このため現在の作業単位のスコープは、このアプリケー"
-"ションを実行する現在のJavaスレッドです。 しかしこれで全てではありません。"
+"<literal>sessionFactory.getCurrentSession()</literal> は何をするのでしょう"
+"か?まず、いったん <interfacename>org.hibernate.SessionFactory</"
+"interfacename> を取得し保持すれば ( <literal>HibernateUtil</literal>
のおか"
+"げで簡単です)、このメソッドを何度でも、どこからでも呼び出すことができます。 "
+"<literal>getCurrentSession()</literal> メソッドは常に「現在の」作業単位(Unit "
+"of Work)を返します。 <filename>src/main/resources/hibernate.cfg.xml</"
+"filename> のこの機能の設定で、\"thread\"を指定したことを思い出してください。"
+"このため現在の作業単位のスコープは、このアプリケーションを実行する現在の "
+"Java スレッドです。しかしこれで全てではありません。作業単位の開始時と終了時に"
+"はスコープも考慮する必要があります。"
#. Tag: para
-#: tutorial.xml:529
#, no-c-format
msgid ""
"Hibernate offers three methods of current session tracking. The
\"thread\" "
@@ -1105,7 +744,6 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:538
#, fuzzy, no-c-format
msgid ""
"A <interface>org.hibernate.Session</interface> begins when the first
call to "
@@ -1117,19 +755,20 @@
"new <interface>org.hibernate.Session</interface> and can start a new
unit of "
"work."
msgstr ""
-"<literal>Session</literal> は最初に必要となったとき、つまり最初に "
-"<literal>getCurrentSession()</literal> が 呼ばれたときに開始します。 そのとき"
-"Hibernateにより現在のスレッドに結び付けられます。 トランザクションが終了(コ"
-"ミットもしくはロールバック)したとき、 Hibernateもスレッドから "
-"<literal>Session</literal> を切り離し、クローズします。 再び "
-"<literal>getCurrentSession()</literal> を呼ぶと、 新しい
<literal>Session</"
-"literal> を取得して新しい作業単位をスタートできます。 この <emphasis>thread-"
-"bound</emphasis> プログラミング・モデルはHibernateを利用する上で最も人気があ"
-"ります。"
+"<interface>org.hibernate.Session</interface> は最初に必要となったとき、つまり"
+"最初に <literal>getCurrentSession()</literal> が呼ばれたときに開始します。そ"
+"のとき Hibernate により現在のスレッドに結び付けられます。トランザクションが終"
+"了(コミットもしくはロールバック)したとき、 Hibernate もスレッドから "
+"<interface>org.hibernate.Session</interface> を切り離し、クローズします。再"
+"び <literal>getCurrentSession()</literal> を呼ぶと、新しい
<interface>org."
+"hibernate.Session</interface> を取得して新しい作業単位をスタートできます。こ"
+"の <emphasis>thread-bound</emphasis> プログラミングモデルは、コードのフレキシ"
+"ブルなレイヤリングを可能にするので、 Hibernate を利用する上で最も人気がありま"
+"す (このチュートリアルで後ほど触れますがトランザクション境界コードはデータア"
+"クセスコードとは区別されます)。"
#. Tag: para
-#: tutorial.xml:551
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Related to the unit of work scope, should the Hibernate
<interface>org."
"hibernate.Session</interface> be used to execute one or several database
"
@@ -1143,31 +782,31 @@
"<emphasis>session-per-operation</emphasis> an anti-pattern. A real web
"
"application is shown later in the tutorial which will help illustrate this."
msgstr ""
-"Related to the unit of work scope, should the Hibernate
<literal>Session</"
-"literal> be used to execute one or several database operations? The above
"
-"example uses one <literal>Session</literal> for one operation. This is
pure "
-"coincidence, the example is just not complex enough to show any other "
-"approach. The scope of a Hibernate <literal>Session</literal> is
flexible "
-"but you should never design your application to use a new Hibernate "
-"<literal>Session</literal> for <emphasis>every</emphasis>
database "
-"operation. So even if you see it a few more times in the following (very "
-"trivial) examples, consider <emphasis>session-per-operation</emphasis>
an "
-"anti-pattern. A real (web) application is shown later in this tutorial."
+"作業単位 (Unit of Work) の範囲に関して、 Hibernate の <interface>org."
+"hibernate.Session</interface> は1つまたはいくつかのデータベースオペレーション"
+"を実行するために使用されるべきでしょうか?上記の例は、1つのオペレーションで1"
+"つの <interface>org.hibernate.Session</interface> を使用します。これは純粋な"
+"偶然で、例はその他のアプローチを示すほど込み入っていません。 Hibernate の "
+"<interface>org.hibernate.Session</interface> の範囲は柔軟ですが、
<emphasis>"
+"全ての</emphasis> データベースオペレーションのために新しい Hibernate "
+"<interface>org.hibernate.Session</interface> を使用するようにアプリケーション"
+"をデザインするべきではありません。従って、もしそれを以下の (普通の) 例で何度"
+"か見たとしても、アンチパターンである <emphasis>オペレーション毎の Session</"
+"emphasis> を考慮してください。実際の (ウェブ) アプリケーションは、このチュー"
+"トリアルで後に見ることができます。"
#. Tag: para
-#: tutorial.xml:568
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
-"See <xref linkend=\"transactions\"/> for more information about
transaction "
+"See <xref linkend=\"transactions\" /> for more information about
transaction "
"handling and demarcation. The previous example also skipped any error "
"handling and rollback."
msgstr ""
"トランザクションの扱いと境界の詳しい情報については、 <xref linkend="
-"\"transactions\"/> を見てください。 この例ではエラー処理やロールバックも割愛"
-"します。"
+"\"transactions\"/> を見てください。この例ではエラー処理やロールバックも割愛し"
+"ます。"
#. Tag: para
-#: tutorial.xml:574
#, no-c-format
msgid ""
"To run this, we will make use of the Maven exec plugin to call our class "
@@ -1176,100 +815,52 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:581
#, no-c-format
msgid "You may need to perform <command>mvn compile</command>
first."
msgstr ""
#. Tag: para
-#: tutorial.xml:586
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You should see Hibernate starting up and, depending on your configuration, "
"lots of log output. Towards the end, the following line will be displayed:"
msgstr ""
-"コンパイルすると、Hibernateがスタートし、あなたの設定によりますが、 多くのロ"
-"グ出力があるはずです。 その最後には以下の行があるでしょう:"
+"コンパイルすると、 Hibernate がスタートし、設定によりますが、多くのログ出力が"
+"あるはずです。その最後には以下の行があるでしょう:"
-#. Tag: programlisting
-#: tutorial.xml:591
-#, no-c-format
-msgid ""
-"<![CDATA[[java] Hibernate: insert into EVENTS (EVENT_DATE, title, EVENT_ID)
"
-"values (?, ?, ?)]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:593
-#, no-c-format
+#, fuzzy, no-c-format
msgid "This is the <literal>INSERT</literal> executed by
Hibernate."
-msgstr ""
+msgstr "HQL の <literal>INSERT</literal> 文の実行例です:"
#. Tag: para
-#: tutorial.xml:597
#, fuzzy, no-c-format
msgid "To list stored events an option is added to the main method:"
msgstr ""
-"それでは同じように格納されたイベントの一覧を見ようと思います。 そのためメイン"
+"それでは同じように格納されたイベントの一覧を見ようと思います。そのためメイン"
"メソッドにオプションを追加します:"
-#. Tag: programlisting
-#: tutorial.xml:601
-#, no-c-format
-msgid ""
-"<![CDATA[ if (args[0].equals(\"store\")) {\n"
-" mgr.createAndStoreEvent(\"My Event\", new Date());\n"
-" }\n"
-" else if (args[0].equals(\"list\")) {\n"
-" List events = mgr.listEvents();\n"
-" for (int i = 0; i < events.size(); i++) {\n"
-" Event theEvent = (Event) events.get(i);\n"
-" System.out.println(\n"
-" \"Event: \" + theEvent.getTitle() + \" Time:
\" + "
-"theEvent.getDate()\n"
-" );\n"
-" }\n"
-" }]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:603
-#, fuzzy, no-c-format
+#, no-c-format
msgid "A new <literal>listEvents() method is also
added</literal>:"
msgstr "新しい <literal>listEvents()メソッド</literal> も追加します。"
-#. Tag: programlisting
-#: tutorial.xml:607
-#, no-c-format
-msgid ""
-"<![CDATA[ private List listEvents() {\n"
-" Session session =
HibernateUtil.getSessionFactory().getCurrentSession"
-"();\n"
-" session.beginTransaction();\n"
-" List result = session.createQuery(\"from
Event\").list();\n"
-" session.getTransaction().commit();\n"
-" return result;\n"
-" }]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:609
#, fuzzy, no-c-format
msgid ""
"Here, we are using a Hibernate Query Language (HQL) query to load all "
"existing <literal>Event</literal> objects from the database. Hibernate
will "
"generate the appropriate SQL, send it to the database and populate "
"<literal>Event</literal> objects with the data. You can create more
complex "
-"queries with HQL. See <xref linkend=\"queryhql\"/> for more
information."
+"queries with HQL. See <xref linkend=\"queryhql\" /> for more
information."
msgstr ""
"ここですることは、データベースから存在するすべての <literal>Event</literal> "
-"オブジェクトをロードするHQL (Hibernate Query Language) クエリを使うことで"
-"す。 Hibernateは適切なSQLを生成し、それをデータベースに送り、 そのデータを"
-"使って <literal>Event</literal> オブジェクトを生成します。 当然HQLでさらに複"
+"オブジェクトをロードする HQL (Hibernate Query Language) クエリを使うことで"
+"す。 Hibernate は適切な SQL を生成し、それをデータベースに送り、そのデータを"
+"使って <literal>Event</literal> オブジェクトを生成します。当然 HQL でさらに複"
"雑なクエリを作成できます。"
#. Tag: para
-#: tutorial.xml:617
#, no-c-format
msgid ""
"Now we can call our new functionality, again using the Maven exec plugin: "
@@ -1278,58 +869,33 @@
msgstr ""
#. Tag: title
-#: tutorial.xml:627
#, no-c-format
msgid "Part 2 - Mapping associations"
msgstr "パート2 - 関連のマッピング"
#. Tag: para
-#: tutorial.xml:629
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"So far we have mapped a single persistent entity class to a table in "
"isolation. Let's expand on that a bit and add some class associations. We
"
"will add people to the application and store a list of events in which they "
"participate."
msgstr ""
-"永続エンティティクラスをテーブルにマッピングしました。 さらにこの上にいくつか"
-"のクラスの関連を追加しましょう。 まず初めにアプリケーションに人々を追加し、彼"
+"永続エンティティクラスをテーブルにマッピングしました。さらにこの上にいくつか"
+"のクラスの関連を追加しましょう。まず初めにアプリケーションに人々を追加し、彼"
"らが参加するイベントのリストを格納します。"
#. Tag: title
-#: tutorial.xml:637
#, no-c-format
msgid "Mapping the Person class"
-msgstr "Personクラスのマッピング"
+msgstr "Person クラスのマッピング"
#. Tag: para
-#: tutorial.xml:639
-#, fuzzy, no-c-format
+#, no-c-format
msgid "The first cut of the <literal>Person</literal> class looks like
this:"
msgstr "最初の <literal>Person</literal> クラスは単純です:"
-#. Tag: programlisting
-#: tutorial.xml:643
-#, no-c-format
-msgid ""
-"<![CDATA[package org.hibernate.tutorial.domain;\n"
-"\n"
-"public class Person {\n"
-"\n"
-" private Long id;\n"
-" private int age;\n"
-" private String firstname;\n"
-" private String lastname;\n"
-"\n"
-" public Person() {}\n"
-"\n"
-" // Accessor methods for all properties, private setter for
'id'\n"
-"\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:645
#, no-c-format
msgid ""
"Save this to a file named
<filename>src/main/java/org/hibernate/tutorial/"
@@ -1337,65 +903,34 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:650
#, no-c-format
msgid ""
"Next, create the new mapping file as <filename>src/main/resources/org/"
"hibernate/tutorial/domain/Person.hbm.xml</filename>"
msgstr ""
-#. Tag: programlisting
-#: tutorial.xml:655
-#, no-c-format
-msgid ""
-"<![CDATA[<hibernate-mapping
package=\"org.hibernate.tutorial.domain\">\n"
-"\n"
-" <class name=\"Person\" table=\"PERSON\">\n"
-" <id name=\"id\" column=\"PERSON_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"age\"/>\n"
-" <property name=\"firstname\"/>\n"
-" <property name=\"lastname\"/>\n"
-" </class>\n"
-"\n"
-"</hibernate-mapping>]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:657
#, no-c-format
msgid "Finally, add the new mapping to Hibernate's configuration:"
-msgstr "最後にHibernateの設定に新しいマッピングを追加してください:"
+msgstr "最後に Hibernate の設定に新しいマッピングを追加してください:"
-#. Tag: programlisting
-#: tutorial.xml:661
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<mapping resource=\"events/Event.hbm.xml\"/>\n"
-"<mapping resource=\"events/Person.hbm.xml\"/>]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:663
-#, fuzzy, no-c-format
-msgid ""
"Create an association between these two entities. Persons can participate in
"
"events, and events have participants. The design questions you have to deal "
"with are: directionality, multiplicity, and collection behavior."
msgstr ""
-"それではこれら2つのエンティティ間の関連を作成します。 人々がイベントに参加で"
-"き、イベントが参加者を持つのは明らかです。 扱わなければならない設計の問題は、"
+"それではこれら2つのエンティティ間の関連を作成します。人々がイベントに参加で"
+"き、イベントが参加者を持つのは明らかです。扱わなければならない設計の問題は、"
"方向、多重度、コレクションの振る舞いです。"
#. Tag: title
-#: tutorial.xml:673
#, no-c-format
msgid "A unidirectional Set-based association"
-msgstr "単方向Setベース関連"
+msgstr "単方向 Set ベース関連"
#. Tag: para
-#: tutorial.xml:675
#, fuzzy, no-c-format
msgid ""
"By adding a collection of events to the <literal>Person</literal>
class, you "
@@ -1406,32 +941,14 @@
"Set</interfacename> because the collection will not contain duplicate "
"elements and the ordering is not relevant to our examples:"
msgstr ""
-"イベントのコレクションを <literal>Person</literal> クラスに追加します。 こう"
-"しておくと、明示的なクエリ、つまりわざわざ<literal>aPerson.getEvents()</"
-"literal>を呼び出さずに、 特定の人に紐付くイベントを簡単にナビゲートすることが"
-"できます。 私たちはJavaのコレクション、<literal>Set</literal> を使います。 コ"
-"レクションは重複要素を持たないし、順番は私たちには意味がないからです。"
+"イベントのコレクションを <literal>Person</literal> クラスに追加します。こうし"
+"ておくと、明示的なクエリ、つまりわざわざ <literal>aPerson.getEvents()</"
+"literal> を呼び出さずに、特定の人に紐付くイベントを簡単にナビゲートすることが"
+"できます。私たちは Java のコレクション、<interfacename>java.util.Set</"
+"interfacename> を使います。コレクションは重複要素を持たないし、順番は私たちに"
+"は意味がないからです。"
-#. Tag: programlisting
-#: tutorial.xml:686
-#, no-c-format
-msgid ""
-"<![CDATA[public class Person {\n"
-"\n"
-" private Set events = new HashSet();\n"
-"\n"
-" public Set getEvents() {\n"
-" return events;\n"
-" }\n"
-"\n"
-" public void setEvents(Set events) {\n"
-" this.events = events;\n"
-" }\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:688
#, fuzzy, no-c-format
msgid ""
"Before mapping this association, let's consider the other side. We could
"
@@ -1444,40 +961,19 @@
"on both sides is called a <emphasis>many-to-many</emphasis>
association. "
"Hence, we use Hibernate's many-to-many mapping:"
msgstr ""
-"この関連をマッピングする前に、反対側について考えてください。 明らかなことです"
-"が、今はこれを単方向にしただけです。 逆に、 <literal>Event</literal> 側にも別"
-"のコレクションを作ることもできます。 例えば <literal>anEvent.getParticipants"
-"()</literal> のように、 双方向にナビゲートしたければ、そうすることもできま"
-"す。 これは機能的にみて必要ではありません。 特定のイベントに関係するデータを"
-"取得する明確なクエリを、いつでも実行することが出来ました。 この設計の選択は開"
-"発者に任されていて、この議論により明らかなのは関連の多重度です。 つまり両側を"
-"「多」値にする、 <emphasis>多対多</emphasis> と呼ばれる関連です。 そのため"
-"Hibernateのmany-to-manyマッピングを使います:"
+"この関連をマッピングする前に、反対側について考えてください。明らかなことです"
+"が、今はこれを単方向にしただけです。逆に、 <literal>Event</literal> 側にも別"
+"のコレクションを作ることもできます。例えば <literal>anEvent.getParticipants()"
+"</literal> のように、双方向にナビゲートしたければ、そうすることもできます。こ"
+"れは機能的にみて必要ではありません。特定のイベントに関係するデータを取得する"
+"明確なクエリを、いつでも実行することが出来ました。この設計の選択は開発者に任"
+"されていて、この議論により明らかなのは関連の多重度です。つまり両側を「多」値"
+"にする、 <emphasis>多対多</emphasis> と呼ばれる関連です。そのため Hibernate "
+"の多対多マッピングを使います:"
-#. Tag: programlisting
-#: tutorial.xml:701
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Person\"
table=\"PERSON\">\n"
-" <id name=\"id\" column=\"PERSON_ID\">\n"
-" <generator class=\"native\"/>\n"
-" </id>\n"
-" <property name=\"age\"/>\n"
-" <property name=\"firstname\"/>\n"
-" <property name=\"lastname\"/>\n"
-"\n"
-" <set name=\"events\" table=\"PERSON_EVENT\">\n"
-" <key column=\"PERSON_ID\"/>\n"
-" <many-to-many column=\"EVENT_ID\"
class=\"Event\"/>\n"
-" </set>\n"
-"\n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:703
-#, fuzzy, no-c-format
-msgid ""
"Hibernate supports a broad range of collection mappings, a
<literal>set</"
"literal> being most common. For a many-to-many association, or
<emphasis>n:"
"m</emphasis> entity relationship, an association table is required. Each row
"
@@ -1490,51 +986,28 @@
"tell Hibernate the class of the objects in your collection (the class on the
"
"other side of the collection of references)."
msgstr ""
-"Hibernateはありとあらゆる種類のコレクションマッピングをサポートしています"
-"が、 最も一般的なものが <literal><set></literal> です。 多対多関連(ま"
-"たは <emphasis>n:m</emphasis> エンティティリレーションシップ)には、 関連テー"
-"ブルが必要です。 このテーブルのそれぞれの行は、人とイベント間のリンクを表現し"
-"ます。 テーブル名は <literal>set</literal> 要素の
<literal>table</literal> 属"
-"性で設定します。 人側の関連の識別子カラム名は <literal><key></literal> "
-"要素で、 イベント側のカラム名は <literal><many-to-many></literal> の
"
-"<literal>column</literal> 属性で定義します。 Hibernateにコレクションのオブ"
-"ジェクトのクラス (正確には、参照のコレクションの反対側のクラス)を教えなけれ"
-"ばなりません。"
+"Hibernate はありとあらゆる種類のコレクションマッピングをサポートしています"
+"が、最も一般的なものが <literal>set</literal> です。 多対多関連(または "
+"<emphasis>n:m</emphasis> エンティティリレーションシップ)には、関連テーブルが"
+"必要です。このテーブルのそれぞれの行は、人とイベント間のリンクを表現します。"
+"テーブル名は <literal>set</literal> 要素の <literal>table</literal>
属性で設"
+"定します。人側の関連の識別子カラム名は <literal>key</literal> 要素で、イベン"
+"ト側のカラム名は <literal>many-to-many</literal> の
<literal>column</"
+"literal> 属性で定義します。 Hibernate にコレクションのオブジェクトのクラス "
+"(正確には、参照のコレクションの反対側のクラス)を教えなければなりません。"
#. Tag: para
-#: tutorial.xml:719
#, no-c-format
msgid "The database schema for this mapping is therefore:"
-msgstr "そのためこのマッピングのデータベーススキーマは以下のようになります。:"
+msgstr "そのためこのマッピングのデータベーススキーマは以下のようになります:"
-#. Tag: programlisting
-#: tutorial.xml:723
-#, no-c-format
-msgid ""
-"<![CDATA[\n"
-" _____________ __________________\n"
-" | | | | _____________\n"
-" | EVENTS | | PERSON_EVENT | | |\n"
-" |_____________| |__________________| | PERSON |\n"
-" | | | | |_____________|\n"
-" | *EVENT_ID | <--> | *EVENT_ID | | |\n"
-" | EVENT_DATE | | *PERSON_ID | <--> | *PERSON_ID |\n"
-" | TITLE | |__________________| | AGE |\n"
-" |_____________| | FIRSTNAME |\n"
-" | LASTNAME |\n"
-" |_____________|\n"
-" ]]>"
-msgstr ""
-
#. Tag: title
-#: tutorial.xml:728
#, no-c-format
msgid "Working the association"
msgstr "関連を働かせる"
#. Tag: para
-#: tutorial.xml:730
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Now we will bring some people and events together in a new method in "
"<literal>EventManager</literal>:"
@@ -1542,25 +1015,7 @@
"<literal>EventManager</literal> の新しいメソッドで人々とイベントを一緒にしま"
"しょう:"
-#. Tag: programlisting
-#: tutorial.xml:734
-#, no-c-format
-msgid ""
-"<![CDATA[ private void addPersonToEvent(Long personId, Long eventId)
{\n"
-" Session session =
HibernateUtil.getSessionFactory().getCurrentSession"
-"();\n"
-" session.beginTransaction();\n"
-"\n"
-" Person aPerson = (Person) session.load(Person.class, personId);\n"
-" Event anEvent = (Event) session.load(Event.class, eventId);\n"
-" aPerson.getEvents().add(anEvent);\n"
-"\n"
-" session.getTransaction().commit();\n"
-" }]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:736
#, fuzzy, no-c-format
msgid ""
"After loading a <literal>Person</literal> and an
<literal>Event</literal>, "
@@ -1577,25 +1032,24 @@
"of a unit of work, is called <emphasis>flushing</emphasis>. In our
code, the "
"unit of work ends with a commit, or rollback, of the database transaction."
msgstr ""
-"<literal>Person</literal> と <literal>Event</literal>
をロードした後、 普通の"
-"コレクションメソッドを使って単純にそのコレクションを修正してください。 ご覧の"
+"<literal>Person</literal> と <literal>Event</literal>
をロードした後、普通の"
+"コレクションメソッドを使って単純にそのコレクションを修正してください。ご覧の"
"とおり <literal>update()</literal> や <literal>save()</literal>
の明示的な呼"
-"び出しはありません。 Hibernateは、修正されたことにより更新する必要のあるコレ"
-"クションを自動的に検知します。 これは <emphasis>自動ダーティチェック</"
-"emphasis> と呼ばれ、 オブジェクトの名前やdateプロパティを修正することで試すこ"
-"とも可能です。 それらが <emphasis>永続</emphasis> 状態にある限り、 つまり特定"
-"のHibernate <literal>Session</literal> にバインドされている限り (例えば作業"
-"単位(Unit of Work)の中で単にロードまたはセーブされた)、 Hibernateはどんな変"
-"更もモニターし、遅延書き込み(write-behind)でSQLを実行します。 通常、作業単位"
-"(Unit of Work)の最後にだけ行われるデータベースとメモリの状態を同期させる処理"
-"は、 <emphasis>フラッシュ</emphasis> と呼ばれます。 このコードでは、作業単位"
-"(Unit of Work)はデータベーストランザクションのコミット(もしくはロールバッ"
-"ク)で終了します。 これは、 <literal>CurrentSessionContext</literal> クラスに"
-"対して <literal>thread</literal> を設定したためです。"
+"び出しはありません。 Hibernate は、修正されたことにより更新する必要のあるコレ"
+"クションを自動的に検知します。これは <emphasis>自動ダーティチェック</"
+"emphasis> と呼ばれ、オブジェクトの名前や date プロパティを修正することで試す"
+"ことも可能です。それらが <emphasis>永続</emphasis> 状態にある限り、つまり特定"
+"の Hibernate <literal>Session</literal> にバインドされている限り (例えば作業"
+"単位 (Unit of Work) の中で単にロードまたはセーブされた)、 Hibernate はどんな"
+"変更もモニターし、遅延書き込み (write-behind) で SQL を実行します。通常、作業"
+"単位 (Unit of Work) の最後にだけ行われるデータベースとメモリの状態を同期させ"
+"る処理は、 <emphasis>フラッシュ</emphasis> と呼ばれます。このコードでは、作業"
+"単位 (Unit of Work) はデータベーストランザクションのコミット(もしくはロール"
+"バック)で終了します。これは、 <literal>CurrentSessionContext</literal> クラ"
+"スに対して <literal>thread</literal> を設定したためです。"
#. Tag: para
-#: tutorial.xml:755
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can load person and event in different units of work. Or you can modify "
"an object outside of a
<interfacename>org.hibernate.Session</interfacename>, "
@@ -1603,65 +1057,28 @@
"is called <emphasis>detached</emphasis>). You can even modify a
collection "
"when it is detached:"
msgstr ""
-"異なる作業単位(Unit of Work)で人々とイベントをロードすることも当然できます。 "
-"そうでなければ、永続状態にないとき(以前に永続であったなら、この状態を "
-"<emphasis>分離(detached)</emphasis> と呼びます)、
<literal>Session</"
-"literal> の外部でオブジェクトを修正します。 分離されるときにはコレクションを"
-"変更することも可能です:"
+"異なる作業単位 (Unit of Work) で人々とイベントをロードすることも当然できま"
+"す。そうでなければ、永続状態にないとき(以前に永続であったなら、この状態を "
+"<emphasis>分離(detached)</emphasis> と呼びます)、
<interfacename>org."
+"hibernate.Session</interfacename> の外部でオブジェクトを修正します。分離され"
+"るときにはコレクションを変更することも可能です:"
-#. Tag: programlisting
-#: tutorial.xml:764
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[ private void addPersonToEvent(Long personId, Long eventId)
{\n"
-" Session session =
HibernateUtil.getSessionFactory().getCurrentSession"
-"();\n"
-" session.beginTransaction();\n"
-"\n"
-" Person aPerson = (Person) session\n"
-" .createQuery(\"select p from Person p left join fetch
p."
-"events where p.id = :pid\")\n"
-" .setParameter(\"pid\", personId)\n"
-" .uniqueResult(); // Eager fetch the collection so we can use
"
-"it detached\n"
-" Event anEvent = (Event) session.load(Event.class, eventId);\n"
-"\n"
-" session.getTransaction().commit();\n"
-"\n"
-" // End of first unit of work\n"
-"\n"
-" aPerson.getEvents().add(anEvent); // aPerson (and its collection) is
"
-"detached\n"
-"\n"
-" // Begin second unit of work\n"
-"\n"
-" Session session2 = HibernateUtil.getSessionFactory()."
-"getCurrentSession();\n"
-" session2.beginTransaction();\n"
-" session2.update(aPerson); // Reattachment of aPerson\n"
-"\n"
-" session2.getTransaction().commit();\n"
-" }]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:766
-#, fuzzy, no-c-format
-msgid ""
"The call to <literal>update</literal> makes a detached object
persistent "
"again by binding it to a new unit of work, so any modifications you made to "
"it while detached can be saved to the database. This includes any "
"modifications (additions/deletions) you made to a collection of that entity "
"object."
msgstr ""
-"<literal>update</literal> の呼び出しは分離オブジェクトを再び永続化します。 こ"
-"れは、新しい作業単位(Unit of Work)にバインドすると言えるでしょう。 そのため分"
-"離の間に加えられたどのような修正もデータベースにセーブできます。 エンティティ"
-"オブジェクトのコレクションへの修正(追加・削除)も同様にセーブできます。"
+"<literal>update</literal> の呼び出しは分離オブジェクトを再び永続化します。こ"
+"れは、新しい作業単位 (Unit of Work) にバインドすると言えるでしょう。そのため"
+"分離の間に加えられたどのような修正もデータベースにセーブできます。エンティ"
+"ティオブジェクトのコレクションへの修正(追加・削除)も同様にセーブできます。"
#. Tag: para
-#: tutorial.xml:775
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This is not much use in our example, but it is an important concept you can "
"incorporate into your own application. Complete this exercise by adding a "
@@ -1670,31 +1087,16 @@
"an event - the <literal>save()</literal> method returns it (you might
have "
"to modify some of the previous methods to return that identifier):"
msgstr ""
-"これは今はあまり使いみちがありませんが、 自分のアプリケーションの設計に組み込"
-"むことができる重要なコンセプトです。 それではこのエクササイズの最後に、 "
-"<literal>EventManager</literal> のメインメソッドに新しいアクションを追加して "
-"コマンドラインから呼び出してみましょう。 人やイベントの識別子が必要なら、 "
+"これは今はあまり使いみちがありませんが、自分のアプリケーションの設計に組み込"
+"むことができる重要なコンセプトです。それではこのエクササイズの最後に、 "
+"<literal>EventManager</literal> のメインメソッドに新しいアクションを追加して"
+"コマンドラインから呼び出してみましょう。人やイベントの識別子が必要なら、 "
"<literal>save()</literal> メソッドが返してくれます (場合によっては識別子を返"
"すためにメソッドを修正する必要があるかもしれません)。"
-#. Tag: programlisting
-#: tutorial.xml:783
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[ else if (args[0].equals(\"addpersontoevent\"))
{\n"
-" Long eventId = mgr.createAndStoreEvent(\"My Event\", new
Date"
-"());\n"
-" Long personId = mgr.createAndStorePerson(\"Foo\",
\"Bar\");\n"
-" mgr.addPersonToEvent(personId, eventId);\n"
-" System.out.println(\"Added person \" + personId + \" to
event \" "
-"+ eventId);\n"
-" }]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:785
-#, fuzzy, no-c-format
-msgid ""
"This is an example of an association between two equally important classes :
"
"two entities. As mentioned earlier, there are other classes and types in a "
"typical model, usually \"less important\". Some you have already seen,
like "
@@ -1709,38 +1111,35 @@
"fact, in a Hibernate application all JDK classes are considered value types."
msgstr ""
"これは同じように重要な2つのクラス、つまり2つのエンティティ間の関連の例でし"
-"た。 前に述べたように、典型的なモデルには、普通「比較的重要ではない」他のクラ"
-"スと型があります。 これまでに見たような <literal>int</literal> や "
-"<literal>String</literal> のようなものです。 このようなクラスを <emphasis>値"
-"型</emphasis> と言います。 このインスタンスは特定のエンティティに <emphasis>"
-"依存</emphasis> します。 この型のインスタンスは独自のIDを持ちませんし、 エン"
-"ティティ間で共有されることもありません (ファーストネームが同じだったとして"
-"も、2人の人は同じ <literal>firstname</literal> オブジェクトを参照しませ"
-"ん)。 値型はもちろんJDK内に見つかりますが、それだけではなく (実際、"
-"HibernateアプリケーションにおいてすべてのJDKクラスは値型と見なせます)、 例え"
-"ば <literal>Address</literal> や
<literal>MonetaryAmount</literal> のような独"
-"自の依存クラスを書くこともできます。"
+"た。前に述べたように、典型的なモデルには、普通「比較的重要ではない」他のクラ"
+"スと型があります。これまでに見たような <literal>int</literal> や "
+"<classname>java.lang.String</classname> のようなものです。このようなクラスを "
+"<emphasis>値型</emphasis> と言います。このインスタンスは特定のエンティティに "
+"<emphasis>依存</emphasis> します。この型のインスタンスは独自の ID を持ちませ"
+"んし、エンティティ間で共有されることもありません (ファーストネームが同じだっ"
+"たとしても、2人の人は同じ <literal>firstname</literal> オブジェクトを参照しま"
+"せん)。値型はもちろん JDK 内に見つかりますが、それだけではなく (実際、 "
+"Hibernate アプリケーションにおいてすべての JDK クラスは値型と見なせます)、 "
+"例えば <literal>Address</literal> や
<literal>MonetaryAmount</literal> のよう"
+"な独自の依存クラスを書くこともできます。"
#. Tag: para
-#: tutorial.xml:803
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also design a collection of value types. This is conceptually "
"different from a collection of references to other entities, but looks "
"almost the same in Java."
msgstr ""
-"値型のコレクションを設計することもできます。 これは他のエンティティへの参照の"
-"コレクションとは概念的に非常に異なりますが、 Javaではほとんど同じように見えま"
-"す。"
+"値型のコレクションを設計することもできます。これは他のエンティティへの参照の"
+"コレクションとは概念的に非常に異なりますが、 Java ではほとんど同じように見え"
+"ます。"
#. Tag: title
-#: tutorial.xml:812
#, no-c-format
msgid "Collection of values"
msgstr "値のコレクション"
#. Tag: para
-#: tutorial.xml:814
#, no-c-format
msgid ""
"Let's add a collection of email addresses to the
<literal>Person</literal> "
@@ -1748,41 +1147,14 @@
"interfacename> of <classname>java.lang.String</classname>
instances:"
msgstr ""
-#. Tag: programlisting
-#: tutorial.xml:820
-#, no-c-format
-msgid ""
-"<![CDATA[ private Set emailAddresses = new HashSet();\n"
-"\n"
-" public Set getEmailAddresses() {\n"
-" return emailAddresses;\n"
-" }\n"
-"\n"
-" public void setEmailAddresses(Set emailAddresses) {\n"
-" this.emailAddresses = emailAddresses;\n"
-" }]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:822
-#, fuzzy, no-c-format
+#, no-c-format
msgid "The mapping of this <literal>Set</literal> is as follows:"
msgstr "この <literal>Set</literal> のマッピングです:"
-#. Tag: programlisting
-#: tutorial.xml:826
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[ <set name=\"emailAddresses\"
table=\"PERSON_EMAIL_ADDR\">\n"
-" <key column=\"PERSON_ID\"/>\n"
-" <element type=\"string\"
column=\"EMAIL_ADDR\"/>\n"
-" </set>]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:828
-#, fuzzy, no-c-format
-msgid ""
"The difference compared with the earlier mapping is the use of the "
"<literal>element</literal> part which tells Hibernate that the
collection "
"does not contain references to another entity, but is rather a collection "
@@ -1796,91 +1168,42 @@
"address values will actually be stored."
msgstr ""
"前のマッピングと比べて違うのは <literal>element</literal> の部分ですが、 "
-"Hibernateにこのコレクションが他のエンティティへの参照を含まず、 "
-"<literal>String</literal> 型の要素のコレクションを含むことを教えます。 (小文"
-"字の名前(string)はHibernateのマッピング型またはコンバータであるということで"
-"す)。 繰り返しますが、<literal>set</literal> 要素の <literal>table</"
-"literal> 属性は、 コレクションのためのテーブル名を指定します。 <literal>key</"
-"literal> 要素はコレクションテーブルの外部キーカラム名を定義します。 "
-"<literal>element</literal> 要素の <literal>column</literal>
属性は "
-"<literal>String</literal> の値が実際に格納されるカラムの名前を定義します。"
+"Hibernate にこのコレクションが他のエンティティへの参照を含まず、 "
+"<literal>string</literal> 型の要素のコレクションを含むことを教えます(小文字"
+"の名前 (string) は Hibernate のマッピング型またはコンバータであるということで"
+"す)。繰り返しますが、<literal>set</literal> 要素の
<literal>table</literal> "
+"属性は、コレクションのためのテーブル名を指定します。 <literal>key</literal> "
+"要素はコレクションテーブルの外部キーカラム名を定義します。 <literal>element</"
+"literal> 要素の <literal>column</literal> 属性は
<literal>string</literal> の"
+"値が実際に格納されるカラムの名前を定義します。"
#. Tag: para
-#: tutorial.xml:844
-#, fuzzy, no-c-format
+#, no-c-format
msgid "Here is the updated schema:"
msgstr "更新したスキーマを見てください:"
-#. Tag: programlisting
-#: tutorial.xml:848
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[\n"
-" _____________ __________________\n"
-" | | | | _____________\n"
-" | EVENTS | | PERSON_EVENT | | | "
-"___________________\n"
-" |_____________| |__________________| | PERSON | "
-"| |\n"
-" | | | | |_____________| | "
-"PERSON_EMAIL_ADDR |\n"
-" | *EVENT_ID | <--> | *EVENT_ID | | | |"
-"___________________|\n"
-" | EVENT_DATE | | *PERSON_ID | <--> | *PERSON_ID | <--> |
"
-"*PERSON_ID |\n"
-" | TITLE | |__________________| | AGE | | "
-"*EMAIL_ADDR |\n"
-" |_____________| | FIRSTNAME | |"
-"___________________|\n"
-" | LASTNAME |\n"
-" |_____________|\n"
-" ]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:850
-#, fuzzy, no-c-format
-msgid ""
"You can see that the primary key of the collection table is in fact a "
"composite key that uses both columns. This also implies that there cannot be
"
"duplicate email addresses per person, which is exactly the semantics we need
"
"for a set in Java."
msgstr ""
"コレクションテーブルの主キーは、実際は両方のカラムを使った複合キーであること"
-"がわかります。 これは人ごとにEメールアドレスが重複できないということで、 Java"
-"のsetに要求されるセマンティクスそのものです。"
+"がわかります。これは人ごとに E メールアドレスが重複できないということで、 "
+"Java の set に要求されるセマンティクスそのものです。"
#. Tag: para
-#: tutorial.xml:856
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can now try to add elements to this collection, just like we did before "
"by linking persons and events. It is the same code in Java:"
msgstr ""
-"以前人とイベントを関連づけたときと全く同じように、 今や試しにコレクションに要"
-"素を追加することができるようになりました。 両方ともJavaでは同じコードです。"
+"以前人とイベントを関連づけたときと全く同じように、今や試しにコレクションに要"
+"素を追加することができるようになりました。 両方とも Java では同じコードです。"
-#. Tag: programlisting
-#: tutorial.xml:861
-#, no-c-format
-msgid ""
-"<![CDATA[ private void addEmailToPerson(Long personId, String "
-"emailAddress) {\n"
-" Session session =
HibernateUtil.getSessionFactory().getCurrentSession"
-"();\n"
-" session.beginTransaction();\n"
-"\n"
-" Person aPerson = (Person) session.load(Person.class, personId);\n"
-" // adding to the emailAddress collection might trigger a lazy load "
-"of the collection\n"
-" aPerson.getEmailAddresses().add(emailAddress);\n"
-"\n"
-" session.getTransaction().commit();\n"
-" }]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:863
#, fuzzy, no-c-format
msgid ""
"This time we did not use a <emphasis>fetch</emphasis> query to
initialize "
@@ -1888,43 +1211,40 @@
"fetch."
msgstr ""
"今回、コレクションの初期化に <emphasis>fetch</emphasis> クエリを使用しません"
-"でした。 そのため、getterメソッドの呼び出しによってコレクションを初期化するた"
-"めのSELECTが 実行されるので、コレクションに要素を追加できます。 SQLのログを監"
-"視して、即時フェッチを使って最適化してください。"
+"でした。そのため、 getter メソッドの呼び出しによってコレクションを初期化する"
+"ための SELECT が実行されるので、コレクションに要素を追加できます。 SQL のログ"
+"を監視して、即時フェッチを使って最適化してください。"
#. Tag: title
-#: tutorial.xml:872
#, no-c-format
msgid "Bi-directional associations"
msgstr "双方向関連"
#. Tag: para
-#: tutorial.xml:874
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Next you will map a bi-directional association. You will make the "
"association between person and event work from both sides in Java. The "
"database schema does not change, so you will still have many-to-many "
"multiplicity."
msgstr ""
-"次に双方向関連をマッピングします。 Javaで両側から人とイベントの関連を動作させ"
-"ます。 もちろん、データベーススキーマは変わりませんが、多重度は多対多のままで"
-"す。 リレーショナルデータベースはネットワークプログラミング言語よりも柔軟なの"
-"で、 ナビゲーションの方向のようなものを必要としません。 データはあらゆるの方"
-"法で見たり復元できるということです。"
+"次に双方向関連をマッピングします。 Java で両側から人とイベントの関連を動作さ"
+"せます。もちろん、データベーススキーマは変わりませんが、多重度は多対多のまま"
+"です。"
#. Tag: para
-#: tutorial.xml:882
#, no-c-format
msgid ""
"A relational database is more flexible than a network programming language, "
"in that it does not need a navigation direction; data can be viewed and "
"retrieved in any possible way."
msgstr ""
+"リレーショナルデータベースはネットワークプログラミング言語よりも柔軟なので、"
+"ナビゲーションの方向のようなものを必要としません。データはあらゆる方法で見た"
+"り復元できるということです。"
#. Tag: para
-#: tutorial.xml:890
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"First, add a collection of participants to the <literal>Event</literal>
"
"class:"
@@ -1932,45 +1252,17 @@
"まず <literal>Event</literal> イベントクラスに参加者のコレクションを追加しま"
"す:"
-#. Tag: programlisting
-#: tutorial.xml:895
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[ private Set participants = new HashSet();\n"
-"\n"
-" public Set getParticipants() {\n"
-" return participants;\n"
-" }\n"
-"\n"
-" public void setParticipants(Set participants) {\n"
-" this.participants = participants;\n"
-" }]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:897
-#, fuzzy, no-c-format
-msgid ""
"Now map this side of the association in
<literal>Event.hbm.xml</literal>."
msgstr ""
"それでは <literal>Event.hbm.xml</literal> で関連のこちら側をマッピングしてく"
"ださい。"
-#. Tag: programlisting
-#: tutorial.xml:901
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[ <set name=\"participants\"
table=\"PERSON_EVENT\" inverse="
-"\"true\">\n"
-" <key column=\"EVENT_ID\"/>\n"
-" <many-to-many column=\"PERSON_ID\"
class=\"events.Person\"/>\n"
-" </set>]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:903
-#, fuzzy, no-c-format
-msgid ""
"These are normal <literal>set</literal> mappings in both mapping
documents. "
"Notice that the column names in <literal>key</literal> and
<literal>many-to-"
"many</literal> swap in both mapping documents. The most important addition
"
@@ -1978,16 +1270,15 @@
"<literal>set</literal> element of the
<literal>Event</literal>'s collection "
"mapping."
msgstr ""
-"ご覧のとおり、いずれのマッピングドキュメント(XMLファイル)でも、普通の "
+"ご覧のとおり、いずれのマッピングドキュメント (XMLファイル) でも、普通の "
"<literal>set</literal> マッピングを使っています。 <literal>key</literal>
と "
-"<literal>many-to-many</literal> のカラム名が、 両方のマッピングドキュメントで"
-"入れ替えになっていることに注目してください。 ここで最も重要な追加項目は、 "
+"<literal>many-to-many</literal> のカラム名が、両方のマッピングドキュメントで"
+"入れ替えになっていることに注目してください。ここで最も重要な追加項目は、 "
"<literal>Event</literal> のコレクションマッピングの
<literal>set</literal> 要"
"素にある <literal>inverse=\"true\"</literal> 属性です。"
#. Tag: para
-#: tutorial.xml:911
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"What this means is that Hibernate should take the other side, the "
"<literal>Person</literal> class, when it needs to find out information
about "
@@ -1995,19 +1286,17 @@
"see how the bi-directional link between our two entities is created."
msgstr ""
"この指定の意味は、2つの間のエンティティ間のリンクについての情報を探す必要があ"
-"るとき、 Hibernateは反対側のエンティティ、つまり <literal>Person</literal> ク"
-"ラスから探すということです。 一度2つのエンティティ間の双方向リンクがどのよう"
-"に作成されるかがわかれば、 これを理解することはとても簡単です。"
+"るとき、 Hibernate は反対側のエンティティ、つまり <literal>Person</literal> "
+"クラスから探すということです。一度2つのエンティティ間の双方向リンクがどのよう"
+"に作成されるかがわかれば、これを理解することはとても簡単です。"
#. Tag: title
-#: tutorial.xml:920
#, no-c-format
msgid "Working bi-directional links"
msgstr "双方向リンクの動作"
#. Tag: para
-#: tutorial.xml:922
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"First, keep in mind that Hibernate does not affect normal Java semantics. "
"How did we create a link between a <literal>Person</literal> and an
"
@@ -2019,68 +1308,42 @@
"literal>. This process of \"setting the link on both sides\" is
absolutely "
"necessary with bi-directional links."
msgstr ""
-"まず、Hibernateが通常のJavaのセマンティクスに影響を及ぼさないことを心に留めて"
-"おいてください。 私たちは、単方向の例としてどのように <literal>Person</"
+"まず、 Hibernate が通常の Java のセマンティクスに影響を及ぼさないことを心に留"
+"めておいてください。私たちは、単方向の例としてどのように <literal>Person</"
"literal> と <literal>Event</literal> の間のリンクを作成したでしょうか? "
"<literal>Person</literal> のインスタンスのイベントへの参照のコレクションに "
-"<literal>Event</literal> のインスタンスを追加しました。 そのためこのリンクを"
-"双方向にしたければ、 当たり前ですが反対側にも同じことをしなければなりませ"
-"ん。 <literal>Event</literal> のコレクションに
<literal>Person</literal> へ"
-"の 参照を追加するということです。 この「両側でリンクを設定すること」は絶対に"
-"必要なので、決して忘れないでください。"
+"<literal>Event</literal> のインスタンスを追加しました。そのためこのリンクを双"
+"方向にしたければ、当たり前ですが反対側にも同じことをしなければなりません。 "
+"<literal>Event</literal> のコレクションに <literal>Person</literal>
への参照"
+"を追加するということです。この「両側でリンクを設定すること」は絶対に必要なの"
+"で、決して忘れないでください。"
#. Tag: para
-#: tutorial.xml:932
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Many developers program defensively and create link management methods to "
"correctly set both sides (for example, in
<literal>Person</literal>):"
msgstr ""
-"多くの開発者は慎重にプログラムするので、 エンティティの両側に正しく関連を設定"
-"するリンク管理メソッドを作成します。 例えば <literal>Person</literal> では以"
-"下のようになります。:"
+"多くの開発者は慎重にプログラムするので、エンティティの両側に正しく関連を設定"
+"するリンク管理メソッドを作成します。例えば <literal>Person</literal> では以下"
+"のようになります。:"
-#. Tag: programlisting
-#: tutorial.xml:937
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[ protected Set getEvents() {\n"
-" return events;\n"
-" }\n"
-"\n"
-" protected void setEvents(Set events) {\n"
-" this.events = events;\n"
-" }\n"
-"\n"
-" public void addToEvent(Event event) {\n"
-" this.getEvents().add(event);\n"
-" event.getParticipants().add(this);\n"
-" }\n"
-"\n"
-" public void removeFromEvent(Event event) {\n"
-" this.getEvents().remove(event);\n"
-" event.getParticipants().remove(this);\n"
-" }]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:939
-#, fuzzy, no-c-format
-msgid ""
"The get and set methods for the collection are now protected. This allows "
"classes in the same package and subclasses to still access the methods, but "
"prevents everybody else from altering the collections directly. Repeat the "
"steps for the collection on the other side."
msgstr ""
-"コレクションのゲットとセットメソッドが現在protectedになっていることに注意して"
-"ください。 これは同じパッケージのクラスやサブクラスのメソッドは依然アクセスが"
-"可能ですが、 (ほとんど)そのパッケージ外のどのクラスでも直接そのコレクション"
-"を台無しにすることを防ぎます。 おそらく反対側のコレクションにも同じことをした"
-"方がいいでしょう。"
+"コレクションのゲットとセットメソッドが現在 protected になっていることに注意し"
+"てください。これは同じパッケージのクラスやサブクラスのメソッドは依然アクセス"
+"が可能ですが、 (ほとんど) そのパッケージ外のどのクラスでも直接そのコレク"
+"ションを台無しにすることを防ぎます。おそらく反対側のコレクションにも同じこと"
+"をした方がいいでしょう。"
#. Tag: para
-#: tutorial.xml:946
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"What about the <literal>inverse</literal> mapping attribute? For you,
and "
"for Java, a bi-directional link is simply a matter of setting the references
"
@@ -2095,28 +1358,26 @@
"as <literal>inverse</literal>. In a one-to-many association it has to
be the "
"many-side, and in many-to-many association you can select either side."
msgstr ""
-"<literal>inverse</literal> マッピング属性とはいったい何でしょうか? 開発者と"
-"Javaにとっては、双方向リンクは単に両側の参照を正しく設定するということです。 "
-"しかしHibernateは(制約違反を避けるために)SQLの <literal>INSERT</literal> "
-"と <literal>UPDATE</literal> 文を正確に変更するための十分な情報を持っていない"
-"ので、 双方向関連プロパティを扱うための何らかの助けを必要とします。 関連の片"
-"側を <literal>inverse</literal> に設定することで、Hibernateは基本的には設定し"
-"た側を無視し、 反対側の <emphasis>鏡</emphasis> として考えます。 これだけで、"
-"Hibernateは方向を持つナビゲーションモデルをSQLデータベーススキーマへ変換する"
-"ときの すべての問題にうまく対処できます。 覚えておかなければならないルールは"
-"簡単です。 双方向関連は必ず片側を <literal>inverse</literal> にする必要がある"
-"ということです。 一対多関連ではそれは多側でなければなりません。 多対多関連で"
-"はどちら側でも構いません。どちらでも違いはありません。"
+"<literal>inverse</literal> マッピング属性とはいったい何でしょうか?開発者と "
+"Java にとっては、双方向リンクは単に両側の参照を正しく設定するということです。"
+"しかし Hibernate は(制約違反を避けるために) SQL の <literal>INSERT</"
+"literal> と <literal>UPDATE</literal> 文を正確に変更するための十分な情報を"
+"持っていないので、双方向関連プロパティを扱うための何らかの助けを必要としま"
+"す。関連の片側を <literal>inverse</literal> に設定することで、 Hibernate は基"
+"本的には設定した側を無視し、反対側の <emphasis>鏡</emphasis> として考えます。"
+"これだけで、 Hibernate は方向を持つナビゲーションモデルを SQL データベースス"
+"キーマへ変換するときのすべての問題にうまく対処できます。覚えておかなければな"
+"らないルールは簡単です。双方向関連は必ず片側を <literal>inverse</literal> に"
+"する必要があるということです。一対多関連ではそれは多側でなければなりません。"
+"多対多関連ではどちら側でも構いません。どちらでも違いはありません。"
#. Tag: title
-#: tutorial.xml:962
#, no-c-format
msgid "Part 3 - The EventManager web application"
-msgstr "パート3 - EventManager Webアプリケーション"
+msgstr "パート3 - EventManager Web アプリケーション"
#. Tag: para
-#: tutorial.xml:964
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A Hibernate web application uses <literal>Session</literal> and "
"<literal>Transaction</literal> almost like a standalone application.
"
@@ -2124,76 +1385,29 @@
"<literal>EventManagerServlet</literal>. This servlet can list all
events "
"stored in the database, and it provides an HTML form to enter new events."
msgstr ""
-"HibernateのWebアプリケーションは、スタンドアローンのアプリケーションのように "
-"<literal>Session</literal> と <literal>Transaction</literal>
を使用します。 "
-"しかしいくつかの一般的なパターンが役立ちます。 ここで "
-"<literal>EventManagerServlet</literal> を作成します。このサーブレットは、 "
-"データベースに格納した全てのイベントをリストにでき、さらにHTMLフォームから新"
-"しいイベントを入力できるものです。"
+"Hibernate の Web アプリケーションは、スタンドアローンのアプリケーションのよう"
+"に <literal>Session</literal> と
<literal>Transaction</literal> を使用しま"
+"す。しかしいくつかの一般的なパターンが役立ちます。ここで "
+"<literal>EventManagerServlet</literal> を作成します。このサーブレットは、デー"
+"タベースに格納した全てのイベントをリストにでき、さらに HTML フォームから新し"
+"いイベントを入力できるものです。"
#. Tag: title
-#: tutorial.xml:972
#, no-c-format
msgid "Writing the basic servlet"
-msgstr "基本的なServletの記述"
+msgstr "基本的な Servlet の記述"
#. Tag: para
-#: tutorial.xml:974
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"First we need create our basic processing servlet. Since our servlet only "
"handles HTTP <literal>GET</literal> requests, we will only implement
the "
"<literal>doGet()</literal> method:"
msgstr ""
-"ServletはHTTPの <literal>GET</literal> リクエストのみを処理するので、 "
+"Servlet は HTTP の <literal>GET</literal> リクエストのみを処理するので、 "
"<literal>doGet()</literal> を実装します。"
-#. Tag: programlisting
-#: tutorial.xml:980
-#, no-c-format
-msgid ""
-"<![CDATA[package org.hibernate.tutorial.web;\n"
-"\n"
-"// Imports\n"
-"\n"
-"public class EventManagerServlet extends HttpServlet {\n"
-"\n"
-" protected void doGet(\n"
-" HttpServletRequest request,\n"
-" HttpServletResponse response) throws ServletException, "
-"IOException {\n"
-"\n"
-" SimpleDateFormat dateFormatter = new SimpleDateFormat(
\"dd.MM.yyyy"
-"\" );\n"
-"\n"
-" try {\n"
-" // Begin unit of work\n"
-" HibernateUtil.getSessionFactory().getCurrentSession()."
-"beginTransaction();\n"
-"\n"
-" // Process request and render page...\n"
-"\n"
-" // End unit of work\n"
-" HibernateUtil.getSessionFactory().getCurrentSession()."
-"getTransaction().commit();\n"
-" }\n"
-" catch (Exception ex) {\n"
-" HibernateUtil.getSessionFactory().getCurrentSession()."
-"getTransaction().rollback();\n"
-" if ( ServletException.class.isInstance( ex ) ) {\n"
-" throw ( ServletException ) ex;\n"
-" }\n"
-" else {\n"
-" throw new ServletException( ex );\n"
-" }\n"
-" }\n"
-" }\n"
-"\n"
-"}]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:982
#, no-c-format
msgid ""
"Save this servlet as
<filename>src/main/java/org/hibernate/tutorial/web/"
@@ -2201,8 +1415,7 @@
msgstr ""
#. Tag: para
-#: tutorial.xml:987
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"The pattern applied here is called
<emphasis>session-per-request</emphasis>. "
"When a request hits the servlet, a new Hibernate
<literal>Session</literal> "
@@ -2211,16 +1424,15 @@
"started. All data access occurs inside a transaction irrespective of whether
"
"the data is read or written. Do not use the auto-commit mode in
applications."
msgstr ""
-"これは <emphasis>session-per-request</emphasis> というパターンです。 Servlet"
+"これは <emphasis>session-per-request</emphasis> というパターンです。 Servlet "
"がリクエストを受け取ると、 <literal>SessionFactory</literal> の "
-"<literal>getCurrentSession()</literal> の最初の呼び出しで、 Hibernateの新し"
-"い <literal>Session</literal> が開かれます。 そのときデータベーストランザク"
-"ションが開始されます。 データの読み書きに関わらず、すべてのデータアクセスはト"
-"ランザクション内で行います。 (アプリケーション内ではオートコミットモードを使"
-"用しません)。"
+"<literal>getCurrentSession()</literal> の最初の呼び出しで、 Hibernate の新し"
+"い <literal>Session</literal> が開かれます。そのときデータベーストランザク"
+"ションが開始されます。データの読み書きに関わらず、すべてのデータアクセスはト"
+"ランザクション内で行います(アプリケーション内ではオートコミットモードを使用"
+"しません)。"
#. Tag: para
-#: tutorial.xml:996
#, no-c-format
msgid ""
"Do <emphasis>not</emphasis> use a new Hibernate
<literal>Session</literal> "
@@ -2228,24 +1440,23 @@
"that is scoped to the whole request. Use
<literal>getCurrentSession()</"
"literal>, so that it is automatically bound to the current Java thread."
msgstr ""
-"Do <emphasis>not</emphasis> use a new Hibernate
<literal>Session</literal> "
-"for every database operation. Use one Hibernate
<literal>Session</literal> "
-"that is scoped to the whole request. Use
<literal>getCurrentSession()</"
-"literal>, so that it is automatically bound to the current Java thread."
+"全てのデータベースオペレーションで新しい Hibernate <literal>Session</"
+"literal> を使用 <emphasis>しないでください</emphasis> 。全てのリクエストで機"
+"能する、1つの Hibernate <literal>Session</literal> を使用してください。自動"
+"的に現在の Java スレッドにバインドされるので、 <literal>getCurrentSession()</"
+"literal> を使用してください。"
#. Tag: para
-#: tutorial.xml:1003
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Next, the possible actions of the request are processed and the response "
"HTML is rendered. We will get to that part soon."
msgstr ""
-"次に、リクエストのアクションは処理され、レスポンスであるHTMLが描画されます。 "
-"これについてはすぐに説明します。"
+"次に、リクエストのアクションは処理され、レスポンスである HTML が描画されま"
+"す。これについてはすぐに説明します。"
#. Tag: para
-#: tutorial.xml:1008
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Finally, the unit of work ends when processing and rendering are complete. "
"If any problems occurred during processing or rendering, an exception will "
@@ -2256,69 +1467,31 @@
"called <emphasis>Open Session in View</emphasis>. You will need it as
soon "
"as you consider rendering your view in JSP, not in a servlet."
msgstr ""
-"最後にリクエストの処理とHTML描画が完了したときに、作業単位(Unit of Work)を終"
-"了します。 もし処理や描画中に問題が発生した場合、exceptionが投げられてデータ"
-"ベーストランザクションをロールバックします。 これで <literal>session-per-"
-"request</literal> パターンが完了します。 全てのサーブレットにトランザクション"
+"最後にリクエストの処理と HTML 描画が完了したときに、作業単位 (Unit of Work) "
+"を終了します。もし処理や描画中に問題が発生した場合、例外が送出されててデータ"
+"ベーストランザクションをロールバックします。これで <literal>session-per-"
+"request</literal> パターンが完了します。全てのサーブレットにトランザクション"
"境界のコードを書く代わりに、サーブレットフィルタに記述することも可能です。 "
"<emphasis>Open Session in View</emphasis> と呼ばれるこのパターンについては、 "
-"HibernateのWebサイトやWikiを参照してください。 サーブレットではなくJSPでHTML"
-"描画をしようとすると、すぐにこのパターンについての情報が必要になるでしょう。"
+"Hibernate の Web サイトや Wiki を参照してください。サーブレットではなく JSP "
+"で HTML 描画をしようとすると、すぐにこのパターンについての情報が必要になるで"
+"しょう。"
#. Tag: title
-#: tutorial.xml:1022
#, no-c-format
msgid "Processing and rendering"
msgstr "処理と描画"
#. Tag: para
-#: tutorial.xml:1024
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Now you can implement the processing of the request and the rendering of the
"
"page."
msgstr "では、リクエストの処理とページの描画を実装します。"
-#. Tag: programlisting
-#: tutorial.xml:1028
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[ // Write HTML header\n"
-" PrintWriter out = response.getWriter();\n"
-" out.println(\"<html><head><title>Event
Manager</title></head><body>"
-"\");\n"
-"\n"
-" // Handle actions\n"
-" if ( \"store\".equals(request.getParameter(\"action\"))
) {\n"
-"\n"
-" String eventTitle =
request.getParameter(\"eventTitle\");\n"
-" String eventDate =
request.getParameter(\"eventDate\");\n"
-"\n"
-" if ( \"\".equals(eventTitle) ||
\"\".equals(eventDate) ) {\n"
-" out.println(\"<b><i>Please enter event title and
date.</i></"
-"b>\");\n"
-" }\n"
-" else {\n"
-" createAndStoreEvent(eventTitle, dateFormatter.parse"
-"(eventDate));\n"
-" out.println(\"<b><i>Added
event.</i></b>\");\n"
-" }\n"
-" }\n"
-"\n"
-" // Print page\n"
-" printEventForm(out);\n"
-" listEvents(out, dateFormatter);\n"
-"\n"
-" // Write HTML footer\n"
-" out.println(\"</body></html>\");\n"
-" out.flush();\n"
-" out.close();]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:1030
-#, fuzzy, no-c-format
-msgid ""
"This coding style, with a mix of Java and HTML, would not scale in a more "
"complex application—keep in mind that we are only illustrating basic
"
"Hibernate concepts in this tutorial. The code prints an HTML header and a "
@@ -2326,72 +1499,23 @@
"events in the database are printed. The first method is trivial and only "
"outputs HTML:"
msgstr ""
-"JavaとHTMLが混在するコーディングスタイルは、より複雑なアプリケーションには適"
-"していないでしょう (このチュートリアルでは、基本的なHibernateのコンセプトを"
-"示しているだけであることを覚えておいてください)。 このコードはHTMLのヘッダー"
-"とフッターの記述です。 このページには、イベントを入力するHTMLフォームと、デー"
-"タベースにある全てのイベントのリストが表示されます。 最初のメソッドはごく単純"
-"なHTML出力です。"
+"Java と HTML が混在するコーディングスタイルは、より複雑なアプリケーションには"
+"適していないでしょう (このチュートリアルでは、基本的な Hibernate のコンセプ"
+"トを示しているだけであることを覚えておいてください)。このコードは HTML の"
+"ヘッダーとフッターの記述です。このページには、イベントを入力する HTML フォー"
+"ムと、データベースにある全てのイベントのリストが表示されます。最初のメソッド"
+"はごく単純な HTML 出力です。"
-#. Tag: programlisting
-#: tutorial.xml:1039
-#, no-c-format
-msgid ""
-"<![CDATA[ private void printEventForm(PrintWriter out) {\n"
-" out.println(\"<h2>Add new event:</h2>\");\n"
-" out.println(\"<form>\");\n"
-" out.println(\"Title: <input name='eventTitle'
length='50'/><br/>"
-"\");\n"
-" out.println(\"Date (e.g. 24.12.2009): <input
name='eventDate' "
-"length='10'/><br/>\");\n"
-" out.println(\"<input type='submit' name='action'
value='store'/>"
-"\");\n"
-" out.println(\"</form>\");\n"
-" }]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:1041
#, no-c-format
msgid ""
"The <literal>listEvents()</literal> method uses the Hibernate "
"<literal>Session</literal> bound to the current thread to execute a
query:"
msgstr ""
"<literal>listEvents()</literal> メソッドは、現在のスレッドに結びつく "
-"Hibernateの <literal>Session</literal> を使用して、クエリを実行します。"
+"Hibernate の <literal>Session</literal> を使用して、クエリを実行します。"
-#. Tag: programlisting
-#: tutorial.xml:1047
-#, no-c-format
-msgid ""
-"<![CDATA[ private void listEvents(PrintWriter out, SimpleDateFormat "
-"dateFormatter) {\n"
-"\n"
-" List result = HibernateUtil.getSessionFactory()\n"
-" .getCurrentSession().createCriteria(Event.class).list();\n"
-" if (result.size() > 0) {\n"
-" out.println(\"<h2>Events in
database:</h2>\");\n"
-" out.println(\"<table border='1'>\");\n"
-" out.println(\"<tr>\");\n"
-" out.println(\"<th>Event title</th>\");\n"
-" out.println(\"<th>Event date</th>\");\n"
-" out.println(\"</tr>\");\n"
-" Iterator it = result.iterator();\n"
-" while (it.hasNext()) {\n"
-" Event event = (Event) it.next();\n"
-" out.println(\"<tr>\");\n"
-" out.println(\"<td>\" + event.getTitle() +
\"</td>\");\n"
-" out.println(\"<td>\" +
dateFormatter.format(event.getDate()) "
-"+ \"</td>\");\n"
-" out.println(\"</tr>\");\n"
-" }\n"
-" out.println(\"</table>\");\n"
-" }\n"
-" }]]>"
-msgstr ""
-
#. Tag: para
-#: tutorial.xml:1049
#, no-c-format
msgid ""
"Finally, the <literal>store</literal> action is dispatched to the
"
@@ -2399,28 +1523,12 @@
"<literal>Session</literal> of the current thread:"
msgstr ""
"最後に、 <literal>store</literal> アクションが
<literal>createAndStoreEvent()"
-"</literal> メソッドを 呼び出します。このメソッドでも現在のスレッドの "
+"</literal> メソッドを呼び出します。このメソッドでも現在のスレッドの "
"<literal>Session</literal> を利用します。"
-#. Tag: programlisting
-#: tutorial.xml:1055
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[ protected void createAndStoreEvent(String title, Date theDate)
"
-"{\n"
-" Event theEvent = new Event();\n"
-" theEvent.setTitle(title);\n"
-" theEvent.setDate(theDate);\n"
-"\n"
-" HibernateUtil.getSessionFactory()\n"
-" .getCurrentSession().save(theEvent);\n"
-" }]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:1057
-#, fuzzy, no-c-format
-msgid ""
"The servlet is now complete. A request to the servlet will be processed in a
"
"single <literal>Session</literal> and
<literal>Transaction</literal>. As "
"earlier in the standalone application, Hibernate can automatically bind "
@@ -2430,24 +1538,22 @@
"data access code into data access objects (the DAO pattern). See the "
"Hibernate Wiki for more examples."
msgstr ""
-"これでサーブレットの完成です。 サーブレットへのリクエストは、一つの "
+"これでサーブレットの完成です。サーブレットへのリクエストは、1つの "
"<literal>Session</literal> と <literal>Transaction</literal>
で処理されるで"
-"しょう。 最初のスタンドアローンのアプリケーションのように、 Hibernateは自動的"
-"にこれらのオブジェクトを実行するスレッドに結び付けることができます。 これによ"
-"り、開発者が自由にコードをレイヤー分けでき、 好きな方法で "
-"<literal>SessionFactory</literal> へのアクセスができるようになります。 通常、"
-"開発者はより洗練されたデザインを使用して、データアクセスのコードを データアク"
-"セスオブジェクトに移動するでしょう(DAOパターン)。 より多くの例は、Hibernate"
-"のWikiを参照してください。"
+"しょう。最初のスタンドアローンのアプリケーションのように、 Hibernate は自動的"
+"にこれらのオブジェクトを実行するスレッドに結び付けることができます。これによ"
+"り、開発者が自由にコードをレイヤー分けでき、好きな方法で "
+"<literal>SessionFactory</literal> へのアクセスができるようになります。通常、"
+"開発者はより洗練されたデザインを使用して、データアクセスのコードをデータアク"
+"セスオブジェクトに移動するでしょう(DAOパターン)。より多くの例は、 "
+"Hibernate の Wiki を参照してください。"
#. Tag: title
-#: tutorial.xml:1071
#, no-c-format
msgid "Deploying and testing"
msgstr "デプロイとテスト"
#. Tag: para
-#: tutorial.xml:1073
#, no-c-format
msgid ""
"To deploy this application for testing we must create a Web ARchive (WAR). "
@@ -2455,56 +1561,29 @@
"web.xml</filename>"
msgstr ""
-#. Tag: programlisting
-#: tutorial.xml:1079
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<?xml version=\"1.0\"
encoding=\"UTF-8\"?>\n"
-"<web-app version=\"2.4\"\n"
-"
xmlns=\"http://java.sun.com/xml/ns/j2ee\"\n"
-"
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"
-"
xsi:schemaLocation=\"http://java.sun.com/xml/ns/j2ee
http://java.sun.com/"
-"xml/ns/j2ee/web-app_2_4.xsd\">\n"
-"\n"
-" <servlet>\n"
-" <servlet-name>Event Manager</servlet-name>\n"
-"
<servlet-class>org.hibernate.tutorial.web.EventManagerServlet</"
-"servlet-class>\n"
-" </servlet>\n"
-"\n"
-" <servlet-mapping>\n"
-" <servlet-name>Event Manager</servlet-name>\n"
-" <url-pattern>/eventmanager</url-pattern>\n"
-" </servlet-mapping>\n"
-"</web-app>]]>"
-msgstr ""
-
-#. Tag: para
-#: tutorial.xml:1081
-#, fuzzy, no-c-format
-msgid ""
"To build and deploy call <literal>mvn package</literal> in your project
"
"directory and copy the <filename>hibernate-tutorial.war</filename> file
into "
"your Tomcat <filename>webapps</filename> directory."
msgstr ""
-"ビルドとデプロイのために、プロジェクトディレクトリで <literal>ant war</"
-"literal> を呼び出し、 <literal>hibernate-tutorial.war</literal>
ファイルを"
-"Tomcatの <literal>webapp</literal> ディレクトリにコピーしてください。 まだ"
-"Tomcatをインストールしていなければ、ダウンロードして、以下のインストールガイ"
-"ドに従ってください。 しかし、このアプリケーションのデプロイするために、Tomcat"
-"の設定を変更する必要はありません。"
+"ビルドとデプロイのために、プロジェクトディレクトリで <literal>mvn package</"
+"literal> を呼び出し、 <literal>hibernate-tutorial.war</literal> ファイルを
"
+"Tomcat の <literal>webapp</literal> ディレクトリにコピーしてください。"
#. Tag: para
-#: tutorial.xml:1088
#, no-c-format
msgid ""
"If you do not have Tomcat installed, download it from <ulink
url=\"http://"
-"tomcat.apache.org/\"></ulink> and follow the installation
instructions. Our "
+"tomcat.apache.org/\" /> and follow the installation instructions. Our
"
"application requires no changes to the standard Tomcat configuration."
msgstr ""
+"まだ Tomcat をインストールしていなければ、ダウンロードして、インストールガイ"
+"ドに従ってください。しかし、このアプリケーションのデプロイするために、 "
+"Tomcat の設定を変更する必要はありません。"
#. Tag: para
-#: tutorial.xml:1096
#, no-c-format
msgid ""
"Once deployed and Tomcat is running, access the application at "
@@ -2514,415 +1593,1202 @@
"<literal>HibernateUtil</literal> is called) and to get the detailed
output "
"if any exceptions occurs."
msgstr ""
-"一度デプロイしてTomcatを起動すれば、 <literal>http://localhost:8080/"
-"hibernate-tutorial/eventmanager</literal> で アプリケーションへのアクセスが可"
-"能です。 最初のリクエストが作成したサーブレットに渡ったときに、Tomcatのログ"
-"で Hibernateの初期化処理を確認してください ( <literal>HibernateUtil</"
-"literal> 内の静的初期化ブロックが呼ばれています)。 また、exceptionが発生した"
-"なら詳細を確認してください。"
+"一度デプロイして Tomcat を起動すれば、 <literal>http://localhost:8080/"
+"hibernate-tutorial/eventmanager</literal> でアプリケーションへのアクセスが可"
+"能です。最初のリクエストが作成したサーブレットに渡ったときに、 Tomcat のログ"
+"で Hibernate の初期化処理を確認してください ( <literal>HibernateUtil</"
+"literal> 内の静的初期化ブロックが呼ばれています)。また、例外が発生したなら詳"
+"細を確認してください。"
#. Tag: title
-#: tutorial.xml:1109
#, no-c-format
msgid "Summary"
msgstr "要約"
#. Tag: para
-#: tutorial.xml:1111
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"This tutorial covered the basics of writing a simple standalone Hibernate "
"application and a small web application. More tutorials are available from "
"the Hibernate <ulink
url=\"http://hibernate.org\">website</ulink>."
msgstr ""
-"このチュートリアルでは、簡単なスタンドアローンのHibernateアプリケーションと "
-"小規模のWebアプリケーションを書くための基本を紹介しました。"
+"このチュートリアルでは、簡単なスタンドアローンの Hibernate アプリケーションと"
+"小規模の Web アプリケーションを書くための基本を紹介しました。"
-#~ msgid "Introduction to Hibernate"
-#~ msgstr "Hibernateの導入"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[package org.hibernate.tutorial.domain;\n"
+#~ "\n"
+#~ "import java.util.Date;\n"
+#~ "\n"
+#~ "public class Event {\n"
+#~ " private Long id;\n"
+#~ "\n"
+#~ " private String title;\n"
+#~ " private Date date;\n"
+#~ "\n"
+#~ " public Event() {}\n"
+#~ "\n"
+#~ " public Long getId() {\n"
+#~ " return id;\n"
+#~ " }\n"
+#~ "\n"
+#~ " private void setId(Long id) {\n"
+#~ " this.id = id;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public Date getDate() {\n"
+#~ " return date;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void setDate(Date date) {\n"
+#~ " this.date = date;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public String getTitle() {\n"
+#~ " return title;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void setTitle(String title) {\n"
+#~ " this.title = title;\n"
+#~ " }\n"
+#~ "}]]>"
+#~ msgstr ""
+#~ "package events;\n"
+#~ "\n"
+#~ "import java.util.Date;\n"
+#~ "\n"
+#~ "public class Event {\n"
+#~ " private Long id;\n"
+#~ "\n"
+#~ " private String title;\n"
+#~ " private Date date;\n"
+#~ "\n"
+#~ " public Event() {}\n"
+#~ "\n"
+#~ " public Long getId() {\n"
+#~ " return id;\n"
+#~ " }\n"
+#~ "\n"
+#~ " private void setId(Long id) {\n"
+#~ " this.id = id;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public Date getDate() {\n"
+#~ " return date;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void setDate(Date date) {\n"
+#~ " this.date = date;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public String getTitle() {\n"
+#~ " return title;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void setTitle(String title) {\n"
+#~ " this.title = title;\n"
+#~ " }\n"
+#~ "}"
-#~ msgid "Preface"
-#~ msgstr "前書き"
-
+#, fuzzy
#~ msgid ""
-#~ "This chapter is an introductory tutorial for new users of Hibernate. We "
-#~ "start with a simple command line application using an in-memory database "
-#~ "and develop it in easy to understand steps."
+#~ "<![CDATA[<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd\">\n"
+#~ "\n"
+#~ "<hibernate-mapping
package=\"org.hibernate.tutorial.domain\">\n"
+#~ "[...]\n"
+#~ "</hibernate-mapping>]]>"
#~ msgstr ""
-#~ "この章はHibernateを初めて使うユーザ向けの入門的なチュートリアルです。 イン"
-#~ "メモリデータベースを使う簡単なコマンドラインアプリケーションから始め、 一"
-#~ "歩一歩わかりやすいやり方で開発を進めます。"
+#~ "<?xml version=\"1.0\"?>\n"
+#~ "<!DOCTYPE hibernate-mapping PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Mapping DTD 3.0//EN\"\n"
+#~ " \"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
+#~ "\">\n"
+#~ "\n"
+#~ "<hibernate-mapping>\n"
+#~ "[...]\n"
+#~ "</hibernate-mapping>"
+#, fuzzy
#~ msgid ""
-#~ "This tutorial is intended for new users of Hibernate but requires Java "
-#~ "and SQL knowledge. It is based on a tutorial by Michael Gloegl, the
third-"
-#~ "party libraries we name are for JDK 1.4 and 5.0. You might need others "
-#~ "for JDK 1.3."
+#~ "<![CDATA[<hibernate-mapping
package=\"org.hibernate.tutorial.domain\">\n"
+#~ "\n"
+#~ " <class name=\"Event\" table=\"EVENTS\">\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
#~ msgstr ""
-#~ "このチュートリアルはHibernateを初めて使うユーザを想定していますが、 理解す"
-#~ "るにはJavaとSQLについての知識が必要です。 これはMichael Gloeglの手による"
-#~ "チュートリアルを下敷きにしていますが、 ここでサードパーティライブラリと"
-#~ "言っているのは、JDK 1.4と5.0用のものです。 JDK 1.3を利用するのであれば他の"
-#~ "ライブラリが必要かもしれません。"
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"events.Event\"
table=\"EVENTS\">\n"
+#~ "\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+#, fuzzy
#~ msgid ""
-#~ "The source code for the tutorial is included in the distribution in the "
-#~ "<literal>doc/reference/tutorial/</literal> directory."
+#~ "<![CDATA[<hibernate-mapping
package=\"org.hibernate.tutorial.domain\">\n"
+#~ "\n"
+#~ " <class name=\"Event\" table=\"EVENTS\">\n"
+#~ " <id name=\"id\" column=\"EVENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
#~ msgstr ""
-#~ "チュートリアルのソースコードはHibernateディストリビューションの "
-#~ "<literal>doc/reference/tutorial/</literal> にあります。"
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"events.Event\"
table=\"EVENTS\">\n"
+#~ " <id name=\"id\"
column=\"EVENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+#, fuzzy
#~ msgid ""
-#~ "First, we'll create a simple console-based Hibernate application. We use
"
-#~ "an Java database (HSQL DB), so we do not have to install any database "
-#~ "server."
+#~ "<![CDATA[\n"
+#~ "<hibernate-mapping
package=\"org.hibernate.tutorial.domain\">\n"
+#~ "\n"
+#~ " <class name=\"Event\" table=\"EVENTS\">\n"
+#~ " <id name=\"id\" column=\"EVENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"date\" type=\"timestamp\"
column=\"EVENT_DATE\"/"
+#~ ">\n"
+#~ " <property name=\"title\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
#~ msgstr ""
-#~ "最初にコンソールベースの簡単なHibernateアプリケーションを作成します。 Java"
-#~ "データベース(HSQL DB)を利用するので、 データベースサーバをインストールす"
-#~ "る必要はありません。"
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"events.Event\"
table=\"EVENTS\">\n"
+#~ " <id name=\"id\"
column=\"EVENT_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"date\" type=\"timestamp\"
column=\"EVENT_DATE"
+#~ "\"/>\n"
+#~ " <property name=\"title\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+#, fuzzy
#~ msgid ""
-#~ "The first thing we do, is set up our development directory and put all "
-#~ "the Java libraries we need into it. Download the Hibernate distribution "
-#~ "from the Hibernate website. Extract the package and place all required "
-#~ "libraries found in <literal>/lib</literal> into into the
<literal>/lib</"
-#~ "literal> directory of your new development working directory. It should
"
-#~ "look like this:"
+#~ "<![CDATA[<?xml version='1.0'
encoding='utf-8'?>\n"
+#~ "<!DOCTYPE hibernate-configuration PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Configuration DTD 3.0//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
+#~ "\">\n"
+#~ "\n"
+#~ "<hibernate-configuration>\n"
+#~ "\n"
+#~ " <session-factory>\n"
+#~ "\n"
+#~ " <!-- Database connection settings -->\n"
+#~ " <property
name=\"connection.driver_class\">org.hsqldb.jdbcDriver</"
+#~ "property>\n"
+#~ " <property
name=\"connection.url\">jdbc:hsqldb:hsql://localhost</"
+#~ "property>\n"
+#~ " <property
name=\"connection.username\">sa</property>\n"
+#~ " <property
name=\"connection.password\"></property>\n"
+#~ "\n"
+#~ " <!-- JDBC connection pool (use the built-in) -->\n"
+#~ " <property
name=\"connection.pool_size\">1</property>\n"
+#~ "\n"
+#~ " <!-- SQL dialect -->\n"
+#~ " <property
name=\"dialect\">org.hibernate.dialect.HSQLDialect</"
+#~ "property>\n"
+#~ "\n"
+#~ " <!-- Enable Hibernate's automatic session context management
-->\n"
+#~ " <property
name=\"current_session_context_class\">thread</"
+#~ "property>\n"
+#~ "\n"
+#~ " <!-- Disable the second-level cache -->\n"
+#~ " <property
name=\"cache.provider_class\">org.hibernate.cache."
+#~ "NoCacheProvider</property>\n"
+#~ "\n"
+#~ " <!-- Echo all executed SQL to stdout -->\n"
+#~ " <property
name=\"show_sql\">true</property>\n"
+#~ "\n"
+#~ " <!-- Drop and re-create the database schema on startup
-->\n"
+#~ " <property
name=\"hbm2ddl.auto\">update</property>\n"
+#~ "\n"
+#~ " <mapping
resource=\"org/hibernate/tutorial/domain/Event.hbm.xml\"/"
+#~ ">\n"
+#~ "\n"
+#~ " </session-factory>\n"
+#~ "\n"
+#~ "</hibernate-configuration>]]>"
#~ msgstr ""
-#~ "まず最初にすることは開発用のディレクトリをセットアップして、 必要となるす"
-#~ "べてのJavaライブラリを配置することです。 Hibernateウェブサイトから"
-#~ "Hibernateディストリビューションをダウンロードしてください。 ファイルを解凍"
-#~ "して <literal>/lib</literal> にある必要なライブラリのすべてを、 新しい開発"
-#~ "用ディレクトリの <literal>/lib</literal> ディレクトリに配置してください。 "
-#~ "このようになっているはずです:"
+#~ "<?xml version='1.0' encoding='utf-8'?>\n"
+#~ "<!DOCTYPE hibernate-configuration PUBLIC\n"
+#~ " \"-//Hibernate/Hibernate Configuration DTD 3.0//EN\"\n"
+#~ "
\"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
+#~ "\">\n"
+#~ "\n"
+#~ "<hibernate-configuration>\n"
+#~ "\n"
+#~ " <session-factory>\n"
+#~ "\n"
+#~ " <!-- Database connection settings -->\n"
+#~ " <property
name=\"connection.driver_class\">org.hsqldb."
+#~ "jdbcDriver</property>\n"
+#~ " <property
name=\"connection.url\">jdbc:hsqldb:hsql://"
+#~ "localhost</property>\n"
+#~ " <property
name=\"connection.username\">sa</property>\n"
+#~ " <property
name=\"connection.password\"></property>\n"
+#~ "\n"
+#~ " <!-- JDBC connection pool (use the built-in) -->\n"
+#~ " <property
name=\"connection.pool_size\">1</property>\n"
+#~ "\n"
+#~ " <!-- SQL dialect -->\n"
+#~ " <property
name=\"dialect\">org.hibernate.dialect."
+#~ "HSQLDialect</property>\n"
+#~ "\n"
+#~ " <!-- Enable Hibernate's automatic session context management
--"
+#~ ">\n"
+#~ " <property
name=\"current_session_context_class\">thread</"
+#~ "property>\n"
+#~ "\n"
+#~ " <!-- Disable the second-level cache -->\n"
+#~ " <property
name=\"cache.provider_class\">org.hibernate.cache."
+#~ "NoCacheProvider</property>\n"
+#~ "\n"
+#~ " <!-- Echo all executed SQL to stdout -->\n"
+#~ " <property
name=\"show_sql\">true</property>\n"
+#~ "\n"
+#~ " <!-- Drop and re-create the database schema on startup
-->\n"
+#~ " <property
name=\"hbm2ddl.auto\">create</property>\n"
+#~ "\n"
+#~ " <mapping
resource=\"events/Event.hbm.xml\"/>\n"
+#~ "\n"
+#~ " </session-factory>\n"
+#~ "\n"
+#~ "</hibernate-configuration>"
+#, fuzzy
#~ msgid ""
-#~ "This is the minimum set of required libraries (note that we also copied "
-#~ "hibernate3.jar, the main archive) for Hibernate <emphasis>at the time of
"
-#~ "writing</emphasis>. The Hibernate release you are using might require
"
-#~ "more or less libraries. See the <literal>README.txt</literal> file
in the "
-#~ "<literal>lib/</literal> directory of the Hibernate distribution for
more "
-#~ "information about required and optional third-party libraries. (Actually,
"
-#~ "Log4j is not required but preferred by many developers.)"
+#~ "<![CDATA[package org.hibernate.tutorial.util;\n"
+#~ "\n"
+#~ "import org.hibernate.SessionFactory;\n"
+#~ "import org.hibernate.cfg.Configuration;\n"
+#~ "\n"
+#~ "public class HibernateUtil {\n"
+#~ "\n"
+#~ " private static final SessionFactory sessionFactory = "
+#~ "buildSessionFactory();\n"
+#~ "\n"
+#~ " private static SessionFactory buildSessionFactory() {\n"
+#~ " try {\n"
+#~ " // Create the SessionFactory from hibernate.cfg.xml\n"
+#~ " return new Configuration().configure().buildSessionFactory"
+#~ "();\n"
+#~ " }\n"
+#~ " catch (Throwable ex) {\n"
+#~ " // Make sure you log the exception, as it might be
swallowed\n"
+#~ " System.err.println(\"Initial SessionFactory creation
failed."
+#~ "\" + ex);\n"
+#~ " throw new ExceptionInInitializerError(ex);\n"
+#~ " }\n"
+#~ " }\n"
+#~ "\n"
+#~ " public static SessionFactory getSessionFactory() {\n"
+#~ " return sessionFactory;\n"
+#~ " }\n"
+#~ "\n"
+#~ "}]]>"
#~ msgstr ""
-#~ "これが <emphasis>本ドキュメント執筆時点での</emphasis> Hibernateの必要最低"
-#~ "限のライブラリです (メインアーカイブのhibernate3.jarもコピーしていること"
-#~ "に注意してください)。 Hibernateのバージョンによってはさらに必要なライブラ"
-#~ "リや、不要なライブラリがあるかもしれません。 Hibernateディストリビューショ"
-#~ "ンの <literal>lib/</literal> ディレクトリにある
<literal>README.txt</"
-#~ "literal> ファイルを見てください。 必須またはオプションのサードパーティライ"
-#~ "ブラリについての情報を載せています (実際Log4jは必須ではありませんが、多く"
-#~ "の開発者が好んでいます)。"
+#~ "package util;\n"
+#~ "\n"
+#~ "import org.hibernate.*;\n"
+#~ "import org.hibernate.cfg.*;\n"
+#~ "\n"
+#~ "public class HibernateUtil {\n"
+#~ "\n"
+#~ " private static final SessionFactory sessionFactory;\n"
+#~ "\n"
+#~ " static {\n"
+#~ " try {\n"
+#~ " // Create the SessionFactory from hibernate.cfg.xml\n"
+#~ " sessionFactory = new Configuration().configure()."
+#~ "buildSessionFactory();\n"
+#~ " } catch (Throwable ex) {\n"
+#~ " // Make sure you log the exception, as it might be
swallowed\n"
+#~ " System.err.println(\"Initial SessionFactory creation
failed."
+#~ "\" + ex);\n"
+#~ " throw new ExceptionInInitializerError(ex);\n"
+#~ " }\n"
+#~ " }\n"
+#~ "\n"
+#~ " public static SessionFactory getSessionFactory() {\n"
+#~ " return sessionFactory;\n"
+#~ " }\n"
+#~ "\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "Our first persistent class is a simple JavaBean class with some "
-#~ "properties:"
+#~ "<![CDATA[package org.hibernate.tutorial;\n"
+#~ "\n"
+#~ "import org.hibernate.Session;\n"
+#~ "\n"
+#~ "import java.util.*;\n"
+#~ "\n"
+#~ "import org.hibernate.tutorial.domain.Event;\n"
+#~ "import org.hibernate.tutorial.util.HibernateUtil;\n"
+#~ "\n"
+#~ "public class EventManager {\n"
+#~ "\n"
+#~ " public static void main(String[] args) {\n"
+#~ " EventManager mgr = new EventManager();\n"
+#~ "\n"
+#~ " if (args[0].equals(\"store\")) {\n"
+#~ " mgr.createAndStoreEvent(\"My Event\", new
Date());\n"
+#~ " }\n"
+#~ "\n"
+#~ " HibernateUtil.getSessionFactory().close();\n"
+#~ " }\n"
+#~ "\n"
+#~ " private void createAndStoreEvent(String title, Date theDate) {\n"
+#~ " Session session = HibernateUtil.getSessionFactory()."
+#~ "getCurrentSession();\n"
+#~ " session.beginTransaction();\n"
+#~ "\n"
+#~ " Event theEvent = new Event();\n"
+#~ " theEvent.setTitle(title);\n"
+#~ " theEvent.setDate(theDate);\n"
+#~ " session.save(theEvent);\n"
+#~ "\n"
+#~ " session.getTransaction().commit();\n"
+#~ " }\n"
+#~ "\n"
+#~ "}]]>"
#~ msgstr ""
-#~ "最初の永続クラスは、プロパティをいくつか持つシンプルなJavaBeanです:"
+#~ "package events;\n"
+#~ "import org.hibernate.Session;\n"
+#~ "\n"
+#~ "import java.util.Date;\n"
+#~ "\n"
+#~ "import util.HibernateUtil;\n"
+#~ "\n"
+#~ "public class EventManager {\n"
+#~ "\n"
+#~ " public static void main(String[] args) {\n"
+#~ " EventManager mgr = new EventManager();\n"
+#~ "\n"
+#~ " if (args[0].equals(\"store\")) {\n"
+#~ " mgr.createAndStoreEvent(\"My Event\", new
Date());\n"
+#~ " }\n"
+#~ "\n"
+#~ " HibernateUtil.getSessionFactory().close();\n"
+#~ " }\n"
+#~ "\n"
+#~ " private void createAndStoreEvent(String title, Date theDate) {\n"
+#~ "\n"
+#~ " Session session = HibernateUtil.getSessionFactory()."
+#~ "getCurrentSession();\n"
+#~ "\n"
+#~ " session.beginTransaction();\n"
+#~ "\n"
+#~ " Event theEvent = new Event();\n"
+#~ " theEvent.setTitle(title);\n"
+#~ " theEvent.setDate(theDate);\n"
+#~ "\n"
+#~ " session.save(theEvent);\n"
+#~ "\n"
+#~ " session.getTransaction().commit();\n"
+#~ " }\n"
+#~ "\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "Place this Java source file in a directory called
<literal>src</literal> "
-#~ "in the development folder, and in its correct package. The directory "
-#~ "should now look like this:"
+#~ "<![CDATA[[java] Hibernate: insert into EVENTS (EVENT_DATE, title, "
+#~ "EVENT_ID) values (?, ?, ?)]]>"
#~ msgstr ""
-#~ "開発フォルダの <literal>src</literal> というディレクトリの適切なパッケージ"
-#~ "に、 このJavaソースファイルを配置してください。 この時点でディレクトリは以"
-#~ "下のようになっているはずです:"
+#~ "[java] Hibernate: insert into EVENTS (EVENT_DATE, title, EVENT_ID) values
"
+#~ "(?, ?, ?)"
-#~ msgid "In the next step, we tell Hibernate about this persistent class."
-#~ msgstr "次のステップでは、Hibernateにこの永続クラスの情報を教えます。"
-
+#, fuzzy
#~ msgid ""
-#~ "The <literal>id</literal> element is the declaration of the
identifer "
-#~ "property, <literal>name=\"id\"</literal> declares the name
of the Java "
-#~ "property - Hibernate will use the getter and setter methods to access the
"
-#~ "property. The column attribute tells Hibernate which column of the "
-#~ "<literal>EVENTS</literal> table we use for this primary key. The
nested "
-#~ "<literal>generator</literal> element specifies the identifier
generation "
-#~ "strategy, in this case we used <literal>native</literal>, which
picks the "
-#~ "best strategy depending on the configured database (dialect). Hibernate "
-#~ "supports database generated, globally unique, as well as application "
-#~ "assigned identifiers (or any strategy you have written an extension for)."
+#~ "<![CDATA[ if (args[0].equals(\"store\")) {\n"
+#~ " mgr.createAndStoreEvent(\"My Event\", new
Date());\n"
+#~ " }\n"
+#~ " else if (args[0].equals(\"list\")) {\n"
+#~ " List events = mgr.listEvents();\n"
+#~ " for (int i = 0; i < events.size(); i++) {\n"
+#~ " Event theEvent = (Event) events.get(i);\n"
+#~ " System.out.println(\n"
+#~ " \"Event: \" + theEvent.getTitle() + \"
Time: \" + "
+#~ "theEvent.getDate()\n"
+#~ " );\n"
+#~ " }\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "<literal>id</literal> 要素は識別子プロパティの宣言であり、 <literal>name="
-#~ "\"id\"</literal> でJavaプロパティの名前を宣言します。 Hibernateはこのプロ"
-#~ "パティへアクセスするためにゲッター、セッターメソッドを使います。 カラム属"
-#~ "性では <literal>EVENTS</literal> テーブルのどのカラムを主キーとして使うの"
-#~ "かを Hibernateに教えます。 入れ子になっている <literal>generator</"
-#~ "literal> 要素は、識別子を生成する時の戦略を指定します。 (この例では "
-#~ "<literal>native</literal> を用いました)。 この要素は、設定したデータベー"
-#~ "ス(dialect)に対する最良な識別子生成戦略を選定するものです。 Hibernate"
-#~ "は、アプリケーションで値を割り当てる戦略(もしくは独自に拡張した戦略)と同"
-#~ "様に、 グローバルにユニークな値をデータベースに生成させる戦略もサポートし"
-#~ "ています。"
+#~ "if (args[0].equals(\"store\")) {\n"
+#~ " mgr.createAndStoreEvent(\"My Event\", new Date());\n"
+#~ "}\n"
+#~ "else if (args[0].equals(\"list\")) {\n"
+#~ " List events = mgr.listEvents();\n"
+#~ " for (int i = 0; i < events.size(); i++) {\n"
+#~ " Event theEvent = (Event) events.get(i);\n"
+#~ " System.out.println(\"Event: \" + theEvent.getTitle()
+\n"
+#~ " \" Time: \" + theEvent.getDate());\n"
+#~ " }\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "This mapping file should be saved as
<literal>Event.hbm.xml</literal>, "
-#~ "right in the directory next to the <literal>Event</literal> Java
class "
-#~ "source file. The naming of mapping files can be arbitrary, however the "
-#~ "<literal>hbm.xml</literal> suffix is a convention in the Hibernate
"
-#~ "developer community. The directory structure should now look like this:"
+#~ "<![CDATA[ private List listEvents() {\n"
+#~ " Session session = HibernateUtil.getSessionFactory()."
+#~ "getCurrentSession();\n"
+#~ " session.beginTransaction();\n"
+#~ " List result = session.createQuery(\"from
Event\").list();\n"
+#~ " session.getTransaction().commit();\n"
+#~ " return result;\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "このマッピングファイルは、<literal>Event.hbm.xml</literal> として "
-#~ "<literal>Event</literal> Javaクラスソースファイルのすぐ隣にセーブするべき"
-#~ "です。 マッピングファイルの命名方法は任意ですが、<literal>hbm.xml</"
-#~ "literal> サフィックスがHibernateの開発者のコミュニティ内での習慣となってい"
-#~ "ます。 現在ディレクトリ構造はこのようになっているはずです:"
+#~ "private List listEvents() {\n"
+#~ "\n"
+#~ " Session session = HibernateUtil.getSessionFactory().getCurrentSession"
+#~ "();\n"
+#~ "\n"
+#~ " session.beginTransaction();\n"
+#~ "\n"
+#~ " List result = session.createQuery(\"from Event\").list();\n"
+#~ "\n"
+#~ " session.getTransaction().commit();\n"
+#~ "\n"
+#~ " return result;\n"
+#~ "}"
-#~ msgid "We continue with the main configuration of Hibernate."
-#~ msgstr "Hibernateの主要な設定を続けます。"
-
+#, fuzzy
#~ msgid ""
-#~ "We now have a persistent class and its mapping file in place. It is time "
-#~ "to configure Hibernate. Before we do this, we will need a database. HSQL "
-#~ "DB, a java-based SQL DBMS, can be downloaded from the HSQL DB website"
-#~ "(http://hsqldb.org/). Actually, you only need the
<literal>hsqldb.jar</"
-#~ "literal> from this download. Place this file in the
<literal>lib/</"
-#~ "literal> directory of the development folder."
+#~ "<![CDATA[package org.hibernate.tutorial.domain;\n"
+#~ "\n"
+#~ "public class Person {\n"
+#~ "\n"
+#~ " private Long id;\n"
+#~ " private int age;\n"
+#~ " private String firstname;\n"
+#~ " private String lastname;\n"
+#~ "\n"
+#~ " public Person() {}\n"
+#~ "\n"
+#~ " // Accessor methods for all properties, private setter for
'id'\n"
+#~ "\n"
+#~ "}]]>"
#~ msgstr ""
-#~ "ここまでで永続クラスとマッピングファイルが揃いました。これからHibernateの"
-#~ "設定を行いますが、 その前にデータベースが必要です。 HSQL DBはJavaベースの"
-#~ "インメモリSQL DBMSであり、HSQL DBウェブサイトからダウンロードできます。 実"
-#~ "際にはダウンロードした中の <literal>hsqldb.jar</literal> だけが必要です。 "
-#~ "このファイルを開発フォルダの <literal>lib/</literal> ディレクトリに配置し"
-#~ "てください。"
+#~ "package events;\n"
+#~ "\n"
+#~ "public class Person {\n"
+#~ "\n"
+#~ " private Long id;\n"
+#~ " private int age;\n"
+#~ " private String firstname;\n"
+#~ " private String lastname;\n"
+#~ "\n"
+#~ " public Person() {}\n"
+#~ "\n"
+#~ " // Accessor methods for all properties, private setter for
'id'\n"
+#~ "\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "Hibernate is the layer in your application which connects to this "
-#~ "database, so it needs connection information. The connections are made "
-#~ "through a JDBC connection pool, which we also have to configure. The "
-#~ "Hibernate distribution contains several open source JDBC connection "
-#~ "pooling tools, but will use the Hibernate built-in connection pool for "
-#~ "this tutorial. Note that you have to copy the required library into your "
-#~ "classpath and use different connection pooling settings if you want to "
-#~ "use a production-quality third party JDBC pooling software."
+#~ "<![CDATA[<hibernate-mapping
package=\"org.hibernate.tutorial.domain\">\n"
+#~ "\n"
+#~ " <class name=\"Person\" table=\"PERSON\">\n"
+#~ " <id name=\"id\" column=\"PERSON_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"age\"/>\n"
+#~ " <property name=\"firstname\"/>\n"
+#~ " <property name=\"lastname\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>]]>"
#~ msgstr ""
-#~ "Hibernateはアプリケーションのデータベースに接続する層なので、 コネクション"
-#~ "の情報が必要になります。 コネクションはJDBCコネクションプールを通じて行わ"
-#~ "れますが、これも設定する必要があります。 Hibernateディストリビューションに"
-#~ "はいくつかのオープンソースのJDBCコネクションプールツールが含まれています"
-#~ "が、 このチュートリアルではHibernateに組み込まれたコネクションプールを使い"
-#~ "ます。 もし製品レベルの品質のサードパーティJDBCコネクションプールソフト"
-#~ "ウェアを使いたければ、 クラスパスに必要なライブラリをコピーして、異なるコ"
-#~ "ネクションプールを設定しなければ ならないことに注意してください。"
+#~ "<hibernate-mapping>\n"
+#~ "\n"
+#~ " <class name=\"events.Person\"
table=\"PERSON\">\n"
+#~ " <id name=\"id\"
column=\"PERSON_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"age\"/>\n"
+#~ " <property name=\"firstname\"/>\n"
+#~ " <property name=\"lastname\"/>\n"
+#~ " </class>\n"
+#~ "\n"
+#~ "</hibernate-mapping>"
+#, fuzzy
#~ msgid ""
-#~ "Copy this file into the source directory, so it will end up in the root "
-#~ "of the classpath. Hibernate automatically looks for a file called "
-#~ "<literal>hibernate.cfg.xml</literal> in the root of the classpath,
on "
-#~ "startup."
+#~ "<![CDATA[<mapping
resource=\"events/Event.hbm.xml\"/>\n"
+#~ "<mapping resource=\"events/Person.hbm.xml\"/>]]>"
#~ msgstr ""
-#~ "このファイルをソースディレクトリにコピーしてください。 するとこれはクラス"
-#~ "パスのルートにあることになります。 Hibernateは、スタートアップ時にクラスパ"
-#~ "スのルートで <literal>hibernate.cfg.xml</literal> というファイルを自動的に"
-#~ "探します。"
+#~ "<mapping resource=\"events/Event.hbm.xml\"/>\n"
+#~ "<mapping resource=\"events/Person.hbm.xml\"/>"
+#, fuzzy
#~ msgid ""
-#~ "We'll now build the tutorial with Ant. You will need to have Ant "
-#~ "installed - get it from the <ulink
url=\"http://ant.apache.org/"
-#~ "bindownload.cgi\">Ant download page</ulink>. How to install Ant
will not "
-#~ "be covered here. Please refer to the <ulink
url=\"http://ant.apache.org/"
-#~ "manual/index.html\">Ant manual</ulink>. After you have installed
Ant, we "
-#~ "can start to create the buildfile. It will be called
<literal>build.xml</"
-#~ "literal> and placed directly in the development directory."
+#~ "<![CDATA[public class Person {\n"
+#~ "\n"
+#~ " private Set events = new HashSet();\n"
+#~ "\n"
+#~ " public Set getEvents() {\n"
+#~ " return events;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void setEvents(Set events) {\n"
+#~ " this.events = events;\n"
+#~ " }\n"
+#~ "}]]>"
#~ msgstr ""
-#~ "それではAntを使ってチュートリアルをビルドしましょう。 それにはAntがインス"
-#~ "トールされていなければなりません。 <ulink
url=\"http://ant.apache.org/"
-#~ "bindownload.cgi\">Antダウンロードページ</ulink> からダウンロードしてくださ"
-#~ "い。 Antのインストール方法はここでは説明しませんので、 <ulink url="
-#~ "\"http://ant.apache.org/manual/index.html\">Antマニュアル</ulink>
を参照し"
-#~ "てください。 Antをインストールすれば、ビルドファイルの作成を開始できま"
-#~ "す。 このファイルは <literal>build.xml</literal> と呼ばれ、開発ディレクト"
-#~ "リに直接配置します。"
+#~ "public class Person {\n"
+#~ "\n"
+#~ " private Set events = new HashSet();\n"
+#~ "\n"
+#~ " public Set getEvents() {\n"
+#~ " return events;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void setEvents(Set events) {\n"
+#~ " this.events = events;\n"
+#~ " }\n"
+#~ "}"
-#~ msgid "A basic build file looks like this:"
-#~ msgstr "基本的なビルドファイルはこのようになります:"
-
+#, fuzzy
#~ msgid ""
-#~ "This will tell Ant to add all files in the lib directory ending with "
-#~ "<literal>.jar</literal> to the classpath used for compilation. It
will "
-#~ "also copy all non-Java source files to the target directory, e.g. "
-#~ "configuration and Hibernate mapping files. If you now run Ant, you should
"
-#~ "get this output:"
+#~ "<![CDATA[<class name=\"Person\"
table=\"PERSON\">\n"
+#~ " <id name=\"id\" column=\"PERSON_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"age\"/>\n"
+#~ " <property name=\"firstname\"/>\n"
+#~ " <property name=\"lastname\"/>\n"
+#~ "\n"
+#~ " <set name=\"events\"
table=\"PERSON_EVENT\">\n"
+#~ " <key column=\"PERSON_ID\"/>\n"
+#~ " <many-to-many column=\"EVENT_ID\"
class=\"Event\"/>\n"
+#~ " </set>\n"
+#~ "\n"
+#~ "</class>]]>"
#~ msgstr ""
-#~ "これは <literal>.jar</literal> で終わるlibディレクトリのすべてのファイル"
-#~ "を、 コンパイルに使用するクラスパスに追加することをAntに教えます。 また、"
-#~ "Javaソースファイルでないすべてのファイルをターゲットディレクトリにコピーす"
-#~ "るということでもあります。 例えば設定ファイルやHibernateマッピングファイル"
-#~ "などです。 今Antを実行すると、このような出力があるはずです:"
+#~ "<class name=\"events.Person\"
table=\"PERSON\">\n"
+#~ " <id name=\"id\"
column=\"PERSON_ID\">\n"
+#~ " <generator class=\"native\"/>\n"
+#~ " </id>\n"
+#~ " <property name=\"age\"/>\n"
+#~ " <property name=\"firstname\"/>\n"
+#~ " <property name=\"lastname\"/>\n"
+#~ "\n"
+#~ " <set name=\"events\"
table=\"PERSON_EVENT\">\n"
+#~ " <key column=\"PERSON_ID\"/>\n"
+#~ " <many-to-many column=\"EVENT_ID\"
class=\"events.Event\"/>\n"
+#~ " </set>\n"
+#~ "\n"
+#~ "</class>"
+#, fuzzy
#~ msgid ""
-#~ "Place <literal>HibernateUtil.java</literal> in the development
source "
-#~ "directory, in a package next to <literal>events</literal>:"
+#~ "<![CDATA[\n"
+#~ " _____________ __________________\n"
+#~ " | | | | _____________\n"
+#~ " | EVENTS | | PERSON_EVENT | | |\n"
+#~ " |_____________| |__________________| | PERSON |\n"
+#~ " | | | | |_____________|\n"
+#~ " | *EVENT_ID | <--> | *EVENT_ID | | |\n"
+#~ " | EVENT_DATE | | *PERSON_ID | <--> | *PERSON_ID |\n"
+#~ " | TITLE | |__________________| | AGE |\n"
+#~ " |_____________| | FIRSTNAME |\n"
+#~ " | LASTNAME |\n"
+#~ " |_____________|\n"
+#~ " ]]>"
#~ msgstr ""
-#~ "<literal>HibernateUtil.java</literal> を開発ソースディレクトリにある "
-#~ "<literal>events</literal> パッケージの 隣に配置してください。"
+#~ "_____________ __________________\n"
+#~ " | | | | _____________\n"
+#~ " | EVENTS | | PERSON_EVENT | | |\n"
+#~ " |_____________| |__________________| | PERSON |\n"
+#~ " | | | | |_____________|\n"
+#~ " | *EVENT_ID | <--> | *EVENT_ID | |
|\n"
+#~ " | EVENT_DATE | | *PERSON_ID | <--> | *PERSON_ID
|\n"
+#~ " | TITLE | |__________________| | AGE |\n"
+#~ " |_____________| | FIRSTNAME |\n"
+#~ " | LASTNAME |\n"
+#~ " |_____________|"
+#, fuzzy
#~ msgid ""
-#~ "To run this first routine we have to add a callable target to the Ant "
-#~ "build file:"
+#~ "<![CDATA[ private void addPersonToEvent(Long personId, Long eventId)
"
+#~ "{\n"
+#~ " Session session = HibernateUtil.getSessionFactory()."
+#~ "getCurrentSession();\n"
+#~ " session.beginTransaction();\n"
+#~ "\n"
+#~ " Person aPerson = (Person) session.load(Person.class, personId);\n"
+#~ " Event anEvent = (Event) session.load(Event.class, eventId);\n"
+#~ " aPerson.getEvents().add(anEvent);\n"
+#~ "\n"
+#~ " session.getTransaction().commit();\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "この最初のルーチンを実行するには、Antのビルドファイルに呼び出し可能なター"
-#~ "ゲットを 追加しなければなりません:"
+#~ "private void addPersonToEvent(Long personId, Long eventId) {\n"
+#~ "\n"
+#~ " Session session = HibernateUtil.getSessionFactory().getCurrentSession"
+#~ "();\n"
+#~ " session.beginTransaction();\n"
+#~ "\n"
+#~ " Person aPerson = (Person) session.load(Person.class, personId);\n"
+#~ " Event anEvent = (Event) session.load(Event.class, eventId);\n"
+#~ "\n"
+#~ " aPerson.getEvents().add(anEvent);\n"
+#~ "\n"
+#~ " session.getTransaction().commit();\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "The value of the <literal>action</literal> argument is set on the
command "
-#~ "line when calling the target:"
+#~ "<![CDATA[ private void addPersonToEvent(Long personId, Long eventId)
"
+#~ "{\n"
+#~ " Session session = HibernateUtil.getSessionFactory()."
+#~ "getCurrentSession();\n"
+#~ " session.beginTransaction();\n"
+#~ "\n"
+#~ " Person aPerson = (Person) session\n"
+#~ " .createQuery(\"select p from Person p left join fetch
p."
+#~ "events where p.id = :pid\")\n"
+#~ " .setParameter(\"pid\", personId)\n"
+#~ " .uniqueResult(); // Eager fetch the collection so we can "
+#~ "use it detached\n"
+#~ " Event anEvent = (Event) session.load(Event.class, eventId);\n"
+#~ "\n"
+#~ " session.getTransaction().commit();\n"
+#~ "\n"
+#~ " // End of first unit of work\n"
+#~ "\n"
+#~ " aPerson.getEvents().add(anEvent); // aPerson (and its collection)
"
+#~ "is detached\n"
+#~ "\n"
+#~ " // Begin second unit of work\n"
+#~ "\n"
+#~ " Session session2 = HibernateUtil.getSessionFactory()."
+#~ "getCurrentSession();\n"
+#~ " session2.beginTransaction();\n"
+#~ " session2.update(aPerson); // Reattachment of aPerson\n"
+#~ "\n"
+#~ " session2.getTransaction().commit();\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "<literal>action</literal> 引数の値は、ターゲットを呼ぶときにコマンドライン"
-#~ "で設定します:"
+#~ "private void addPersonToEvent(Long personId, Long eventId) {\n"
+#~ "\n"
+#~ " Session session = HibernateUtil.getSessionFactory().getCurrentSession"
+#~ "();\n"
+#~ " session.beginTransaction();\n"
+#~ "\n"
+#~ " Person aPerson = (Person) session\n"
+#~ " .createQuery(\"select p from Person p left join fetch p."
+#~ "events where p.id = :pid\")\n"
+#~ " .setParameter(\"pid\", personId)\n"
+#~ " .uniqueResult(); // Eager fetch the collection so we can use "
+#~ "it detached\n"
+#~ "\n"
+#~ " Event anEvent = (Event) session.load(Event.class, eventId);\n"
+#~ "\n"
+#~ " session.getTransaction().commit();\n"
+#~ "\n"
+#~ " // End of first unit of work\n"
+#~ "\n"
+#~ " aPerson.getEvents().add(anEvent); // aPerson (and its collection) is "
+#~ "detached\n"
+#~ "\n"
+#~ " // Begin second unit of work\n"
+#~ "\n"
+#~ " Session session2 =
HibernateUtil.getSessionFactory().getCurrentSession"
+#~ "();\n"
+#~ " session2.beginTransaction();\n"
+#~ "\n"
+#~ " session2.update(aPerson); // Reattachment of aPerson\n"
+#~ "\n"
+#~ " session2.getTransaction().commit();\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "This is the <literal>INSERT</literal> executed by Hibernate, the
question "
-#~ "marks represent JDBC bind parameters. To see the values bound as "
-#~ "arguments, or to reduce the verbosity of the log, check your "
-#~ "<literal>log4j.properties</literal>."
+#~ "<![CDATA[ else if (args[0].equals(\"addpersontoevent\"))
{\n"
+#~ " Long eventId = mgr.createAndStoreEvent(\"My Event\", new
Date"
+#~ "());\n"
+#~ " Long personId = mgr.createAndStorePerson(\"Foo\",
\"Bar\");\n"
+#~ " mgr.addPersonToEvent(personId, eventId);\n"
+#~ " System.out.println(\"Added person \" + personId + \"
to event "
+#~ "\" + eventId);\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "これはHibernateが実行する <literal>INSERT</literal> で、 クエスチョンマー"
-#~ "クはJDBCバインドパラメータを表しています。 引数としてバインドされる値を見"
-#~ "るため、あるいはログの冗長性を減らすためには、 <literal>log4j.properties</"
-#~ "literal> をチェックしてください。"
+#~ "else if (args[0].equals(\"addpersontoevent\")) {\n"
+#~ " Long eventId = mgr.createAndStoreEvent(\"My Event\", new
Date());\n"
+#~ " Long personId = mgr.createAndStorePerson(\"Foo\",
\"Bar\");\n"
+#~ " mgr.addPersonToEvent(personId, eventId);\n"
+#~ " System.out.println(\"Added person \" + personId + \" to event
\" + "
+#~ "eventId);\n"
+#~ "}"
-#~ msgid "Now, to execute and test all of this, follow these steps:"
-#~ msgstr "以下のステップで、すべての実行とテストを行います。"
-
+#, fuzzy
#~ msgid ""
-#~ "Run <literal>ant run -Daction=store</literal> to store something
into the "
-#~ "database and, of course, to generate the database schema before through "
-#~ "hbm2ddl."
+#~ "<![CDATA[ private Set emailAddresses = new HashSet();\n"
+#~ "\n"
+#~ " public Set getEmailAddresses() {\n"
+#~ " return emailAddresses;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void setEmailAddresses(Set emailAddresses) {\n"
+#~ " this.emailAddresses = emailAddresses;\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "hbm2ddlを通す前にデータベースのデータを作成し、データベーススキーマを生成"
-#~ "するために、 <literal>ant run -Daction=store</literal> を実行してくださ"
-#~ "い。"
+#~ "private Set emailAddresses = new HashSet();\n"
+#~ "\n"
+#~ "public Set getEmailAddresses() {\n"
+#~ " return emailAddresses;\n"
+#~ "}\n"
+#~ "\n"
+#~ "public void setEmailAddresses(Set emailAddresses) {\n"
+#~ " this.emailAddresses = emailAddresses;\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "Now disable hbm2ddl by commenting out the property in your "
-#~ "<literal>hibernate.cfg.xml</literal> file. Usually you only leave it
"
-#~ "turned on in continous unit testing, but another run of hbm2ddl would "
-#~ "<emphasis>drop</emphasis> everything you have stored - the "
-#~ "<literal>create</literal> configuration setting actually translates
into "
-#~ "\"drop all tables from the schema, then re-create all tables, when the
"
-#~ "SessionFactory is build\"."
+#~ "<![CDATA[ <set name=\"emailAddresses\"
table=\"PERSON_EMAIL_ADDR"
+#~ "\">\n"
+#~ " <key column=\"PERSON_ID\"/>\n"
+#~ " <element type=\"string\"
column=\"EMAIL_ADDR\"/>\n"
+#~ " </set>]]>"
#~ msgstr ""
-#~ "今は <literal>hibernate.cfg.xml</literal> ファイルのプロパティをコメントア"
-#~ "ウトしてhbm2ddlを無効にしてください。 通常は継続的に単体テストをしている間"
-#~ "はhbm2ddlを有効にしておくのですが、 それ以外の場合にhbm2ddlを起動すると格"
-#~ "納しておいた全てのデータを <emphasis>ドロップ</emphasis> するでしょう。 設"
-#~ "定を <literal>create</literal> にすると、結果として 「SessionFactory生成の"
-#~ "際、スキーマから全てのテーブルをドロップして再作成する」という設定になりま"
-#~ "す。"
+#~ "<set name=\"emailAddresses\"
table=\"PERSON_EMAIL_ADDR\">\n"
+#~ " <key column=\"PERSON_ID\"/>\n"
+#~ " <element type=\"string\"
column=\"EMAIL_ADDR\"/>\n"
+#~ "</set>"
+#, fuzzy
#~ msgid ""
-#~ "If you now call Ant with <literal>-Daction=list</literal>, you
should see "
-#~ "the events you have stored so far. You can of course also call the "
-#~ "<literal>store</literal> action a few times more."
+#~ "<![CDATA[\n"
+#~ " _____________ __________________\n"
+#~ " | | | | _____________\n"
+#~ " | EVENTS | | PERSON_EVENT | | | "
+#~ "___________________\n"
+#~ " |_____________| |__________________| | PERSON | "
+#~ "| |\n"
+#~ " | | | | |_____________| | "
+#~ "PERSON_EMAIL_ADDR |\n"
+#~ " | *EVENT_ID | <--> | *EVENT_ID | | |
|"
+#~ "___________________|\n"
+#~ " | EVENT_DATE | | *PERSON_ID | <--> | *PERSON_ID | <-->
| "
+#~ "*PERSON_ID |\n"
+#~ " | TITLE | |__________________| | AGE | | "
+#~ "*EMAIL_ADDR |\n"
+#~ " |_____________| | FIRSTNAME | |"
+#~ "___________________|\n"
+#~ " | LASTNAME |\n"
+#~ " |_____________|\n"
+#~ " ]]>"
#~ msgstr ""
-#~ "今 <literal>-Daction=list</literal> と指定してAntを呼ぶと、 これまで格納し"
-#~ "たイベントが見えるはずです。 <literal>store</literal> アクションを数回以上"
-#~ "呼ぶことも可能です。"
+#~ "_____________ __________________\n"
+#~ " | | | | _____________\n"
+#~ " | EVENTS | | PERSON_EVENT | | | "
+#~ "___________________\n"
+#~ " |_____________| |__________________| | PERSON | "
+#~ "| |\n"
+#~ " | | | | |_____________| | "
+#~ "PERSON_EMAIL_ADDR |\n"
+#~ " | *EVENT_ID | <--> | *EVENT_ID | |
"
+#~ "| |___________________|\n"
+#~ " | EVENT_DATE | | *PERSON_ID | <--> | *PERSON_ID |
"
+#~ "<--> | *PERSON_ID |\n"
+#~ " | TITLE | |__________________| | AGE | | "
+#~ "*EMAIL_ADDR |\n"
+#~ " |_____________| | FIRSTNAME | |"
+#~ "___________________|\n"
+#~ " | LASTNAME |\n"
+#~ " |_____________|"
+#, fuzzy
#~ msgid ""
-#~ "Note: Most new Hibernate users fail at this point and we see questions "
-#~ "about <emphasis>Table not found</emphasis> error messages regularly.
"
-#~ "However, if you follow the steps outlined above you will not have this "
-#~ "problem, as hbm2ddl creates the database schema on the first run, and "
-#~ "subsequent application restarts will use this schema. If you change the "
-#~ "mapping and/or database schema, you have to re-enable hbm2ddl once again."
+#~ "<![CDATA[ private void addEmailToPerson(Long personId, String "
+#~ "emailAddress) {\n"
+#~ " Session session = HibernateUtil.getSessionFactory()."
+#~ "getCurrentSession();\n"
+#~ " session.beginTransaction();\n"
+#~ "\n"
+#~ " Person aPerson = (Person) session.load(Person.class, personId);\n"
+#~ " // adding to the emailAddress collection might trigger a lazy "
+#~ "load of the collection\n"
+#~ " aPerson.getEmailAddresses().add(emailAddress);\n"
+#~ "\n"
+#~ " session.getTransaction().commit();\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "注意:初めてHibernateに触れる人々の多くがここで失敗するため、"
-#~ "<emphasis>Table not found</emphasis> エラーメッセージに 関する質問を定期的"
-#~ "に見かけます。 しかし上記のステップに従えば、hbm2ddlが最初に実行されたとき"
-#~ "にデータベーススキーマを作成し、 その後の実行においてもこのスキーマを使用"
-#~ "するので、問題は起こらないでしょう。 マッピングやデータベーススキーマを変"
-#~ "更したときは、もう一度hbm2ddlを有効にしてください。"
+#~ "private void addEmailToPerson(Long personId, String emailAddress) {\n"
+#~ "\n"
+#~ " Session session = HibernateUtil.getSessionFactory().getCurrentSession"
+#~ "();\n"
+#~ " session.beginTransaction();\n"
+#~ "\n"
+#~ " Person aPerson = (Person) session.load(Person.class, personId);\n"
+#~ "\n"
+#~ " // The getEmailAddresses() might trigger a lazy load of the "
+#~ "collection\n"
+#~ " aPerson.getEmailAddresses().add(emailAddress);\n"
+#~ "\n"
+#~ " session.getTransaction().commit();\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "Create a new mapping file called <literal>Person.hbm.xml</literal>
(don't "
-#~ "forget the DTD reference at the top):"
+#~ "<![CDATA[ private Set participants = new HashSet();\n"
+#~ "\n"
+#~ " public Set getParticipants() {\n"
+#~ " return participants;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void setParticipants(Set participants) {\n"
+#~ " this.participants = participants;\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "<literal>Person.hbm.xml</literal> という新しいマッピングファイルを作成して"
-#~ "ください (ファイルの最初にDTDへの参照を忘れずに入れてください):"
+#~ "private Set participants = new HashSet();\n"
+#~ "\n"
+#~ "public Set getParticipants() {\n"
+#~ " return participants;\n"
+#~ "}\n"
+#~ "\n"
+#~ "public void setParticipants(Set participants) {\n"
+#~ " this.participants = participants;\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "We need a unidirectional, many-valued associations, implemented with a "
-#~ "<literal>Set</literal>. Let's write the code for this in the
Java classes "
-#~ "and then map it:"
+#~ "<![CDATA[ <set name=\"participants\"
table=\"PERSON_EVENT\" "
+#~ "inverse=\"true\">\n"
+#~ " <key column=\"EVENT_ID\"/>\n"
+#~ " <many-to-many column=\"PERSON_ID\"
class=\"events.Person\"/>\n"
+#~ " </set>]]>"
#~ msgstr ""
-#~ "<literal>Set</literal> で実装される単方向、多値関連が必要です。 Javaクラス"
-#~ "内に対応するコードを書いてマッピングしましょう:"
+#~ "<set name=\"participants\" table=\"PERSON_EVENT\"
inverse=\"true"
+#~ "\">\n"
+#~ " <key column=\"EVENT_ID\"/>\n"
+#~ " <many-to-many column=\"PERSON_ID\"
class=\"events.Person\"/>\n"
+#~ "</set>"
+#, fuzzy
#~ msgid ""
-#~ "We add a collection of value typed objects to the
<literal>Person</"
-#~ "literal> entity. We want to store email addresses, so the type we use is
"
-#~ "<literal>String</literal>, and the collection is again a
<literal>Set</"
-#~ "literal>:"
+#~ "<![CDATA[ protected Set getEvents() {\n"
+#~ " return events;\n"
+#~ " }\n"
+#~ "\n"
+#~ " protected void setEvents(Set events) {\n"
+#~ " this.events = events;\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void addToEvent(Event event) {\n"
+#~ " this.getEvents().add(event);\n"
+#~ " event.getParticipants().add(this);\n"
+#~ " }\n"
+#~ "\n"
+#~ " public void removeFromEvent(Event event) {\n"
+#~ " this.getEvents().remove(event);\n"
+#~ " event.getParticipants().remove(this);\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "値型オブジェクトのコレクションを <literal>Person</literal> エンティティへ"
-#~ "追加します。 Eメールアドレスを格納したいのですが、<literal>String</"
-#~ "literal> 型を使っているので、 コレクションは再び <literal>Set</literal> で"
-#~ "す:"
+#~ "protected Set getEvents() {\n"
+#~ " return events;\n"
+#~ "}\n"
+#~ "\n"
+#~ "protected void setEvents(Set events) {\n"
+#~ " this.events = events;\n"
+#~ "}\n"
+#~ "\n"
+#~ "public void addToEvent(Event event) {\n"
+#~ " this.getEvents().add(event);\n"
+#~ " event.getParticipants().add(this);\n"
+#~ "}\n"
+#~ "\n"
+#~ "public void removeFromEvent(Event event) {\n"
+#~ " this.getEvents().remove(event);\n"
+#~ " event.getParticipants().remove(this);\n"
+#~ "}"
-#~ msgid "Let's turn this into a small web application."
-#~ msgstr "ではこれを小さなWebアプリケーションにしてみましょう。"
-
+#, fuzzy
#~ msgid ""
-#~ "Create a new class in your source directory, in the
<literal>events</"
-#~ "literal> package:"
+#~ "<![CDATA[package org.hibernate.tutorial.web;\n"
+#~ "\n"
+#~ "// Imports\n"
+#~ "\n"
+#~ "public class EventManagerServlet extends HttpServlet {\n"
+#~ "\n"
+#~ " protected void doGet(\n"
+#~ " HttpServletRequest request,\n"
+#~ " HttpServletResponse response) throws ServletException, "
+#~ "IOException {\n"
+#~ "\n"
+#~ " SimpleDateFormat dateFormatter = new SimpleDateFormat(
\"dd.MM."
+#~ "yyyy\" );\n"
+#~ "\n"
+#~ " try {\n"
+#~ " // Begin unit of work\n"
+#~ " HibernateUtil.getSessionFactory().getCurrentSession()."
+#~ "beginTransaction();\n"
+#~ "\n"
+#~ " // Process request and render page...\n"
+#~ "\n"
+#~ " // End unit of work\n"
+#~ " HibernateUtil.getSessionFactory().getCurrentSession()."
+#~ "getTransaction().commit();\n"
+#~ " }\n"
+#~ " catch (Exception ex) {\n"
+#~ " HibernateUtil.getSessionFactory().getCurrentSession()."
+#~ "getTransaction().rollback();\n"
+#~ " if ( ServletException.class.isInstance( ex ) ) {\n"
+#~ " throw ( ServletException ) ex;\n"
+#~ " }\n"
+#~ " else {\n"
+#~ " throw new ServletException( ex );\n"
+#~ " }\n"
+#~ " }\n"
+#~ " }\n"
+#~ "\n"
+#~ "}]]>"
#~ msgstr ""
-#~ "新しいクラスを、ソースディレクトリの <literal>events</literal> パッケージ"
-#~ "に作成してください。"
+#~ "protected void doGet(HttpServletRequest request,\n"
+#~ " HttpServletResponse response)\n"
+#~ " throws ServletException, IOException {\n"
+#~ "\n"
+#~ " SimpleDateFormat dateFormatter = new
SimpleDateFormat(\"dd.MM.yyyy"
+#~ "\");\n"
+#~ "\n"
+#~ " try {\n"
+#~ " // Begin unit of work\n"
+#~ " HibernateUtil.getSessionFactory()\n"
+#~ " .getCurrentSession().beginTransaction();\n"
+#~ "\n"
+#~ " // Process request and render page...\n"
+#~ "\n"
+#~ " // End unit of work\n"
+#~ " HibernateUtil.getSessionFactory()\n"
+#~ " .getCurrentSession().getTransaction().commit();\n"
+#~ "\n"
+#~ " } catch (Exception ex) {\n"
+#~ " HibernateUtil.getSessionFactory()\n"
+#~ " .getCurrentSession().getTransaction().rollback();\n"
+#~ " throw new ServletException(ex);\n"
+#~ " }\n"
+#~ "\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "To deploy this application you have to create a web archive, a WAR. Add "
-#~ "the following Ant target to your
<literal>build.xml</literal>:"
+#~ "<![CDATA[ // Write HTML header\n"
+#~ " PrintWriter out = response.getWriter();\n"
+#~ " out.println(\"<html><head><title>Event
Manager</title></"
+#~ "head><body>\");\n"
+#~ "\n"
+#~ " // Handle actions\n"
+#~ " if (
\"store\".equals(request.getParameter(\"action\")) ) {\n"
+#~ "\n"
+#~ " String eventTitle =
request.getParameter(\"eventTitle\");\n"
+#~ " String eventDate =
request.getParameter(\"eventDate\");\n"
+#~ "\n"
+#~ " if ( \"\".equals(eventTitle) ||
\"\".equals(eventDate) ) {\n"
+#~ " out.println(\"<b><i>Please enter event title
and date.</"
+#~ "i></b>\");\n"
+#~ " }\n"
+#~ " else {\n"
+#~ " createAndStoreEvent(eventTitle, dateFormatter.parse"
+#~ "(eventDate));\n"
+#~ " out.println(\"<b><i>Added
event.</i></b>\");\n"
+#~ " }\n"
+#~ " }\n"
+#~ "\n"
+#~ " // Print page\n"
+#~ " printEventForm(out);\n"
+#~ " listEvents(out, dateFormatter);\n"
+#~ "\n"
+#~ " // Write HTML footer\n"
+#~ " out.println(\"</body></html>\");\n"
+#~ " out.flush();\n"
+#~ " out.close();]]>"
#~ msgstr ""
-#~ "このアプリケーションのデプロイのために、Webアーカイブ(WAR)を作成してくだ"
-#~ "さい。 以下のAntターゲットを <literal>build.xml</literal> に加えてくださ"
-#~ "い。"
+#~ "// Write HTML header\n"
+#~ "PrintWriter out = response.getWriter();\n"
+#~
"out.println(\"<html><head><title>Event
Manager</"
+#~ "title></head><body>\");\n"
+#~ "\n"
+#~ "// Handle actions\n"
+#~ "if ( \"store\".equals(request.getParameter(\"action\")) )
{\n"
+#~ "\n"
+#~ " String eventTitle = request.getParameter(\"eventTitle\");\n"
+#~ " String eventDate = request.getParameter(\"eventDate\");\n"
+#~ "\n"
+#~ " if ( \"\".equals(eventTitle) || \"\".equals(eventDate) )
{\n"
+#~ " out.println(\"<b><i>Please enter event
title and date."
+#~ "</i></b>\");\n"
+#~ " } else {\n"
+#~ " createAndStoreEvent(eventTitle,
dateFormatter.parse(eventDate));\n"
+#~ " out.println(\"<b><i>Added
event.</i></b>"
+#~ "\");\n"
+#~ " }\n"
+#~ "}\n"
+#~ "\n"
+#~ "// Print page\n"
+#~ "printEventForm(out);\n"
+#~ "listEvents(out, dateFormatter);\n"
+#~ "\n"
+#~ "// Write HTML footer\n"
+#~ "out.println(\"</body></html>\");\n"
+#~ "out.flush();\n"
+#~ "out.close();"
+#, fuzzy
#~ msgid ""
-#~ "This target creates a file called
<literal>hibernate-tutorial.war</"
-#~ "literal> in your project directory. It packages all libraries and the "
-#~ "<literal>web.xml</literal> descriptor, which is expected in the base
"
-#~ "directory of your project:"
+#~ "<![CDATA[ private void printEventForm(PrintWriter out) {\n"
+#~ " out.println(\"<h2>Add new event:</h2>\");\n"
+#~ " out.println(\"<form>\");\n"
+#~ " out.println(\"Title: <input name='eventTitle'
length='50'/><br/>"
+#~ "\");\n"
+#~ " out.println(\"Date (e.g. 24.12.2009): <input
name='eventDate' "
+#~ "length='10'/><br/>\");\n"
+#~ " out.println(\"<input type='submit' name='action'
value='store'/>"
+#~ "\");\n"
+#~ " out.println(\"</form>\");\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "このターゲットは <literal>hibernate-tutorial.war</literal> というファイル"
-#~ "を プロジェクトディレクトリに作成します。 このファイルはすべてのライブラリ"
-#~ "と <literal>web.xml</literal> 記述子を含んでおり、 プロジェクトのベース"
-#~ "ディレクトリに置かれることを期待されます。"
+#~ "private void printEventForm(PrintWriter out) {\n"
+#~ " out.println(\"<h2>Add new
event:</h2>\");\n"
+#~ " out.println(\"<form>\");\n"
+#~ " out.println(\"Title: <input name='eventTitle'
length='50'/><"
+#~ "br/>\");\n"
+#~ " out.println(\"Date (e.g. 24.12.2009): <input
name='eventDate' "
+#~ "length='10'/><br/>\");\n"
+#~ " out.println(\"<input type='submit' name='action'
value='store'/>"
+#~ "\");\n"
+#~ " out.println(\"</form>\");\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "Before you compile and deploy the web application, note that an "
-#~ "additional library is required: <literal>jsdk.jar</literal>. This is
the "
-#~ "Java servlet development kit, if you don't have this library already, get
"
-#~ "it from the Sun website and copy it to your library directory. However, "
-#~ "it will be only used for compliation and excluded from the WAR package."
+#~ "<![CDATA[ private void listEvents(PrintWriter out, SimpleDateFormat
"
+#~ "dateFormatter) {\n"
+#~ "\n"
+#~ " List result = HibernateUtil.getSessionFactory()\n"
+#~ "
.getCurrentSession().createCriteria(Event.class).list();\n"
+#~ " if (result.size() > 0) {\n"
+#~ " out.println(\"<h2>Events in
database:</h2>\");\n"
+#~ " out.println(\"<table
border='1'>\");\n"
+#~ " out.println(\"<tr>\");\n"
+#~ " out.println(\"<th>Event
title</th>\");\n"
+#~ " out.println(\"<th>Event date</th>\");\n"
+#~ " out.println(\"</tr>\");\n"
+#~ " Iterator it = result.iterator();\n"
+#~ " while (it.hasNext()) {\n"
+#~ " Event event = (Event) it.next();\n"
+#~ " out.println(\"<tr>\");\n"
+#~ " out.println(\"<td>\" + event.getTitle() +
\"</td>\");\n"
+#~ " out.println(\"<td>\" +
dateFormatter.format(event.getDate"
+#~ "()) + \"</td>\");\n"
+#~ " out.println(\"</tr>\");\n"
+#~ " }\n"
+#~ " out.println(\"</table>\");\n"
+#~ " }\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "Webアプリケーションのコンパイルとデプロイの前に、 <literal>jsdk.jar</"
-#~ "literal> という 追加のライブラリが必要なことに注意してください。 これは"
-#~ "Javaサーブレットの開発キットです。 もしまだこのライブラリを持っていないな"
-#~ "ら、Sunのウェブサイトで入手して、 ライブラリディレクトリにコピーしてくださ"
-#~ "い。 しかし、これはコンパイルにのみ使用され、WARパッケージからは除外されま"
-#~ "す。"
+#~ "private void listEvents(PrintWriter out, SimpleDateFormat dateFormatter) "
+#~ "{\n"
+#~ "\n"
+#~ " List result = HibernateUtil.getSessionFactory()\n"
+#~ " .getCurrentSession().createCriteria(Event.class).list"
+#~ "();\n"
+#~ " if (result.size() > 0) {\n"
+#~ " out.println(\"<h2>Events in
database:</h2>\");\n"
+#~ " out.println(\"<table
border='1'>\");\n"
+#~ " out.println(\"<tr>\");\n"
+#~ " out.println(\"<th>Event
title</th>\");\n"
+#~ " out.println(\"<th>Event
date</th>\");\n"
+#~ " out.println(\"</tr>\");\n"
+#~ " for (Iterator it = result.iterator(); it.hasNext();) {\n"
+#~ " Event event = (Event) it.next();\n"
+#~ " out.println(\"<tr>\");\n"
+#~ " out.println(\"<td>\" + event.getTitle() +
\"</td>"
+#~ "\");\n"
+#~ " out.println(\"<td>\" +
dateFormatter.format(event."
+#~ "getDate()) + \"</td>\");\n"
+#~ " out.println(\"</tr>\");\n"
+#~ " }\n"
+#~ " out.println(\"</table>\");\n"
+#~ " }\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "If you already feel confident with Hibernate, continue browsing through "
-#~ "the reference documentation table of contents for topics you find "
-#~ "interesting - most asked are transactional processing (<xref linkend="
-#~ "\"transactions\"/>), fetch performance (<xref
linkend=\"performance\"/>), "
-#~ "or the usage of the API (<xref linkend=\"objectstate\"/>) and
the query "
-#~ "features (<xref linkend=\"objectstate-querying\"/>)."
+#~ "<![CDATA[ protected void createAndStoreEvent(String title, Date "
+#~ "theDate) {\n"
+#~ " Event theEvent = new Event();\n"
+#~ " theEvent.setTitle(title);\n"
+#~ " theEvent.setDate(theDate);\n"
+#~ "\n"
+#~ " HibernateUtil.getSessionFactory()\n"
+#~ " .getCurrentSession().save(theEvent);\n"
+#~ " }]]>"
#~ msgstr ""
-#~ "もうHibernateに自信があれば、リファレンスドキュメントの目次に目を通して、 "
-#~ "面白そうだと思うトピックを探してください。 最も頻繁に質問があるのは、トラ"
-#~ "ンザクション処理(<xref linkend=\"transactions\"/>)、 フェッチのパフォー"
-#~ "マンス(<xref linkend=\"performance\"/>)、 APIの使い方(<xref
linkend="
-#~ "\"objectstate\"/>)とクエリ (<xref
linkend=\"objectstate-querying\"/>)で"
-#~ "す。"
+#~ "protected void createAndStoreEvent(String title, Date theDate) {\n"
+#~ " Event theEvent = new Event();\n"
+#~ " theEvent.setTitle(title);\n"
+#~ " theEvent.setDate(theDate);\n"
+#~ "\n"
+#~ " HibernateUtil.getSessionFactory()\n"
+#~ " .getCurrentSession().save(theEvent);\n"
+#~ "}"
+#, fuzzy
#~ msgid ""
-#~ "Don't forget to check the Hibernate website for more (specialized) "
-#~ "tutorials."
+#~ "<![CDATA[<?xml version=\"1.0\"
encoding=\"UTF-8\"?>\n"
+#~ "<web-app version=\"2.4\"\n"
+#~ "
xmlns=\"http://java.sun.com/xml/ns/j2ee\"\n"
+#~ "
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"
+#~ "
xsi:schemaLocation=\"http://java.sun.com/xml/ns/j2ee
http://java.sun."
+#~ "com/xml/ns/j2ee/web-app_2_4.xsd\">\n"
+#~ "\n"
+#~ " <servlet>\n"
+#~ " <servlet-name>Event Manager</servlet-name>\n"
+#~ "
<servlet-class>org.hibernate.tutorial.web.EventManagerServlet</"
+#~ "servlet-class>\n"
+#~ " </servlet>\n"
+#~ "\n"
+#~ " <servlet-mapping>\n"
+#~ " <servlet-name>Event Manager</servlet-name>\n"
+#~ " <url-pattern>/eventmanager</url-pattern>\n"
+#~ " </servlet-mapping>\n"
+#~ "</web-app>]]>"
#~ msgstr ""
-#~ "さらに(特別な)チュートリアルが必要なら、Hibernateウェブサイトを忘れずに"
-#~ "チェックしてください。"
+#~ "<?xml version=\"1.0\"
encoding=\"UTF-8\"?>\n"
+#~ "<web-app version=\"2.4\"\n"
+#~ "
xmlns=\"http://java.sun.com/xml/ns/j2ee\"\n"
+#~ "
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n"
+#~ "
xsi:schemaLocation=\"http://java.sun.com/xml/ns/j2ee\n"
+#~ "
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd\">\n"
+#~ "\n"
+#~ " <servlet>\n"
+#~ " <servlet-name>Event
Manager</servlet-name>\n"
+#~ "
<servlet-class>events.EventManagerServlet</servlet-"
+#~ "class>\n"
+#~ " </servlet>\n"
+#~ "\n"
+#~ " <servlet-mapping>\n"
+#~ " <servlet-name>Event
Manager</servlet-name>\n"
+#~ "
<url-pattern>/eventmanager</url-pattern>\n"
+#~ " </servlet-mapping>\n"
+#~ "</web-app>"
Modified:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/xml.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/xml.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/content/xml.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,50 +1,50 @@
+# translation of Collection_Mapping.po to
+# Xi HUANG <xhuang(a)redhat.com>, 2007, 2010.
msgid ""
msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Collection_Mapping\n"
"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-10 21:02+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL(a)li.org>\n"
+"POT-Creation-Date: 2009-12-03T00:15:27\n"
+"PO-Revision-Date: 2010-01-18 15:42+1000\n"
+"Last-Translator: Xi HUANG <xhuang(a)redhat.com>\n"
+"Language-Team: <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
#. Tag: title
-#: xml.xml:29
#, no-c-format
msgid "XML Mapping"
-msgstr "XMLマッピング"
+msgstr "XML マッピング"
-#. Tag: emphasis
-#: xml.xml:31
-#, fuzzy, no-c-format
+#. Tag: para
+#, no-c-format
msgid ""
-"XML Mapping is an experimental feature in Hibernate 3.0 and is currently "
-"under active development."
+"<emphasis> XML Mapping is an experimental feature in Hibernate 3.0 and is
"
+"currently under active development. </emphasis>"
msgstr ""
-"XMLマッピングはHibernate3.0では試験的な機能であり、非常に活動的に開発中です。"
+"XML マッピングは Hibernate3.0 では試験的な機能であり、非常に活動的に開発中で"
+"す。"
#. Tag: title
-#: xml.xml:37
#, no-c-format
msgid "Working with XML data"
-msgstr "XMLデータでの作業"
+msgstr "XML データでの作業"
#. Tag: para
-#: xml.xml:39
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Hibernate allows you to work with persistent XML data in much the same way "
"you work with persistent POJOs. A parsed XML tree can be thought of as "
"another way of representing the relational data at the object level, instead
"
"of POJOs."
msgstr ""
-"Hibernateでは永続性のPOJOを使って作業するのとほぼ同じようなやり方で、 永続性"
-"のXMLデータを使って作業できます。"
+"Hibernate では永続性の POJO を使って作業するのとほぼ同じようなやり方で、永続"
+"性の XML データを使って作業できます。解析された XML ツリーは POJO の代わりに"
+"オブジェクトレベルで関係データを表わす別の方法であるとみなされています。"
#. Tag: para
-#: xml.xml:46
#, no-c-format
msgid ""
"Hibernate supports dom4j as API for manipulating XML trees. You can write "
@@ -55,170 +55,102 @@
"(), saveOrUpdate(), merge(), delete(), replicate()</literal> (merging is not
"
"yet supported)."
msgstr ""
-"HibernateはXMLツリーを操作するためのAPIとしてdom4jをサポートしています。 デー"
-"タベースからdom4jのツリーを復元するクエリを書くことができ、 ツリーに対して"
-"行った修正は自動的にデータベースと同期されます。 またXMLドキュメントを取得す"
-"ることができ、dom4jを使ってドキュメントをパースし、 Hibernateの任意の基本操作"
-"を使ってデータベースへ書き込むことができます。: つまり、<literal>persist(), "
-"saveOrUpdate(), merge(), delete(), replicate()</literal> 操作です(マージはま"
-"だサポートしていません)。"
+"Hibernate は XML ツリーを操作するための API として dom4j をサポートしていま"
+"す。データベースから dom4j のツリーを復元するクエリを書くことができ、ツリーに"
+"対して行った修正は自動的にデータベースと同期されます。また XML ドキュメントを"
+"取得することができ、 dom4j を使ってドキュメントをパースし、 Hibernate の任意"
+"の基本操作を使ってデータベースへ書き込むことができます。: つまり、 "
+"<literal>persist(), saveOrUpdate(), merge(), delete(),
replicate()</literal> "
+"操作です (マージはまだサポートしていません)。"
#. Tag: para
-#: xml.xml:56
#, no-c-format
msgid ""
"This feature has many applications including data import/export, "
"externalization of entity data via JMS or SOAP and XSLT-based reporting."
msgstr ""
-"データのインポート/エクスポート、 JMSによるエンティティデータの外部化やSOAP、"
-"XSLTベースのレポートなど、 この機能には多くの用途があります。"
+"データのインポート/エクスポート、 JMS によるエンティティデータの外部化や "
+"SOAP 、 XSLT ベースのレポートなど、この機能には多くの用途があります。"
#. Tag: para
-#: xml.xml:61
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A single mapping can be used to simultaneously map properties of a class and
"
"nodes of an XML document to the database, or, if there is no class to map, "
"it can be used to map just the XML."
msgstr ""
-"単一のマッピングは、クラスのプロパティとXMLドキュメントのノードを 同時にデー"
-"タベースへマッピングするために使うことができます。 またマッピングするクラスが"
-"なければ、 XMLだけをマッピングするために使うことができます。"
+"単一のマッピングは、クラスのプロパティと XML ドキュメントのノードを同時にデー"
+"タベースへマッピングするために使うことができます。またマッピングするクラスが"
+"なければ、 XML だけをマッピングするために使うことができます。"
#. Tag: title
-#: xml.xml:68
#, no-c-format
msgid "Specifying XML and class mapping together"
-msgstr "XMLとクラスのマッピングを同時に指定する"
+msgstr "XML とクラスのマッピングを同時に指定する"
#. Tag: para
-#: xml.xml:70
#, no-c-format
msgid "Here is an example of mapping a POJO and XML simultaneously:"
-msgstr "これはPOJOとXMLを同時にマッピングする例です。:"
+msgstr "これは POJO と XML を同時にマッピングする例です:"
-#. Tag: programlisting
-#: xml.xml:74
-#, no-c-format
-msgid ""
-"<![CDATA[<class name=\"Account\" \n"
-" table=\"ACCOUNTS\" \n"
-" node=\"account\">\n"
-" \n"
-" <id name=\"accountId\" \n"
-" column=\"ACCOUNT_ID\" \n"
-" node=\"@id\"/>\n"
-" \n"
-" <many-to-one name=\"customer\" \n"
-" column=\"CUSTOMER_ID\" \n"
-" node=\"customer/@id\" \n"
-" embed-xml=\"false\"/>\n"
-" \n"
-" <property name=\"balance\" \n"
-" column=\"BALANCE\" \n"
-" node=\"balance\"/>\n"
-" \n"
-" ...\n"
-" \n"
-"</class>]]>"
-msgstr ""
-
#. Tag: title
-#: xml.xml:78
#, no-c-format
msgid "Specifying only an XML mapping"
-msgstr "XMLマッピングだけを指定する"
+msgstr "XML マッピングだけを指定する"
#. Tag: para
-#: xml.xml:80
#, no-c-format
msgid "Here is an example where there is no POJO class:"
-msgstr "これはPOJOクラスがないマッピングの例です。:"
+msgstr "これは POJO クラスがないマッピングの例です:"
-#. Tag: programlisting
-#: xml.xml:84
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class entity-name=\"Account\" \n"
-" table=\"ACCOUNTS\" \n"
-" node=\"account\">\n"
-" \n"
-" <id name=\"id\" \n"
-" column=\"ACCOUNT_ID\" \n"
-" node=\"@id\" \n"
-" type=\"string\"/>\n"
-" \n"
-" <many-to-one name=\"customerId\" \n"
-" column=\"CUSTOMER_ID\" \n"
-" node=\"customer/@id\" \n"
-" embed-xml=\"false\" \n"
-" entity-name=\"Customer\"/>\n"
-" \n"
-" <property name=\"balance\" \n"
-" column=\"BALANCE\" \n"
-" node=\"balance\" \n"
-" type=\"big_decimal\"/>\n"
-" \n"
-" ...\n"
-" \n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: xml.xml:86
-#, fuzzy, no-c-format
-msgid ""
"This mapping allows you to access the data as a dom4j tree, or as a graph of
"
"property name/value pairs or java <literal>Map</literal>s. The property
"
"names are purely logical constructs that can be referred to in HQL queries."
msgstr ""
-"このマッピングにより、dom4jツリーか、 プロパティ名/値の組のグラフ(javaの "
-"<literal>Map</literal>)として データにアクセスできます。 プロパティの名前"
-"は、HQLクエリー内で参照できる純粋な論理構造です。"
+"このマッピングにより、 dom4j ツリーか、プロパティ名/値の組のグラフ(java の "
+"<literal>Map</literal>)としてデータにアクセスできます。プロパティの名前は、 "
+"HQL クエリ内で参照できる純粋な論理構造です。"
#. Tag: title
-#: xml.xml:97
#, no-c-format
msgid "XML mapping metadata"
-msgstr "XMLマッピングのメタデータ"
+msgstr "XML マッピングのメタデータ"
#. Tag: para
-#: xml.xml:99
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"A range of Hibernate mapping elements accept the
<literal>node</literal> "
"attribute. This lets you specify the name of an XML attribute or element "
"that holds the property or entity data. The format of the
<literal>node</"
"literal> attribute must be one of the following:"
msgstr ""
-"多くのHibernateのマッピング要素は <literal>node</literal> 属性が使用できま"
-"す。 これによりXML属性の名前やプロパティやエンティティデータを保持する要素を"
-"指定できます。 <literal>node</literal> 属性のフォーマットは以下の中の1つでな"
-"ければなりません。:"
+"多くの Hibernate のマッピング要素は <literal>node</literal> 属性が使用できま"
+"す。これにより XML 属性の名前やプロパティやエンティティデータを保持する要素を"
+"指定できます。 <literal>node</literal> 属性のフォーマットは以下の中の1つでな"
+"ければなりません:"
#. Tag: para
-#: xml.xml:108
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>\"element-name\"</literal>: map to the named
XML element"
msgstr ""
-"<literal>\"element-name\"</literal> -
指定したXML要素へマッピングします"
+"<literal>\"element-name\"</literal> - 指定した XML
要素へマッピングします"
#. Tag: para
-#: xml.xml:111
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>\"@attribute-name\"</literal>: map to the
named XML attribute"
msgstr ""
-"<literal>\"@attribute-name\"</literal> -
指定したXML属性へマッピングします"
+"<literal>\"@attribute-name\"</literal> - 指定した XML
属性へマッピングします"
#. Tag: para
-#: xml.xml:114
-#, fuzzy, no-c-format
+#, no-c-format
msgid "<literal>\".\"</literal>: map to the parent
element"
-msgstr "<literal>\".\"</literal> - 親要素へマッピングします"
+msgstr "<literal>\".\"</literal> - 親要素へマッピングします"
#. Tag: para
-#: xml.xml:117
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"<literal>\"element-name/@attribute-name\"</literal>: map to
the named "
"attribute of the named element"
@@ -227,8 +159,7 @@
"定した属性へマッピングします"
#. Tag: para
-#: xml.xml:124
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"For collections and single valued associations, there is an additional "
"<literal>embed-xml</literal> attribute. If
<literal>embed-xml=\"true\"</"
@@ -238,204 +169,373 @@
"then only the referenced identifier value will appear in the XML for single "
"point associations and collections will not appear at all."
msgstr ""
-"コレクションと単一の値の関連に対して、 おまけの <literal>embed-xml</literal> "
-"属性があります。 デフォルトの <literal>embed-xml=\"true\"</literal>
と設定し"
-"た場合、 関連するエンティティ(値型のコレクション)のXMLツリーは、 直接関連を所"
-"有するエンティティのXMLツリー内に埋め込まれます。 反対に、<literal>embed-xml="
-"\"false\"</literal> と設定した場合、 参照される識別子の値だけが多重度1側の関"
-"連に対するXMLに現れ、 単純にコレクションはまったく現れなくなります。"
+"コレクションと単一の値の関連に対して、おまけの <literal>embed-xml</literal> "
+"属性があります。デフォルトの <literal>embed-xml=\"true\"</literal>
と設定した"
+"場合、関連するエンティティ (値型のコレクション) の XML ツリーは、直接関連を所"
+"有するエンティティの XML ツリー内に埋め込まれます。反対に、 <literal>embed-"
+"xml=\"false\"</literal> と設定した場合、参照される識別子の値だけが多重度1側"
+"の関連に対する XML に現れ、単純にコレクションはまったく現れなくなります。"
#. Tag: para
-#: xml.xml:134
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"Do not leave <literal>embed-xml=\"true\"</literal> for too
many "
"associations, since XML does not deal well with circularity."
msgstr ""
"あまりに多くの関連に対して <literal>embed-xml=\"true\"</literal>
としたままに"
-"するのは注意すべきです。 XMLは循環をうまく扱えません。"
+"するのは注意すべきです。 XML は循環をうまく扱えません。"
-#. Tag: programlisting
-#: xml.xml:139
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[<class name=\"Customer\" \n"
-" table=\"CUSTOMER\" \n"
-" node=\"customer\">\n"
-" \n"
-" <id name=\"id\" \n"
-" column=\"CUST_ID\" \n"
-" node=\"@id\"/>\n"
-" \n"
-" <map name=\"accounts\" \n"
-" node=\".\" \n"
-" embed-xml=\"true\">\n"
-" <key column=\"CUSTOMER_ID\" \n"
-" not-null=\"true\"/>\n"
-" <map-key column=\"SHORT_DESC\" \n"
-" node=\"@short-desc\" \n"
-" type=\"string\"/>\n"
-" <one-to-many entity-name=\"Account\"\n"
-" embed-xml=\"false\" \n"
-" node=\"account\"/>\n"
-" </map>\n"
-" \n"
-" <component name=\"name\" \n"
-" node=\"name\">\n"
-" <property name=\"firstName\" \n"
-" node=\"first-name\"/>\n"
-" <property name=\"initial\" \n"
-" node=\"initial\"/>\n"
-" <property name=\"lastName\" \n"
-" node=\"last-name\"/>\n"
-" </component>\n"
-" \n"
-" ...\n"
-" \n"
-"</class>]]>"
-msgstr ""
-
-#. Tag: para
-#: xml.xml:141
-#, fuzzy, no-c-format
-msgid ""
"In this case, the collection of account ids is embedded, but not the actual "
"account data. The following HQL query:"
msgstr ""
-"この例では、実際のaccountのデータではなく、 accountのidのコレクションを埋め込"
-"むことにしました。 続きのHQLクエリです:"
+"この例では、実際の account のデータではなく、 account の id のコレクションを"
+"埋め込むことにしました。続きの HQL クエリです:"
-#. Tag: programlisting
-#: xml.xml:146
+#. Tag: para
#, no-c-format
-msgid ""
-"<![CDATA[from Customer c left join fetch c.accounts where c.lastName like
:"
-"lastName]]>"
-msgstr ""
-
-#. Tag: para
-#: xml.xml:148
-#, fuzzy, no-c-format
msgid "would return datasets such as this:"
-msgstr "このようなデータセットを返すでしょう"
+msgstr "このようなデータセットを返すでしょう:"
-#. Tag: programlisting
-#: xml.xml:152
-#, no-c-format
-msgid ""
-"<![CDATA[<customer id=\"123456789\">\n"
-" <account
short-desc=\"Savings\">987632567</account>\n"
-" <account short-desc=\"Credit
Card\">985612323</account>\n"
-" <name>\n"
-" <first-name>Gavin</first-name>\n"
-" <initial>A</initial>\n"
-" <last-name>King</last-name>\n"
-" </name>\n"
-" ...\n"
-"</customer>]]>"
-msgstr ""
-
#. Tag: para
-#: xml.xml:154
#, no-c-format
msgid ""
"If you set <literal>embed-xml=\"true\"</literal> on the
<literal><one-to-"
"many></literal> mapping, the data might look more like this:"
msgstr ""
"<literal><one-to-many></literal> マッピングで
<literal>embed-xml=\"true"
-"\"</literal> と設定した場合、 データはこのようになるでしょう。"
+"\"</literal> と設定した場合、データはこのようになるでしょう。"
-#. Tag: programlisting
-#: xml.xml:159
-#, no-c-format
-msgid ""
-"<![CDATA[<customer id=\"123456789\">\n"
-" <account id=\"987632567\"
short-desc=\"Savings\">\n"
-" <customer id=\"123456789\"/>\n"
-" <balance>100.29</balance>\n"
-" </account>\n"
-" <account id=\"985612323\" short-desc=\"Credit
Card\">\n"
-" <customer id=\"123456789\"/>\n"
-" <balance>-2370.34</balance>\n"
-" </account>\n"
-" <name>\n"
-" <first-name>Gavin</first-name>\n"
-" <initial>A</initial>\n"
-" <last-name>King</last-name>\n"
-" </name>\n"
-" ...\n"
-"</customer>]]>"
-msgstr ""
-
#. Tag: title
-#: xml.xml:165
#, no-c-format
msgid "Manipulating XML data"
-msgstr "XMLデータを扱う"
+msgstr "XML データを扱う"
#. Tag: para
-#: xml.xml:167
-#, fuzzy, no-c-format
+#, no-c-format
msgid ""
"You can also re-read and update XML documents in the application. You can do
"
"this by obtaining a dom4j session:"
msgstr ""
-"XMLドキュメントを、アプリケーション内で再読み込みや更新をしてみましょう。 以"
-"下ではdom4jのセッションを取得することで行います。:"
+"XML ドキュメントを、アプリケーション内で再読み込みや更新をしてみましょう。以"
+"下では dom4j のセッションを取得することで行います:"
-#. Tag: programlisting
-#: xml.xml:172
+#. Tag: para
#, no-c-format
msgid ""
-"<![CDATA[Document doc = ....;\n"
-" \n"
-"Session session = factory.openSession();\n"
-"Session dom4jSession = session.getSession(EntityMode.DOM4J);\n"
-"Transaction tx = session.beginTransaction();\n"
-"\n"
-"List results = dom4jSession\n"
-" .createQuery(\"from Customer c left join fetch c.accounts where c."
-"lastName like :lastName\")\n"
-" .list();\n"
-"for ( int i=0; i<results.size(); i++ ) {\n"
-" //add the customer data to the XML document\n"
-" Element customer = (Element) results.get(i);\n"
-" doc.add(customer);\n"
-"}\n"
-"\n"
-"tx.commit();\n"
-"session.close();]]>"
+"When implementing XML-based data import/export, it is useful to combine this
"
+"feature with Hibernate's <literal>replicate()</literal>
operation."
msgstr ""
+"XML ベースのデータのインポート/エクスポートを実装するために、 Hibernate の "
+"<literal>replicate()</literal> 操作をこの機能に結びつけるのは極めて有効です。"
-#. Tag: programlisting
-#: xml.xml:174
-#, no-c-format
-msgid ""
-"<![CDATA[Session session = factory.openSession();\n"
-"Session dom4jSession = session.getSession(EntityMode.DOM4J);\n"
-"Transaction tx = session.beginTransaction();\n"
-"\n"
-"Element cust = (Element) dom4jSession.get(\"Customer\",
customerId);\n"
-"for ( int i=0; i<results.size(); i++ ) {\n"
-" Element customer = (Element) results.get(i);\n"
-" //change the customer name in the XML and database\n"
-" Element name = customer.element(\"name\");\n"
-" name.element(\"first-name\").setText(firstName);\n"
-" name.element(\"initial\").setText(initial);\n"
-" name.element(\"last-name\").setText(lastName);\n"
-"}\n"
-"\n"
-"tx.commit();\n"
-"session.close();]]>"
-msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Account\" \n"
+#~ " table=\"ACCOUNTS\" \n"
+#~ " node=\"account\">\n"
+#~ " \n"
+#~ " <id name=\"accountId\" \n"
+#~ " column=\"ACCOUNT_ID\" \n"
+#~ " node=\"@id\"/>\n"
+#~ " \n"
+#~ " <many-to-one name=\"customer\" \n"
+#~ " column=\"CUSTOMER_ID\" \n"
+#~ " node=\"customer/@id\" \n"
+#~ " embed-xml=\"false\"/>\n"
+#~ " \n"
+#~ " <property name=\"balance\" \n"
+#~ " column=\"BALANCE\" \n"
+#~ " node=\"balance\"/>\n"
+#~ " \n"
+#~ " ...\n"
+#~ " \n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Account\" \n"
+#~ " table=\"ACCOUNTS\" \n"
+#~ " node=\"account\">\n"
+#~ " \n"
+#~ " <id name=\"accountId\" \n"
+#~ " column=\"ACCOUNT_ID\" \n"
+#~ " node=\"@id\"/>\n"
+#~ " \n"
+#~ " <many-to-one name=\"customer\" \n"
+#~ " column=\"CUSTOMER_ID\" \n"
+#~ " node=\"customer/@id\" \n"
+#~ " embed-xml=\"false\"/>\n"
+#~ " \n"
+#~ " <property name=\"balance\" \n"
+#~ " column=\"BALANCE\" \n"
+#~ " node=\"balance\"/>\n"
+#~ " \n"
+#~ " ...\n"
+#~ " \n"
+#~ "</class>"
-#. Tag: para
-#: xml.xml:176
-#, fuzzy, no-c-format
-msgid ""
-"When implementing XML-based data import/export, it is useful to combine this
"
-"feature with Hibernate's <literal>replicate()</literal>
operation."
-msgstr ""
-"XMLベースのデータのインポート/エクスポートを実装するために、 Hibernateの "
-"<literal>replicate()</literal> 操作をこの機能を結びつけるのは 極めて有効で"
-"す。"
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class entity-name=\"Account\" \n"
+#~ " table=\"ACCOUNTS\" \n"
+#~ " node=\"account\">\n"
+#~ " \n"
+#~ " <id name=\"id\" \n"
+#~ " column=\"ACCOUNT_ID\" \n"
+#~ " node=\"@id\" \n"
+#~ " type=\"string\"/>\n"
+#~ " \n"
+#~ " <many-to-one name=\"customerId\" \n"
+#~ " column=\"CUSTOMER_ID\" \n"
+#~ " node=\"customer/@id\" \n"
+#~ " embed-xml=\"false\" \n"
+#~ " entity-name=\"Customer\"/>\n"
+#~ " \n"
+#~ " <property name=\"balance\" \n"
+#~ " column=\"BALANCE\" \n"
+#~ " node=\"balance\" \n"
+#~ " type=\"big_decimal\"/>\n"
+#~ " \n"
+#~ " ...\n"
+#~ " \n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class entity-name=\"Account\" \n"
+#~ " table=\"ACCOUNTS\" \n"
+#~ " node=\"account\">\n"
+#~ " \n"
+#~ " <id name=\"id\" \n"
+#~ " column=\"ACCOUNT_ID\" \n"
+#~ " node=\"@id\" \n"
+#~ " type=\"string\"/>\n"
+#~ " \n"
+#~ " <many-to-one name=\"customerId\" \n"
+#~ " column=\"CUSTOMER_ID\" \n"
+#~ " node=\"customer/@id\" \n"
+#~ " embed-xml=\"false\" \n"
+#~ " entity-name=\"Customer\"/>\n"
+#~ " \n"
+#~ " <property name=\"balance\" \n"
+#~ " column=\"BALANCE\" \n"
+#~ " node=\"balance\" \n"
+#~ " type=\"big_decimal\"/>\n"
+#~ " \n"
+#~ " ...\n"
+#~ " \n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<class name=\"Customer\" \n"
+#~ " table=\"CUSTOMER\" \n"
+#~ " node=\"customer\">\n"
+#~ " \n"
+#~ " <id name=\"id\" \n"
+#~ " column=\"CUST_ID\" \n"
+#~ " node=\"@id\"/>\n"
+#~ " \n"
+#~ " <map name=\"accounts\" \n"
+#~ " node=\".\" \n"
+#~ " embed-xml=\"true\">\n"
+#~ " <key column=\"CUSTOMER_ID\" \n"
+#~ " not-null=\"true\"/>\n"
+#~ " <map-key column=\"SHORT_DESC\" \n"
+#~ " node=\"@short-desc\" \n"
+#~ " type=\"string\"/>\n"
+#~ " <one-to-many entity-name=\"Account\"\n"
+#~ " embed-xml=\"false\" \n"
+#~ " node=\"account\"/>\n"
+#~ " </map>\n"
+#~ " \n"
+#~ " <component name=\"name\" \n"
+#~ " node=\"name\">\n"
+#~ " <property name=\"firstName\" \n"
+#~ " node=\"first-name\"/>\n"
+#~ " <property name=\"initial\" \n"
+#~ " node=\"initial\"/>\n"
+#~ " <property name=\"lastName\" \n"
+#~ " node=\"last-name\"/>\n"
+#~ " </component>\n"
+#~ " \n"
+#~ " ...\n"
+#~ " \n"
+#~ "</class>]]>"
+#~ msgstr ""
+#~ "<class name=\"Customer\" \n"
+#~ " table=\"CUSTOMER\" \n"
+#~ " node=\"customer\">\n"
+#~ " \n"
+#~ " <id name=\"id\" \n"
+#~ " column=\"CUST_ID\" \n"
+#~ " node=\"@id\"/>\n"
+#~ " \n"
+#~ " <map name=\"accounts\" \n"
+#~ " node=\".\" \n"
+#~ " embed-xml=\"true\">\n"
+#~ " <key column=\"CUSTOMER_ID\" \n"
+#~ " not-null=\"true\"/>\n"
+#~ " <map-key column=\"SHORT_DESC\" \n"
+#~ " node=\"@short-desc\" \n"
+#~ " type=\"string\"/>\n"
+#~ " <one-to-many entity-name=\"Account\"\n"
+#~ " embed-xml=\"false\" \n"
+#~ " node=\"account\"/>\n"
+#~ " </map>\n"
+#~ " \n"
+#~ " <component name=\"name\" \n"
+#~ " node=\"name\">\n"
+#~ " <property name=\"firstName\" \n"
+#~ " node=\"first-name\"/>\n"
+#~ " <property name=\"initial\" \n"
+#~ " node=\"initial\"/>\n"
+#~ " <property name=\"lastName\" \n"
+#~ " node=\"last-name\"/>\n"
+#~ " </component>\n"
+#~ " \n"
+#~ " ...\n"
+#~ " \n"
+#~ "</class>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[from Customer c left join fetch c.accounts where c.lastName "
+#~ "like :lastName]]>"
+#~ msgstr ""
+#~ "from Customer c left join fetch c.accounts where c.lastName like
:lastName"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<customer id=\"123456789\">\n"
+#~ " <account
short-desc=\"Savings\">987632567</account>\n"
+#~ " <account short-desc=\"Credit
Card\">985612323</account>\n"
+#~ " <name>\n"
+#~ " <first-name>Gavin</first-name>\n"
+#~ " <initial>A</initial>\n"
+#~ " <last-name>King</last-name>\n"
+#~ " </name>\n"
+#~ " ...\n"
+#~ "</customer>]]>"
+#~ msgstr ""
+#~ "<customer id=\"123456789\">\n"
+#~ " <account
short-desc=\"Savings\">987632567</account>\n"
+#~ " <account short-desc=\"Credit
Card\">985612323</account>\n"
+#~ " <name>\n"
+#~ " <first-name>Gavin</first-name>\n"
+#~ " <initial>A</initial>\n"
+#~ " <last-name>King</last-name>\n"
+#~ " </name>\n"
+#~ " ...\n"
+#~ "</customer>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[<customer id=\"123456789\">\n"
+#~ " <account id=\"987632567\"
short-desc=\"Savings\">\n"
+#~ " <customer id=\"123456789\"/>\n"
+#~ " <balance>100.29</balance>\n"
+#~ " </account>\n"
+#~ " <account id=\"985612323\" short-desc=\"Credit
Card\">\n"
+#~ " <customer id=\"123456789\"/>\n"
+#~ " <balance>-2370.34</balance>\n"
+#~ " </account>\n"
+#~ " <name>\n"
+#~ " <first-name>Gavin</first-name>\n"
+#~ " <initial>A</initial>\n"
+#~ " <last-name>King</last-name>\n"
+#~ " </name>\n"
+#~ " ...\n"
+#~ "</customer>]]>"
+#~ msgstr ""
+#~ "<customer id=\"123456789\">\n"
+#~ " <account id=\"987632567\"
short-desc=\"Savings\">\n"
+#~ " <customer id=\"123456789\"/>\n"
+#~ " <balance>100.29</balance>\n"
+#~ " </account>\n"
+#~ " <account id=\"985612323\" short-desc=\"Credit
Card\">\n"
+#~ " <customer id=\"123456789\"/>\n"
+#~ " <balance>-2370.34</balance>\n"
+#~ " </account>\n"
+#~ " <name>\n"
+#~ " <first-name>Gavin</first-name>\n"
+#~ " <initial>A</initial>\n"
+#~ " <last-name>King</last-name>\n"
+#~ " </name>\n"
+#~ " ...\n"
+#~ "</customer>"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Document doc = ....;\n"
+#~ " \n"
+#~ "Session session = factory.openSession();\n"
+#~ "Session dom4jSession = session.getSession(EntityMode.DOM4J);\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "\n"
+#~ "List results = dom4jSession\n"
+#~ " .createQuery(\"from Customer c left join fetch c.accounts where
c."
+#~ "lastName like :lastName\")\n"
+#~ " .list();\n"
+#~ "for ( int i=0; i<results.size(); i++ ) {\n"
+#~ " //add the customer data to the XML document\n"
+#~ " Element customer = (Element) results.get(i);\n"
+#~ " doc.add(customer);\n"
+#~ "}\n"
+#~ "\n"
+#~ "tx.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "Document doc = ....;\n"
+#~ " \n"
+#~ "Session session = factory.openSession();\n"
+#~ "Session dom4jSession = session.getSession(EntityMode.DOM4J);\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "\n"
+#~ "List results = dom4jSession\n"
+#~ " .createQuery(\"from Customer c left join fetch c.accounts where
c."
+#~ "lastName like :lastName\")\n"
+#~ " .list();\n"
+#~ "for ( int i=0; i<results.size(); i++ ) {\n"
+#~ " //add the customer data to the XML document\n"
+#~ " Element customer = (Element) results.get(i);\n"
+#~ " doc.add(customer);\n"
+#~ "}\n"
+#~ "\n"
+#~ "tx.commit();\n"
+#~ "session.close();"
+
+#, fuzzy
+#~ msgid ""
+#~ "<![CDATA[Session session = factory.openSession();\n"
+#~ "Session dom4jSession = session.getSession(EntityMode.DOM4J);\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "\n"
+#~ "Element cust = (Element) dom4jSession.get(\"Customer\",
customerId);\n"
+#~ "for ( int i=0; i<results.size(); i++ ) {\n"
+#~ " Element customer = (Element) results.get(i);\n"
+#~ " //change the customer name in the XML and database\n"
+#~ " Element name = customer.element(\"name\");\n"
+#~ " name.element(\"first-name\").setText(firstName);\n"
+#~ " name.element(\"initial\").setText(initial);\n"
+#~ " name.element(\"last-name\").setText(lastName);\n"
+#~ "}\n"
+#~ "\n"
+#~ "tx.commit();\n"
+#~ "session.close();]]>"
+#~ msgstr ""
+#~ "Session session = factory.openSession();\n"
+#~ "Session dom4jSession = session.getSession(EntityMode.DOM4J);\n"
+#~ "Transaction tx = session.beginTransaction();\n"
+#~ "\n"
+#~ "Element cust = (Element) dom4jSession.get(\"Customer\",
customerId);\n"
+#~ "for ( int i=0; i<results.size(); i++ ) {\n"
+#~ " Element customer = (Element) results.get(i);\n"
+#~ " //change the customer name in the XML and database\n"
+#~ " Element name = customer.element(\"name\");\n"
+#~ " name.element(\"first-name\").setText(firstName);\n"
+#~ " name.element(\"initial\").setText(initial);\n"
+#~ " name.element(\"last-name\").setText(lastName);\n"
+#~ "}\n"
+#~ "\n"
+#~ "tx.commit();\n"
+#~ "session.close();"
Added:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Conventions.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Conventions.po
(rev 0)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Conventions.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -0,0 +1,214 @@
+#
+# AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: 0\n"
+"POT-Creation-Date: 2009-12-11T05:07:40\n"
+"PO-Revision-Date: 2009-12-11T05:07:40\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: None\n"
+"MIME-Version: 1.0\n"
+"Content-Type: application/x-publican; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Tag: title
+#, no-c-format
+msgid "Document Conventions"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "This manual uses several conventions to highlight certain words and phrases
and draw attention to specific pieces of information."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "In PDF and paper editions, this manual uses typefaces drawn from the
<ulink
url=\"https://fedorahosted.org/liberation-fonts/\">Liberation
Fonts</ulink> set. The Liberation Fonts set is also used in HTML editions if the set
is installed on your system. If not, alternative but equivalent typefaces are displayed.
Note: Red Hat Enterprise Linux 5 and later includes the Liberation Fonts set by
default."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Typographic Conventions"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Four typographic conventions are used to call attention to specific words and
phrases. These conventions, and the circumstances they apply to, are as follows."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "<literal>Mono-spaced Bold</literal>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Used to highlight system input, including shell commands, file names and
paths. Also used to highlight keycaps and key combinations. For example:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "To see the contents of the file
<filename>my_next_bestselling_novel</filename> in your current working
directory, enter the <command>cat my_next_bestselling_novel</command> command
at the shell prompt and press <keycap>Enter</keycap> to execute the
command."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The above includes a file name, a shell command and a keycap, all presented
in mono-spaced bold and all distinguishable thanks to context."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Key combinations can be distinguished from keycaps by the hyphen connecting
each part of a key combination. For example:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Press <keycap>Enter</keycap> to execute the command."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Press
<keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F1</keycap></keycombo>
to switch to the first virtual terminal. Press
<keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F7</keycap></keycombo>
to return to your X-Windows session."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The first paragraph highlights the particular keycap to press. The second
highlights two key combinations (each a set of three keycaps with each set pressed
simultaneously)."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "If source code is discussed, class names, methods, functions, variable names
and returned values mentioned within a paragraph will be presented as above, in
<literal>mono-spaced bold</literal>. For example:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "File-related classes include <classname>filesystem</classname>
for file systems, <classname>file</classname> for files, and
<classname>dir</classname> for directories. Each class has its own associated
set of permissions."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "<application>Proportional Bold</application>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "This denotes words or phrases encountered on a system, including application
names; dialog box text; labeled buttons; check-box and radio button labels; menu titles
and sub-menu titles. For example:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Choose
<menuchoice><guimenu>System</guimenu><guisubmenu>Preferences</guisubmenu><guimenuitem>Mouse</guimenuitem></menuchoice>
from the main menu bar to launch <application>Mouse Preferences</application>.
In the <guilabel>Buttons</guilabel> tab, click the <guilabel>Left-handed
mouse</guilabel> check box and click <guibutton>Close</guibutton> to
switch the primary mouse button from the left to the right (making the mouse suitable for
use in the left hand)."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "To insert a special character into a
<application>gedit</application> file, choose
<menuchoice><guimenu>Applications</guimenu><guisubmenu>Accessories</guisubmenu><guimenuitem>Character
Map</guimenuitem></menuchoice> from the main menu bar. Next, choose
<menuchoice><guimenu>Search</guimenu><guimenuitem>Find…</guimenuitem></menuchoice>
from the <application>Character Map</application> menu bar, type the name of
the character in the <guilabel>Search</guilabel> field and click
<guibutton>Next</guibutton>. The character you sought will be highlighted in
the <guilabel>Character Table</guilabel>. Double-click this highlighted
character to place it in the <guilabel>Text to copy</guilabel> field and then
click the <guibutton>Copy</guibutton> button. Now switch back to your document
and choose
<menuchoice><guimenu>Edit</guimenu><guimenuitem>Paste</guimenuitem></menuchoice>
from the <application>gedit</application> menu bar."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The above text includes application names; system-wide menu names and items;
application-specific menu names; and buttons and text found within a GUI interface, all
presented in proportional bold and all distinguishable by context."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "<command><replaceable>Mono-spaced Bold
Italic</replaceable></command> or
<application><replaceable>Proportional Bold
Italic</replaceable></application>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Whether mono-spaced bold or proportional bold, the addition of italics
indicates replaceable or variable text. Italics denotes text you do not input literally or
displayed text that changes depending on circumstance. For example:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "To connect to a remote machine using ssh, type <command>ssh
<replaceable>username</replaceable>(a)<replaceable>domain.name</replaceable></command>
at a shell prompt. If the remote machine is <filename>example.com</filename>
and your username on that machine is john, type <command>ssh
john(a)example.com</command>."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <command>mount -o remount
<replaceable>file-system</replaceable></command> command remounts the
named file system. For example, to remount the <filename>/home</filename> file
system, the command is <command>mount -o remount /home</command>."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "To see the version of a currently installed package, use the
<command>rpm -q <replaceable>package</replaceable></command>
command. It will return a result as follows:
<command><replaceable>package-version-release</replaceable></command>."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Note the words in bold italics above — username, domain.name,
file-system, package, version and release. Each word is a placeholder, either for text you
enter when issuing a command or for text displayed by the system."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Aside from standard usage for presenting the title of a work, italics denotes
the first use of a new and important term. For example:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Publican is a <firstterm>DocBook</firstterm> publishing
system."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Pull-quote Conventions"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Terminal output and source code listings are set off visually from the
surrounding text."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Output sent to a terminal is set in <computeroutput>mono-spaced
roman</computeroutput> and presented thus:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Source-code listings are also set in <computeroutput>mono-spaced
roman</computeroutput> but add syntax highlighting as follows:"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Notes and Warnings"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Finally, we use three visual styles to draw attention to information that
might otherwise be overlooked."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Note"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Notes are tips, shortcuts or alternative approaches to the task at hand.
Ignoring a note should have no negative consequences, but you might miss out on a trick
that makes your life easier."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Important"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Important boxes detail things that are easily missed: configuration changes
that only apply to the current session, or services that need restarting before an update
will apply. Ignoring a box labeled 'Important' won't cause data loss but may
cause irritation and frustration."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Warning"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Warnings should not be ignored. Ignoring warnings will most likely cause data
loss."
+msgstr ""
+
Added:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Feedback.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Feedback.po
(rev 0)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Feedback.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -0,0 +1,34 @@
+#
+# AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: 0\n"
+"POT-Creation-Date: 2009-12-11T05:07:40\n"
+"PO-Revision-Date: 2009-12-11T05:07:40\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: None\n"
+"MIME-Version: 1.0\n"
+"Content-Type: application/x-publican; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Tag: title
+#, no-c-format
+msgid "We Need Feedback!"
+msgstr ""
+
+#. Tag: primary
+#, no-c-format
+msgid "feedback"
+msgstr ""
+
+#. Tag: secondary
+#, no-c-format
+msgid "contact information for this manual"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "You should over ride this by creating your own local Feedback.xml
file."
+msgstr ""
+
Added:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Legal_Notice.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Legal_Notice.po
(rev 0)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/fallback_content/Legal_Notice.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -0,0 +1,19 @@
+#
+# AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: 0\n"
+"POT-Creation-Date: 2009-12-11T05:07:40\n"
+"PO-Revision-Date: 2009-12-11T05:07:40\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: None\n"
+"MIME-Version: 1.0\n"
+"Content-Type: application/x-publican; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Tag: para
+#, no-c-format
+msgid "Copyright <trademark class=\"copyright\"></trademark>
&YEAR; &HOLDER; This material may only be distributed subject to the terms and
conditions set forth in the GNU Free Documentation License (GFDL), V1.2 or later (the
latest version is presently available at <ulink
url=\"http://www.gnu.org/licenses/fdl.txt\">http://www.gnu.o...
+msgstr ""
+
Deleted:
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/legal_notice.po
===================================================================
---
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/legal_notice.po 2010-02-08
06:11:40 UTC (rev 18722)
+++
core/branches/Branch_3_3/documentation/manual/src/main/docbook/ja-JP/legal_notice.po 2010-02-08
06:18:39 UTC (rev 18723)
@@ -1,84 +0,0 @@
-#, fuzzy
-msgid ""
-msgstr ""
-"Report-Msgid-Bugs-To:
http://bugs.kde.org\n"
-"POT-Creation-Date: 2009-06-16 18:47+0000\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-
-#. Tag: title
-#: legal_notice.xml:28
-#, no-c-format
-msgid "Legal Notice"
-msgstr "Legal Notice"
-
-#. Tag: address
-#: legal_notice.xml:30
-#, no-c-format
-msgid ""
-"<street>1801 Varsity Drive</street> <city>Raleigh</city>,
<state>NC</"
-"state><postcode>27606-2072</postcode><country>USA</country>
<phone>Phone: +1 "
-"919 754 3700</phone> <phone>Phone: 888 733 4281</phone>
<fax>Fax: +1 919 754 "
-"3701</fax> <pob>PO Box 13588</pob><city>Research Triangle
Park</city>, "
-"<state>NC</state><postcode>27709</postcode><country>USA</country>"
-msgstr ""
-"<street>1801 Varsity Drive</street> <city>Raleigh</city>,
<state>NC</"
-"state><postcode>27606-2072</postcode><country>USA</country>
<phone>Phone: +1 "
-"919 754 3700</phone> <phone>Phone: 888 733 4281</phone>
<fax>Fax: +1 919 754 "
-"3701</fax> <pob>PO Box 13588</pob><city>Research Triangle
Park</city>, "
-"<state>NC</state><postcode>27709</postcode><country>USA</country>"
-
-#. Tag: para
-#: legal_notice.xml:39
-#, fuzzy, no-c-format
-msgid ""
-"Copyright <trademark class=\"copyright\"></trademark> 2007 by
Red Hat, Inc. "
-"This copyrighted material is made available to anyone wishing to use, "
-"modify, copy, or redistribute it subject to the terms and conditions of the "
-"GNU <ulink
url=\"http://www.gnu.org/licenses/lgpl-2.1.html\">Lesser
General "
-"Public License</ulink>, as published by the Free Software Foundation."
-msgstr ""
-"Copyright <trademark class=\"copyright\"></trademark> 2007 by
Red Hat, Inc. "
-"This copyrighted material is made available to anyone wishing to use, "
-"modify, copy, or redistribute it subject to the terms and conditions of the "
-"GNU <ulink
url=\"http://www.gnu.org/licenses/lgpl-2.1.html\">Lesser
General "
-"Public License</ulink>, as published by the Free Software Foundation."
-
-#. Tag: para
-#: legal_notice.xml:45
-#, no-c-format
-msgid ""
-"Red Hat and the Red Hat \"Shadow Man\" logo are registered trademarks of
Red "
-"Hat, Inc. in the United States and other countries."
-msgstr ""
-"Red Hat and the Red Hat \"Shadow Man\" logo are registered trademarks of
Red "
-"Hat, Inc. in the United States and other countries."
-
-#. Tag: para
-#: legal_notice.xml:48
-#, no-c-format
-msgid ""
-"All other trademarks referenced herein are the property of their respective "
-"owners."
-msgstr ""
-"All other trademarks referenced herein are the property of their respective "
-"owners."
-
-#. Tag: para
-#: legal_notice.xml:51
-#, no-c-format
-msgid "The GPG fingerprint of the security(a)redhat.com key is:"
-msgstr "The GPG fingerprint of the security(a)redhat.com key is:"
-
-#. Tag: para
-#: legal_notice.xml:54
-#, no-c-format
-msgid "CA 20 86 86 2B D6 9D FC 65 F6 EC C4 21 91 80 CD DB 42 A6 0E"
-msgstr "CA 20 86 86 2B D6 9D FC 65 F6 EC C4 21 91 80 CD DB 42 A6 0E"
-
-#~ msgid "ROLES_OF_TRANSLATORS"
-#~ msgstr "<!--TRANS:ROLES_OF_TRANSLATORS-->"
-
-#~ msgid "CREDIT_FOR_TRANSLATORS"
-#~ msgstr "<!--TRANS:CREDIT_FOR_TRANSLATORS-->"