The jbase package and subpackages contain classes and interfaces for a
simple Java database; the database does not support transactions or optimization
techniques like indexing, supported operations include reading,
appending, updating and removing of elements of a
{@link ch.javasoft.jbase.Table Table}.
The Table is a list-like container for objects of a certain type. Two
implementations exist for tables:
- {@link ch.javasoft.jbase.FixedWidthTable FixedWidthTable} which allows
storage of objects with a fixed byte size; a
{@link ch.javasoft.jbase.FixedWidthMarshaller FixedWidthMarshaller} takes
care of the transformation of an object into bytes and vice versa.
- {@link ch.javasoft.jbase.VariableWidthTable VariableWidthTable} which
allows storage of objects with varying byte size; a simple
{@link ch.javasoft.jbase.EntityMarshaller EntityMarshaller} is responsible
for byte-to-object and object-to-byte transformation. The
VariableWidthTable makes use of multiple
{@link ch.javasoft.jbase.FixedWidthTable fixed width tables} to store the
entities; each entity can be stored or read with at most two file accesses.