Ambysoft Logo

The Design of an O/R Persistence Framework

This paper presents the design for a robust persistence layer for using relational databases with object-oriented applications. This design reflects my several years of experience building and using such layers in several languages. Issues that are addressed in this paper:

  • Kinds of persistence layers
  • The class-type architecture
  • Requirements for a persistence layer
  • The design of a persistence layer
  • Implementing the persistence layer
  • Buy vs. build
  • Doing a data load
  • Supporting the persistence layer


I hope that you find this white paper useful and I also hope that you help me to improve it by providing me with feedback. What is your organization doing, or hoping to do? If you disagree with anything that I’ve said, think about it first because I don’t like getting flamed, but then email me with your opinions because I want to hear them. If something isn’t well explained or you don’t quite understand it, let me know.


My Other Persistence Writings