diff options
| author | Lorry <lorry@roadtrain.codethink.co.uk> | 2012-07-20 20:00:05 +0100 |
|---|---|---|
| committer | Lorry <lorry@roadtrain.codethink.co.uk> | 2012-07-20 20:00:05 +0100 |
| commit | 3ef782d3745ea8f25a3151561a3cfb882190210e (patch) | |
| tree | 86b9c2f5fde051dd0bced99b3fc9f5a3ba08db69 /docs/collections/tutorial/tutorialintroduction.html | |
| download | berkeleydb-3ef782d3745ea8f25a3151561a3cfb882190210e.tar.gz | |
Tarball conversion
Diffstat (limited to 'docs/collections/tutorial/tutorialintroduction.html')
| -rw-r--r-- | docs/collections/tutorial/tutorialintroduction.html | 410 |
1 files changed, 410 insertions, 0 deletions
diff --git a/docs/collections/tutorial/tutorialintroduction.html b/docs/collections/tutorial/tutorialintroduction.html new file mode 100644 index 00000000..1a5fd297 --- /dev/null +++ b/docs/collections/tutorial/tutorialintroduction.html @@ -0,0 +1,410 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> + <head> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> + <title>Tutorial Introduction</title> + <link rel="stylesheet" href="gettingStarted.css" type="text/css" /> + <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /> + <link rel="start" href="index.html" title="Berkeley DB Collections Tutorial" /> + <link rel="up" href="intro.html" title="Chapter 1. Introduction" /> + <link rel="prev" href="developing.html" title="Developing a DB Collections Application" /> + <link rel="next" href="BasicProgram.html" title="Chapter 2. The Basic Program" /> + </head> + <body> + <div xmlns="" class="navheader"> + <div class="libver"> + <p>Library Version 11.2.5.3</p> + </div> + <table width="100%" summary="Navigation header"> + <tr> + <th colspan="3" align="center">Tutorial Introduction</th> + </tr> + <tr> + <td width="20%" align="left"><a accesskey="p" href="developing.html">Prev</a> </td> + <th width="60%" align="center">Chapter 1. + Introduction + </th> + <td width="20%" align="right"> <a accesskey="n" href="BasicProgram.html">Next</a></td> + </tr> + </table> + <hr /> + </div> + <div class="sect1" lang="en" xml:lang="en"> + <div class="titlepage"> + <div> + <div> + <h2 class="title" style="clear: both"><a id="tutorialintroduction"></a>Tutorial Introduction</h2> + </div> + </div> + </div> + <p> + Most of the remainder of this document illustrates the use of the + DB Java Collections API by presenting a tutorial that describes usage of the API. + This tutorial builds a shipment database, a familiar example from classic + database texts. +</p> + <p> + The examples illustrate the following concepts of the DB Java Collections API: +</p> + <div class="itemizedlist"> + <ul type="disc"> + <li> + <p> + Object-to-data <span class="emphasis"><em>bindings</em></span> + </p> + </li> + <li> + <p> + The database <span class="emphasis"><em>environment</em></span> + </p> + </li> + <li> + <p> + <span class="emphasis"><em>Databases</em></span> that contain key/value records + </p> + </li> + <li> + <p> + <span class="emphasis"><em>Secondary index</em></span> databases that contain index keys + </p> + </li> + <li> + <p> + Java <span class="emphasis"><em>collections</em></span> for accessing databases and + indices + </p> + </li> + <li> + <p> + <span class="emphasis"><em>Transactions</em></span> used to commit or undo database + changes + </p> + </li> + </ul> + </div> + <p> + The examples build on each other, but at the same time the + source code for each example stands alone. +</p> + <div class="itemizedlist"> + <ul type="disc"> + <li> + <p> + <a class="xref" href="BasicProgram.html" title="Chapter 2. The Basic Program"> + The Basic Program + </a> + </p> + </li> + <li> + <p> + <a class="xref" href="UsingSecondaries.html" title="Chapter 3. Using Secondary Indices"> + Using Secondary Indices + </a> + </p> + </li> + <li> + <p> + <a class="xref" href="Entity.html" title="Chapter 4. Using Entity Classes"> + Using Entity Classes + </a> + </p> + </li> + <li> + <p> + <a class="xref" href="Tuple.html" title="Chapter 5. Using Tuples"> + Using Tuples + </a> + </p> + </li> + <li> + <p> + <a class="xref" href="SerializableEntity.html" title="Chapter 6. Using Serializable Entities"> + Using Serializable Entities + </a> + </p> + </li> + </ul> + </div> + <p> + The shipment database consists of three database stores: the + part store, the supplier store, and the shipment store. Each store + contains a number of records, and each record consists of a key and + a value. +</p> + <div class="informaltable"> + <table border="1" width="80%"> + <colgroup> + <col /> + <col /> + <col /> + </colgroup> + <thead> + <tr> + <th>Store</th> + <th>Key</th> + <th>Value</th> + </tr> + </thead> + <tbody> + <tr> + <td>Part</td> + <td>Part Number</td> + <td>Name, Color, Weight, City</td> + </tr> + <tr> + <td>Supplier</td> + <td>Supplier Number</td> + <td>Name, Status, City</td> + </tr> + <tr> + <td>Shipment</td> + <td>Part Number, Supplier Number</td> + <td>Quantity</td> + </tr> + </tbody> + </table> + </div> + <p> + In the example programs, Java classes containing the fields + above are defined for the key and value of each store: + <code class="classname">PartKey</code>, + <code class="classname">PartData</code>, + <code class="classname">SupplierKey</code>, + <code class="classname">SupplierData</code>, + <code class="classname">ShipmentKey</code> and <code class="classname">ShipmentData</code>. In + addition, because the Part's Weight field is itself composed of two + fields — the weight value and the unit of measure — it is + represented by a separate <code class="classname">Weight</code> class. These classes will + be defined in the first example program. +</p> + <p> + In general the DB Java Collections API uses bindings to + describe how Java objects are stored. A binding defines the stored + data syntax and the mapping between a Java object and the stored + data. The example programs show how to create different types of + bindings, and explains the characteristics of each type. +</p> + <p> + The following tables show the record values that are used in + all the example programs in the tutorial. + <span> + + </span> +</p> + <div class="informaltable"> + <table border="1" width="80%"> + <colgroup> + <col /> + <col /> + <col /> + <col /> + <col /> + </colgroup> + <thead> + <tr> + <th>Number</th> + <th>Name</th> + <th>Color</th> + <th>Weight</th> + <th>City</th> + </tr> + </thead> + <tbody> + <tr> + <td>P1</td> + <td>Nut</td> + <td>Red</td> + <td>12.0 grams</td> + <td>London</td> + </tr> + <tr> + <td>P2</td> + <td>Bolt</td> + <td>Green</td> + <td>17.0 grams</td> + <td>Paris</td> + </tr> + <tr> + <td>P3</td> + <td>Screw</td> + <td>Blue</td> + <td>17.0 grams</td> + <td>Rome</td> + </tr> + <tr> + <td>P4</td> + <td>Screw</td> + <td>Red</td> + <td>14.0 grams</td> + <td>London</td> + </tr> + <tr> + <td>P5</td> + <td>Cam</td> + <td>Blue</td> + <td>12.0 grams</td> + <td>Paris</td> + </tr> + <tr> + <td>P6</td> + <td>Cog</td> + <td>Red</td> + <td>19.0 grams</td> + <td>London</td> + </tr> + </tbody> + </table> + </div> + <div class="informaltable"> + <table border="1" width="80%"> + <colgroup> + <col /> + <col /> + <col /> + <col /> + </colgroup> + <thead> + <tr> + <th>Number</th> + <th>Name</th> + <th>Status</th> + <th>City</th> + </tr> + </thead> + <tbody> + <tr> + <td>S1</td> + <td>Smith</td> + <td>20</td> + <td>London</td> + </tr> + <tr> + <td>S2</td> + <td>Jones</td> + <td>10</td> + <td>Paris</td> + </tr> + <tr> + <td>S3</td> + <td>Blake</td> + <td>30</td> + <td>Paris</td> + </tr> + <tr> + <td>S4</td> + <td>Clark</td> + <td>20</td> + <td>London</td> + </tr> + <tr> + <td>S5</td> + <td>Adams</td> + <td>30</td> + <td>Athens</td> + </tr> + </tbody> + </table> + </div> + <div class="informaltable"> + <table border="1" width="80%"> + <colgroup> + <col /> + <col /> + <col /> + </colgroup> + <thead> + <tr> + <th>Part Number</th> + <th>Supplier Number</th> + <th>Quantity</th> + </tr> + </thead> + <tbody> + <tr> + <td>P1</td> + <td>S1</td> + <td>300</td> + </tr> + <tr> + <td>P1</td> + <td>S2</td> + <td>300</td> + </tr> + <tr> + <td>P2</td> + <td>S1</td> + <td>200</td> + </tr> + <tr> + <td>P2</td> + <td>S2</td> + <td>400</td> + </tr> + <tr> + <td>P2</td> + <td>S3</td> + <td>200</td> + </tr> + <tr> + <td>P2</td> + <td>S4</td> + <td>200</td> + </tr> + <tr> + <td>P3</td> + <td>S1</td> + <td>400</td> + </tr> + <tr> + <td>P4</td> + <td>S1</td> + <td>200</td> + </tr> + <tr> + <td>P4</td> + <td>S4</td> + <td>300</td> + </tr> + <tr> + <td>P5</td> + <td>S1</td> + <td>100</td> + </tr> + <tr> + <td>P5</td> + <td>S4</td> + <td>400</td> + </tr> + <tr> + <td>P6</td> + <td>S1</td> + <td>100</td> + </tr> + </tbody> + </table> + </div> + </div> + <div class="navfooter"> + <hr /> + <table width="100%" summary="Navigation footer"> + <tr> + <td width="40%" align="left"><a accesskey="p" href="developing.html">Prev</a> </td> + <td width="20%" align="center"> + <a accesskey="u" href="intro.html">Up</a> + </td> + <td width="40%" align="right"> <a accesskey="n" href="BasicProgram.html">Next</a></td> + </tr> + <tr> + <td width="40%" align="left" valign="top">Developing a DB Collections Application </td> + <td width="20%" align="center"> + <a accesskey="h" href="index.html">Home</a> + </td> + <td width="40%" align="right" valign="top"> Chapter 2. + The Basic Program + </td> + </tr> + </table> + </div> + </body> +</html> |
