DataMapper 1.0
Bobby Woolf, 07/01/2000
The DataMapper is a tool to convert formatted stream data into Java domain objects and vice versa. It is commonly used to read records from a file into Java as objects, and to write similar objects back out to a new file. It is designed to allow developers to easily describe the mappings between the data format and the object model, and will then use those mappings to do all of work.
The DataMapper facilitates exchanging data with legacy applications that do not support newer data transfer technologies like Java object serialization, Corba, and XML. The data is often transferred between applications via a messaging system such as MQSeries from IBM or another that implements the Java Message Service API.
| readme.html | This file |
| doc/cookbook.html | FAQ on using the DataMapper |
| doc/javadoc/index.html | DataMapper Javadocs |
| examples | Examples of how to use the DataMapper |
| lib/dm.jar | The DataMapper classes |
| lib/src.zip | The source code for the DataMapper |
To install the DataMapper:
To get started with using the DataMapper, read the cookbook. It walks through the major features of the DataMapper and the considerations for which ones to use when. Also look at the *Example files in the bw.dm.test package, also included in the examples directory.
| DataMapper Cookbook | A cookbook for using the DataMapper. |
| DataMapper Javadocs | Documentation of the DataMapper API generated by the javadoc tool. |
The DataMapper is designed to be highly extensible. It is pattern dense, so to understand its implementation, it helps to be familiar with the patterns in Design Patterns: Elements of Reusable Object-Oriented Software by Gamma, Helm, Johnson, and Vlissides.
There are numerous aspects of the DataMapper one might wish to extend. The meat of the DataMapper is implemented in bw.dm.impl; these classes aren't really ment to be used directly, but are public so that they can easily be subclassed.
Extensions clients frequently make to the DataMapper include:
In short, describing the DataMapper's design, implementation, patterns, and how to extend it would require a whole new set of documentation that hasn't been writen yet. In the meantime, this information can be inferred from the Javadocs, by reverse engineering the code into a design/UML tool, and by browsing the code.