Shortened titles. ToC looks better now.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<chapter id="cross-store">
|
||||
<title>Cross-store persistence with a graph database</title>
|
||||
<title>Cross-store persistence</title>
|
||||
<para>The Spring Data Graph project support cross-store persistence which allows parts of the data mode to be stored in a traditional
|
||||
JPA datastore (RDBMS) and other parts of the data model (even partial entites, that is some properties or relationships) in a graph
|
||||
store.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<section>
|
||||
<title>Overview of the AspectJ support</title>
|
||||
<title>AspectJ support</title>
|
||||
<para>
|
||||
Behind the scenes, Spring Data Graph leverages <ulink url="http://www.eclipse.org/aspectj/">AspectJ</ulink>
|
||||
aspects to modify the behavior of simple annotated POJO entities
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<section>
|
||||
<title>Session handling - attached and detached entities</title>
|
||||
<title>Detached entities</title>
|
||||
<para>
|
||||
By default newly created node entities are in a detached state. When <code>persist()</code> is called on the
|
||||
entity it is attached to the graph store and its properties and relationships are persisted as well. Changing
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<section>
|
||||
<title>Bean Validation - JSR-303</title>
|
||||
<title>Bean validation (JSR-303)</title>
|
||||
<para>
|
||||
Spring Data Graph supports property based validation support. So, whenever a property is changed, it is
|
||||
checked against the annotated constraints (.e.g @Min, @Max, @Size, etc).
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<section id="reference_programming-model:indexing">
|
||||
<section id="reference:programming-model:indexing">
|
||||
<title>Indexing</title>
|
||||
|
||||
<para>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<section id="reference:programming-model:introduced-methods">
|
||||
<title>Methods added to entity classes</title>
|
||||
<title>Introduced methods</title>
|
||||
<para>
|
||||
The node and relationship aspects introduce (via AspectJ ITD - inter type declaration) several
|
||||
methods to the entities.
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<section id="reference:programming-model:annotations">
|
||||
<title>Annotations define POJO node entities</title>
|
||||
<para>Entities are declared using the <code>@NodeEntity</code> annotation.
|
||||
Relationship entities use the <code>@RelationshipEntity</code> annotation.
|
||||
<title>Defining node entities</title>
|
||||
<para>
|
||||
Node entities are declared using the <code>@NodeEntity</code> annotation. Relationship entities use
|
||||
the <code>@RelationshipEntity</code> annotation.
|
||||
</para>
|
||||
<section>
|
||||
<title>@NodeEntity: The basic building block</title>
|
||||
@@ -61,7 +62,7 @@ String title;
|
||||
<para>
|
||||
Numerical values are indexed as such by default, allowing for range queries.
|
||||
Fulltext indexing is also possible by setting the <code>fulltext</code> attribute to true. For details see
|
||||
the indexing section <xref linkend="reference_programming-model:indexing"/>.
|
||||
the indexing section <xref linkend="reference:programming-model:indexing"/>.
|
||||
</para>
|
||||
</section>
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<chapter id="programming-model" xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<title>Programming model for Spring Data Graph</title>
|
||||
<title>Programming model</title>
|
||||
<para>
|
||||
This chapter covers the fundamentals of the programming model behind Spring Data Graph. It discusses the
|
||||
AspectJ features used and the annotations provided by Spring Data Graph and how to use them.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<section>
|
||||
<title>Dynamic typing - Projection to unrelated, fitting types</title>
|
||||
<title>Projecting entities</title>
|
||||
<para>
|
||||
As the underlying data model of a graph database doesn't imply and enforce strict type constraints like a
|
||||
relational model does, it offers much more flexibility on how to model your domain classes and which of
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<section id="reference:programming_model:relationships">
|
||||
<title>Relationships relate node entities</title>
|
||||
<title>Relating node entities</title>
|
||||
<para>
|
||||
Since relationships are first-class citizens in Neo4j, associations between node entities are represented
|
||||
by relationships. In general, relationships are categorized by a type, and start and end nodes (which
|
||||
@@ -9,13 +9,6 @@
|
||||
Spring Data Graph has special support to represent Neo4j relationships as entities too, but it is often
|
||||
not needed.
|
||||
</para>
|
||||
<section>
|
||||
<title>@NodeEntity</title>
|
||||
<para>
|
||||
Any class annotated with @NodeEntity will be backed by a node in the graph. Its fields will, if their
|
||||
types are supported, be persisted as properties to the node for each entity.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<title>@RelatedTo: Connecting node entities</title>
|
||||
<para>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<section>
|
||||
<title>Transactions in Spring Data Graph</title>
|
||||
<title>Transactions</title>
|
||||
<para>
|
||||
Neo4j is a transactional database, only allowing modifications to be performed within transaction
|
||||
boundaries. Reading data does however not require transactions.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<section id="reference:programming-model:typerepresentationstrategy">
|
||||
<title>Storing type information in the graph</title>
|
||||
<title>Entity types stored</title>
|
||||
<para>
|
||||
There are several ways to represent the Java type hierarchy of the data model in the graph. In general, for all
|
||||
node and relationship entities, type information is needed to perform certain repository operations. Some of
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<chapter id="samples">
|
||||
<title>Samples</title>
|
||||
<title>Sample code</title>
|
||||
|
||||
<section id="samples_introduction">
|
||||
<title>Introduction</title>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
||||
<chapter id="setup">
|
||||
<title>Setup required for Spring Data Graph</title>
|
||||
<title>Environment setup</title>
|
||||
<para>To use Spring Data Graph in your application, some setup is required. For building the application the necessary Maven dependencies must be included and
|
||||
for the AspectJ weaving some extensions of the compile goal are necessary. This chapter also discusses the Spring configuration needed to set up
|
||||
Spring Data Graph. Examples for this setup can be found in the <ulink url="http://github.com/SpringSource/spring-data-graph-examples">Spring Data Graph examples</ulink>.
|
||||
|
||||
Reference in New Issue
Block a user