je/docs/GettingStartedGuide/inventoryclass.html

149 lines
4.7 KiB
HTML
Raw Permalink Normal View History

2021-06-06 17:46:45 +00:00
<?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>Inventory.java</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="Getting Started with Berkeley DB Java Edition" />
<link rel="up" href="dpl_example.html" title="Chapter 6. A DPL Example" />
<link rel="prev" href="dpl_example.html" title="Chapter 6. A DPL Example" />
<link rel="next" href="mydbenv-persist.html" title="MyDbEnv" />
</head>
<body>
<div xmlns="" class="navheader">
<div class="libver">
<p>Library Version 12.2.7.5</p>
</div>
<table width="100%" summary="Navigation header">
<tr>
<th colspan="3" align="center">Inventory.java</th>
</tr>
<tr>
<td width="20%" align="left"><a accesskey="p" href="dpl_example.html">Prev</a> </td>
<th width="60%" align="center">Chapter 6. A DPL Example</th>
<td width="20%" align="right"> <a accesskey="n" href="mydbenv-persist.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="inventoryclass"></a>Inventory.java</h2>
</div>
</div>
</div>
<p>
Our example's <code class="classname">Inventory</code>
class is much like our <code class="classname">Vendor</code>
class in that it is simply used to encapsulate
data. However, in this case we want to be able
to access objects two different ways: by
product SKU and by product name.
</p>
<p>
In our data set, the product SKU is required to be
unique, so we use that as the primary key. The
product name, however, is not a unique value so we
set this up as a secondary key.
</p>
<p>
The class appears as follows in our example:
</p>
<pre class="programlisting">package persist.gettingStarted;
import com.sleepycat.persist.model.Entity;
import com.sleepycat.persist.model.PrimaryKey;
import static com.sleepycat.persist.model.Relationship.*;
import com.sleepycat.persist.model.SecondaryKey;
@Entity
public class Inventory {
// Primary key is sku
@PrimaryKey
private String sku;
// Secondary key is the itemName
@SecondaryKey(relate=MANY_TO_ONE)
private String itemName;
private String category;
private String vendor;
private int vendorInventory;
private float vendorPrice;
public void setSku(String data) {
sku = data;
}
public void setItemName(String data) {
itemName = data;
}
public void setCategory(String data) {
category = data;
}
public void setVendorInventory(int data) {
vendorInventory = data;
}
public void setVendor(String data) {
vendor = data;
}
public void setVendorPrice(float data) {
vendorPrice = data;
}
public String getSku() {
return sku;
}
public String getItemName() {
return itemName;
}
public String getCategory() {
return category;
}
public int getVendorInventory() {
return vendorInventory;
}
public String getVendor() {
return vendor;
}
public float getVendorPrice() {
return vendorPrice;
}
} </pre>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left"><a accesskey="p" href="dpl_example.html">Prev</a> </td>
<td width="20%" align="center">
<a accesskey="u" href="dpl_example.html">Up</a>
</td>
<td width="40%" align="right"> <a accesskey="n" href="mydbenv-persist.html">Next</a></td>
</tr>
<tr>
<td width="40%" align="left" valign="top">Chapter 6. A DPL Example </td>
<td width="20%" align="center">
<a accesskey="h" href="index.html">Home</a>
</td>
<td width="40%" align="right" valign="top"> MyDbEnv</td>
</tr>
</table>
</div>
</body>
</html>