### Java Interface to an Existing Database

To quickly start a new project based on an existing database, CayenneModeler "reverse engineering" functionality is used. Cayenne will create an exact model of the database schema, and extrapolate it to the object layer. DataMaps created during reverse engineering will contain metadata for Java business layer. The names of classes and their properties will be compatible with Java naming conventions. E.g for a table called "USER_TYPE", a class named "UserType" will be created in the mapping.

See the following topics explaining how to reverse engineer a database into a Cayenne model:

- Create New Project
- Create DataNode
- Create New DataMap by reverse engineering database