new docbook layout
git-svn-id: https://svn.jboss.org/repos/hibernate/core/trunk@14073 1b8cb986-b30d-0410-93ca-fae66ebed9b2
This commit is contained in:
parent
2cbb58571e
commit
d3b88270bf
|
@ -0,0 +1,90 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!--
|
||||
~ Copyright (c) 2007, Red Hat Middleware, LLC. All rights reserved.
|
||||
~
|
||||
~ 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
|
||||
~ Lesser General Public License, v. 2.1. This program is distributed in the
|
||||
~ hope that it will be useful, but WITHOUT A WARRANTY; without even the implied
|
||||
~ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
~ Lesser General Public License for more details. You should have received a
|
||||
~ copy of the GNU Lesser General Public License, v.2.1 along with this
|
||||
~ distribution; if not, write to the Free Software Foundation, Inc.,
|
||||
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
~
|
||||
~ Red Hat Author(s): Steve Ebersole
|
||||
-->
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY versionNumber "3.3.0.alpha1">
|
||||
<!ENTITY copyrightYear "2004">
|
||||
<!ENTITY copyrightHolder "Red Hat Middleware, LLC.">
|
||||
]>
|
||||
|
||||
<book>
|
||||
|
||||
<bookinfo>
|
||||
<title>HIBERNATE - Relational Persistence for Idiomatic Java</title>
|
||||
<subtitle>Hibernate Reference Documentation</subtitle>
|
||||
<releaseinfo>&versionNumber;</releaseinfo>
|
||||
<productnumber>&versionNumber;</productnumber>
|
||||
<issuenum>1</issuenum>
|
||||
<mediaobject>
|
||||
<imageobject role="fo">
|
||||
<imagedata fileref="images/hibernate_logo_a.png" align="center" />
|
||||
</imageobject>
|
||||
<imageobject role="html">
|
||||
<imagedata fileref="images/hibernate_logo_a.png" depth="3cm" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
<copyright>
|
||||
<year>©rightYear;</year>
|
||||
<holder>©rightHolder;</holder>
|
||||
</copyright>
|
||||
<!--
|
||||
todo : figure out how best to include translator info...
|
||||
<xi:include href="author_group.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
-->
|
||||
<xi:include href="legal_notice.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
</bookinfo>
|
||||
|
||||
<toc/>
|
||||
|
||||
<xi:include href="content/preface.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/tutorial.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/architecture.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/configuration.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/persistent_classes.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/basic_mapping.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/collection_mapping.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/association_mapping.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/component_mapping.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/inheritance_mapping.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/session_api.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/transactions.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/events.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/batch.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/query_hql.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/query_criteria.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/query_sql.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/filters.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/xml.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/performance.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/toolset_guide.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/example_parentchild.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/example_weblog.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
<xi:include href="content/example_mappings.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
<xi:include href="content/best_practices.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
|
||||
|
||||
</book>
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<?xml version='1.0'?>
|
||||
<!--
|
||||
~ Copyright (c) 2007, Red Hat Middleware, LLC. All rights reserved.
|
||||
~
|
||||
~ 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
|
||||
~ Lesser General Public License, v. 2.1. This program is distributed in the
|
||||
~ hope that it will be useful, but WITHOUT A WARRANTY; without even the implied
|
||||
~ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
~ Lesser General Public License for more details. You should have received a
|
||||
~ copy of the GNU Lesser General Public License, v.2.1 along with this
|
||||
~ distribution; if not, write to the Free Software Foundation, Inc.,
|
||||
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
~
|
||||
~ Red Hat Author(s): Steve Ebersole
|
||||
-->
|
||||
<!DOCTYPE authorgroup PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<authorgroup id="AuthorGroup">
|
||||
<collab>
|
||||
<collabname>The Hibernate team</collabname>
|
||||
</collab>
|
||||
<!-- translations should list all contributors to the translation using the 'translator' class
|
||||
<othercredit class="translator">
|
||||
<firstname>Jane</firstname>
|
||||
<surname>Doe</surname>
|
||||
<contrib>Japenese translation</contrib>
|
||||
</othercredit>
|
||||
-->
|
||||
</authorgroup>
|
|
@ -1,3 +1,21 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
~ Copyright (c) 2007, Red Hat Middleware, LLC. All rights reserved.
|
||||
~
|
||||
~ 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
|
||||
~ Lesser General Public License, v. 2.1. This program is distributed in the
|
||||
~ hope that it will be useful, but WITHOUT A WARRANTY; without even the implied
|
||||
~ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
~ Lesser General Public License for more details. You should have received a
|
||||
~ copy of the GNU Lesser General Public License, v.2.1 along with this
|
||||
~ distribution; if not, write to the Free Software Foundation, Inc.,
|
||||
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
~
|
||||
~ Red Hat Author(s): Steve Ebersole
|
||||
-->
|
||||
<chapter id="architecture">
|
||||
|
||||
<title>Architecture</title>
|
||||
|
@ -11,10 +29,10 @@
|
|||
|
||||
<mediaobject>
|
||||
<imageobject role="fo">
|
||||
<imagedata fileref="images/overview.svg" format="SVG" align="center"/>
|
||||
<imagedata fileref="../images/overview.svg" format="SVG" align="center"/>
|
||||
</imageobject>
|
||||
<imageobject role="html">
|
||||
<imagedata fileref="../shared/images/overview.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="../images/overview.png" format="PNG" align="center"/>
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
|
||||
|
@ -33,10 +51,10 @@
|
|||
|
||||
<mediaobject>
|
||||
<imageobject role="fo">
|
||||
<imagedata fileref="images/lite.svg" format="SVG" align="center"/>
|
||||
<imagedata fileref="../images/lite.svg" format="SVG" align="center"/>
|
||||
</imageobject>
|
||||
<imageobject role="html">
|
||||
<imagedata fileref="../shared/images/lite.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="../images/lite.png" format="PNG" align="center"/>
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
|
||||
|
@ -47,10 +65,10 @@
|
|||
|
||||
<mediaobject>
|
||||
<imageobject role="fo">
|
||||
<imagedata fileref="images/full_cream.svg" format="SVG" align="center"/>
|
||||
<imagedata fileref="../images/full_cream.svg" format="SVG" align="center"/>
|
||||
</imageobject>
|
||||
<imageobject role="html">
|
||||
<imagedata fileref="../shared/images/full_cream.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="../images/full_cream.png" format="PNG" align="center"/>
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="associations">
|
||||
|
||||
<title>Association Mappings</title>
|
|
@ -1,3 +1,8 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY mdash "-">
|
||||
]>
|
||||
|
||||
<chapter id="mapping">
|
||||
<title>Basic O/R Mapping</title>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="batch">
|
||||
<title>Batch processing</title>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="best-practices" revision="3">
|
||||
<title>Best Practices</title>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="collections">
|
||||
<title>Collection Mapping</title>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="components">
|
||||
<title>Component Mapping</title>
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="events">
|
||||
<title>Interceptors and events</title>
|
||||
|
|
@ -1,3 +1,21 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
~ Copyright (c) 2007, Red Hat Middleware, LLC. All rights reserved.
|
||||
~
|
||||
~ 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
|
||||
~ Lesser General Public License, v. 2.1. This program is distributed in the
|
||||
~ hope that it will be useful, but WITHOUT A WARRANTY; without even the implied
|
||||
~ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
~ Lesser General Public License for more details. You should have received a
|
||||
~ copy of the GNU Lesser General Public License, v.2.1 along with this
|
||||
~ distribution; if not, write to the Free Software Foundation, Inc.,
|
||||
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
~
|
||||
~ Red Hat Author(s): Steve Ebersole
|
||||
-->
|
||||
<chapter id="example-mappings">
|
||||
<title>Example: Various Mappings</title>
|
||||
|
||||
|
@ -17,11 +35,11 @@
|
|||
</para>
|
||||
|
||||
<mediaobject>
|
||||
<imageobject role="fo">
|
||||
<imagedata fileref="images/EmployerEmployee.gif" format="GIF" align="center"/>
|
||||
</imageobject>
|
||||
<imageobject role="html">
|
||||
<imagedata fileref="../shared/images/EmployerEmployee.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="../images/EmployerEmployee.png" format="PNG" align="center" />
|
||||
</imageobject>
|
||||
<imageobject role="fo">
|
||||
<imagedata fileref="../images/EmployerEmployee.png" format="PNG" align="center" width="17cm" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
|
||||
|
@ -131,11 +149,11 @@ create sequence employer_id_seq]]></programlisting>
|
|||
</para>
|
||||
|
||||
<mediaobject>
|
||||
<imageobject role="fo">
|
||||
<imagedata fileref="images/AuthorWork.gif" format="GIF" align="center"/>
|
||||
</imageobject>
|
||||
<imageobject role="html">
|
||||
<imagedata fileref="../shared/images/AuthorWork.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="../images/AuthorWork.png" format="PNG" align="center" />
|
||||
</imageobject>
|
||||
<imageobject role="fo">
|
||||
<imagedata fileref="../images/AuthorWork.png" format="PNG" align="center" width="17cm" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
|
||||
|
@ -255,11 +273,11 @@ alter table author_work
|
|||
</para>
|
||||
|
||||
<mediaobject>
|
||||
<imageobject role="fo">
|
||||
<imagedata fileref="images/CustomerOrderProduct.gif" format="GIF" align="center"/>
|
||||
</imageobject>
|
||||
<imageobject role="html">
|
||||
<imagedata fileref="../shared/images/CustomerOrderProduct.gif" format="GIF" align="center"/>
|
||||
<imagedata fileref="../images/CustomerOrderProduct.png" format="PNG" align="center" />
|
||||
</imageobject>
|
||||
<imageobject role="fo">
|
||||
<imagedata fileref="../images/CustomerOrderProduct.png" format="PNG" align="center" width="17cm" />
|
||||
</imageobject>
|
||||
</mediaobject>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="example-parentchild">
|
||||
<title>Example: Parent/Child</title>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="example-weblog">
|
||||
<title>Example: Weblog Application</title>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="filters">
|
||||
<title>Filtering data</title>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="inheritance">
|
||||
<title>Inheritance Mapping</title>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="performance">
|
||||
<title>Improving performance</title>
|
||||
|
||||
|
@ -681,7 +684,7 @@ Cat fritz = (Cat) iter.next();]]></programlisting>
|
|||
<entry>OSCache</entry>
|
||||
<entry><literal>org.hibernate.cache.OSCacheProvider</literal></entry>
|
||||
<entry>memory, disk</entry>
|
||||
<entry>yes (clustered invalidation)</entry>
|
||||
<entry></entry>
|
||||
<entry>yes</entry>
|
||||
</row>
|
||||
<row>
|
||||
|
@ -948,12 +951,6 @@ sessionFactory.evictCollection("Cat.kittens"); //evict all kitten collections]]>
|
|||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>CacheMode.IGNORE</literal> - never write nor read items from the second-level cache,
|
||||
except when updating data.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>CacheMode.GET</literal> - read items from the second-level cache, but don't write to
|
||||
the second-level cache except when updating data
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="persistent-classes" revision="2">
|
||||
<title>Persistent Classes</title>
|
||||
|
|
@ -0,0 +1,123 @@
|
|||
<?xml version='1.0'?>
|
||||
<!--
|
||||
~ Copyright (c) 2007, Red Hat Middleware, LLC. All rights reserved.
|
||||
~
|
||||
~ 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
|
||||
~ Lesser General Public License, v. 2.1. This program is distributed in the
|
||||
~ hope that it will be useful, but WITHOUT A WARRANTY; without even the implied
|
||||
~ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
~ Lesser General Public License for more details. You should have received a
|
||||
~ copy of the GNU Lesser General Public License, v.2.1 along with this
|
||||
~ distribution; if not, write to the Free Software Foundation, Inc.,
|
||||
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
~
|
||||
~ Red Hat Author(s): Steve Ebersole
|
||||
-->
|
||||
<!DOCTYPE preface PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<preface id="preface">
|
||||
<title>Preface</title>
|
||||
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
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 and can significantly reduce development time otherwise
|
||||
spent with manual data handling in SQL and JDBC.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Hibernates 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.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If you are new to Hibernate and Object/Relational Mapping or even Java,
|
||||
please follow these steps:
|
||||
</para>
|
||||
|
||||
<orderedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Read <xref linkend="architecture"/> to understand the environments where
|
||||
Hibernate can be used.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Have a look at 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>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
FAQs are answered on the Hibernate website.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Third party demos, examples, and tutorials are linked on the Hibernate
|
||||
website.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The Community Area on the Hibernate website is a good resource for
|
||||
design patterns and various integration solutions (Tomcat, JBoss AS,
|
||||
Struts, EJB, etc.).
|
||||
</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
|
||||
<para>
|
||||
If you have questions, use the user forum linked on the Hibernate website. We also
|
||||
provide a JIRA issue trackings 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.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
|
||||
</preface>
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="querycriteria">
|
||||
<title>Criteria Queries</title>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="queryhql" revision="1">
|
||||
<title>HQL: The Hibernate Query Language</title>
|
||||
|
|
@ -1,4 +1,6 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="querysql" revision="2">
|
||||
<title>Native SQL</title>
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="objectstate">
|
||||
<title>Working with objects</title>
|
||||
|
||||
|
@ -95,30 +98,30 @@ Long generatedId = (Long) sess.save(fritz);]]></programlisting>
|
|||
You may also use <literal>persist()</literal> instead of <literal>save()</literal>,
|
||||
with the semantics defined in the EJB3 early draft.
|
||||
</para>
|
||||
|
||||
<itemizedlist spacing="compact">
|
||||
<listitem>
|
||||
<para>
|
||||
<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.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<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.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<itemizedlist spacing="compact">
|
||||
<listitem>
|
||||
<para>
|
||||
<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.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<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.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
|
||||
<para>
|
||||
Alternatively, you may assign the identifier using an overloaded version
|
||||
of <literal>save()</literal>.
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="toolsetguide" revision="2">
|
||||
<title>Toolset Guide</title>
|
||||
|
||||
|
@ -100,7 +103,7 @@
|
|||
</para>
|
||||
|
||||
<programlisting><![CDATA[<many-to-one name="org" column="orgId" unique-key="OrgEmployeeId"/>
|
||||
<property name="employeeId" unique-key="OrgEmployeeId"/>]]></programlisting>
|
||||
<property name="employeeId" unique-key="OrgEmployee"/>]]></programlisting>
|
||||
|
||||
<para>
|
||||
An <literal>index</literal> attribute specifies the name of an index that
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="transactions" revision="2">
|
||||
<title>Transactions And Concurrency</title>
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY mdash "-">
|
||||
]>
|
||||
|
||||
<chapter id="tutorial">
|
||||
<title>Introduction to Hibernate</title>
|
||||
|
||||
|
@ -1471,7 +1476,7 @@ out.close();]]></programlisting>
|
|||
<programlisting><![CDATA[<target name="war" depends="compile">
|
||||
<war destfile="hibernate-tutorial.war" webxml="web.xml">
|
||||
<lib dir="${librarydir}">
|
||||
<exclude name="servlet.jar"/>
|
||||
<exclude name="jsdk*.jar"/>
|
||||
</lib>
|
||||
|
||||
<classes dir="${targetdir}"/>
|
||||
|
@ -1503,9 +1508,8 @@ out.close();]]></programlisting>
|
|||
|
||||
<para>
|
||||
Before you compile and deploy the web application, note that an additional library
|
||||
is required: <literal>servlet.jar</literal>. This is the Java Servlet Development Kit,
|
||||
if you don't have this library already, get it from the
|
||||
<ulink url="http://java.sun.com/products/servlet/archive.html">Sun website</ulink> and copy it to
|
||||
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.
|
||||
</para>
|
|
@ -1,3 +1,6 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<chapter id="xml">
|
||||
<title>XML Mapping</title>
|
||||
|
||||
|
@ -252,7 +255,7 @@ List results = dom4jSession
|
|||
for ( int i=0; i<results.size(); i++ ) {
|
||||
//add the customer data to the XML document
|
||||
Element customer = (Element) results.get(i);
|
||||
doc.getRootElement().add(customer);
|
||||
doc.add(customer);
|
||||
}
|
||||
|
||||
tx.commit();
|
|
@ -0,0 +1,52 @@
|
|||
<?xml version='1.0'?>
|
||||
<!--
|
||||
~ Copyright (c) 2007, Red Hat Middleware, LLC. All rights reserved.
|
||||
~
|
||||
~ 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
|
||||
~ Lesser General Public License, v. 2.1. This program is distributed in the
|
||||
~ hope that it will be useful, but WITHOUT A WARRANTY; without even the implied
|
||||
~ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
~ Lesser General Public License for more details. You should have received a
|
||||
~ copy of the GNU Lesser General Public License, v.2.1 along with this
|
||||
~ distribution; if not, write to the Free Software Foundation, Inc.,
|
||||
~ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
~
|
||||
~ Red Hat Author(s): Steve Ebersole
|
||||
-->
|
||||
<!DOCTYPE legalnotice PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||||
|
||||
<legalnotice id="Legal_Notice">
|
||||
<title>Legal Notice</title>
|
||||
<para>
|
||||
<address>
|
||||
<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>
|
||||
</address>
|
||||
</para>
|
||||
<para>
|
||||
Copyright <trademark class="copyright"></trademark> 2007 by Red Hat, Inc. This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, V1.0 or later (the latest version is presently available at <ulink url="http://www.opencontent.org/openpub/">http://www.opencontent.org/openpub/</ulink>).
|
||||
</para>
|
||||
<para>
|
||||
Distribution of substantively modified versions of this document is prohibited without the explicit permission of the copyright holder.
|
||||
</para>
|
||||
<para>
|
||||
Distribution of the work or derivative of the work in any standard (paper) book form for commercial purposes is prohibited unless prior permission is obtained from the copyright holder.
|
||||
</para>
|
||||
<para>
|
||||
Red Hat and the Red Hat "Shadow Man" logo are registered trademarks of Red Hat, Inc. in the United States and other countries.
|
||||
</para>
|
||||
<para>
|
||||
All other trademarks referenced herein are the property of their respective owners.
|
||||
</para>
|
||||
<para>
|
||||
The GPG fingerprint of the security@redhat.com key is:
|
||||
</para>
|
||||
<para>
|
||||
CA 20 86 86 2B D6 9D FC 65 F6 EC C4 21 91 80 CD DB 42 A6 0E
|
||||
</para>
|
||||
</legalnotice>
|
|
@ -1,183 +0,0 @@
|
|||
<?xml version='1.0' encoding="iso-8859-1"?>
|
||||
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3CR3//EN"
|
||||
"../support/docbook-dtd/docbookx.dtd"
|
||||
[
|
||||
<!ENTITY tutorial SYSTEM "modules/tutorial.xml">
|
||||
<!ENTITY architecture SYSTEM "modules/architecture.xml">
|
||||
<!ENTITY configuration SYSTEM "modules/configuration.xml">
|
||||
<!ENTITY persistent-classes SYSTEM "modules/persistent_classes.xml">
|
||||
<!ENTITY basic-mapping SYSTEM "modules/basic_mapping.xml">
|
||||
<!ENTITY collection-mapping SYSTEM "modules/collection_mapping.xml">
|
||||
<!ENTITY association-mapping SYSTEM "modules/association_mapping.xml">
|
||||
<!ENTITY component-mapping SYSTEM "modules/component_mapping.xml">
|
||||
<!ENTITY inheritance-mapping SYSTEM "modules/inheritance_mapping.xml">
|
||||
<!ENTITY session-api SYSTEM "modules/session_api.xml">
|
||||
<!ENTITY transactions SYSTEM "modules/transactions.xml">
|
||||
<!ENTITY events SYSTEM "modules/events.xml">
|
||||
<!ENTITY batch SYSTEM "modules/batch.xml">
|
||||
<!ENTITY query-hql SYSTEM "modules/query_hql.xml">
|
||||
<!ENTITY query-criteria SYSTEM "modules/query_criteria.xml">
|
||||
<!ENTITY query-sql SYSTEM "modules/query_sql.xml">
|
||||
<!ENTITY filters SYSTEM "modules/filters.xml">
|
||||
<!ENTITY xml SYSTEM "modules/xml.xml">
|
||||
<!ENTITY performance SYSTEM "modules/performance.xml">
|
||||
<!ENTITY toolset-guide SYSTEM "modules/toolset_guide.xml">
|
||||
<!ENTITY example-parentchild SYSTEM "modules/example_parentchild.xml">
|
||||
<!ENTITY example-weblog SYSTEM "modules/example_weblog.xml">
|
||||
<!ENTITY example-mappings SYSTEM "modules/example_mappings.xml">
|
||||
<!ENTITY best-practices SYSTEM "modules/best_practices.xml">
|
||||
]>
|
||||
|
||||
<book lang="en">
|
||||
|
||||
<bookinfo>
|
||||
<title>HIBERNATE - Relational Persistence for Idiomatic Java</title>
|
||||
<subtitle>Hibernate Reference Documentation</subtitle>
|
||||
<releaseinfo>3.2 cr3</releaseinfo>
|
||||
</bookinfo>
|
||||
|
||||
<toc/>
|
||||
|
||||
<preface id="preface" revision="2">
|
||||
<title>Preface</title>
|
||||
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
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 and can significantly reduce development time otherwise
|
||||
spent with manual data handling in SQL and JDBC.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Hibernates 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.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If you are new to Hibernate and Object/Relational Mapping or even Java,
|
||||
please follow these steps:
|
||||
</para>
|
||||
|
||||
<orderedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Read <xref linkend="architecture"/> to understand the environments where
|
||||
Hibernate can be used.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Have a look at 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>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
FAQs are answered on the Hibernate website.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Third party demos, examples, and tutorials are linked on the Hibernate
|
||||
website.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The Community Area on the Hibernate website is a good resource for
|
||||
design patterns and various integration solutions (Tomcat, JBoss AS,
|
||||
Struts, EJB, etc.).
|
||||
</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
|
||||
<para>
|
||||
If you have questions, use the user forum linked on the Hibernate website. We also
|
||||
provide a JIRA issue trackings 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.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
|
||||
</preface>
|
||||
|
||||
&tutorial;
|
||||
|
||||
&architecture;
|
||||
|
||||
&configuration;
|
||||
|
||||
&persistent-classes;
|
||||
|
||||
&basic-mapping;
|
||||
&collection-mapping;
|
||||
&association-mapping;
|
||||
&component-mapping;
|
||||
&inheritance-mapping;
|
||||
|
||||
&session-api;
|
||||
&transactions;
|
||||
&events;
|
||||
&batch;
|
||||
|
||||
&query-hql;
|
||||
&query-criteria;
|
||||
&query-sql;
|
||||
&filters;
|
||||
&xml;
|
||||
|
||||
&performance;
|
||||
|
||||
&toolset-guide;
|
||||
|
||||
&example-parentchild;
|
||||
&example-weblog;
|
||||
&example-mappings;
|
||||
|
||||
&best-practices;
|
||||
|
||||
</book>
|
||||
|
Loading…
Reference in New Issue