In the object-oriented world of Java development, Java objects are said to persist against a data store. In other words, the objects that make up your Java application save their data to a relational database so that data may be referenced at a later time. The approach you take to mapping your Java objects to the data store is called a persistence model .
These days, Java programmers have many persistence models from which to choose. In this section, we look at many of the most popular persistence models, including:
EJB, both container-managed and bean-managed
Java Data Objects
Third-party tools such as Hibernate and Castor
Custom persistence models