Mapping Data Model to Object Model

Visual Paradigm supports Object Relational Mapping (ORM) which maps data model to object model and vice versa. Visual Paradigm helps mapping entities to classes. Source files can then be generated from classes for use in software development. The mapping to object model preserves the data, but also the state, foreign/primary key mapping, difference in data type and business logic. Thus, you are not required to handle those tedious tasks during software development.

Mapping entities to classes

All entities map one-to-one to persistent classes in an object model. Classes that map with entities are represented by the stereotype <<ORM Persistable>>.

Mapping class
Mapping class

In the above example, the Customer entity map one-to-one the Customer class as the Customer instance can store the customer information from the Customer Entity.

Mapping columns to attributes

Since all entities map one-to-one to persistent classes in an object model, columns in turn map to attributes in a one-to-one mapping. Visual Paradigm ignores all specialty columns such as computed columns and foreign key columns.

Mapping columns
Mapping columns

Mapping data type

Column types are automatically mapped to appropriate attribute types. The following table lists out the typical mapping between data model and object model.

Data Model
Object Model
bigint
Long
binary
Byte []
bit
Boolean
blob
Blob
varchar
String
char
Character
char (1)
Character
clob
String
date
Date
decimal
BigDecimal
double
Double
float
Float
integer
Integer
numeric
BigDecimal
real
Float
time
Time
timestamp
Timestamp
tinyint
Byte
smallint Short
varbinary Byte []

Mapping of data types between data and object model

Mapping primary key

As the columns map to attributes in a one-to-one mapping, primary key columns in the entity map to attributes as a part of a class.

Mapping primary key
Mapping primary key

In the example, the primary key of entity Product, ProductID maps to an attribute ProductID of the class Product.

Mapping relationship

Relationship represents the correlation among entities. Each entity of a relationship has a role, called Phrase describing how the entity acts in it. The phrase is attached at the end of a relationship connection line. Visual Paradigm maps the phrase to role name of association in the object model.

Mapping cardinality

Cardinality refers to the number of possible instances of an entity relate to one instance of another entity. The following table shows the syntax to express the Cardinality.

Type of cardinality
Description

Zero or one intance

Zero or more instances

Exactly one instance

One or more instances

Description of cardinalities
Mapping cardinality
Mapping cardinality

In the above example, it shows that a user contains multiple accounts.

Mapping many-to-many relationship

For each many-to-many relationship between entities, Visual Paradigm generates a link entity to form two one-to-many relationships in between. The primary keys of the two entities will automatically migrate to the link entity to form the primary/foreign keys.

Mapping many-to-many relationship
Mapping many-to-many relationship

In the above example, Visual Paradigm generates the link entity once a many-to-many relationship is setup between two entities. To transform the many-to-many relationship, Visual Paradigm maps the many-to-many relationship to many-to-many association.

Mapping Array Table to collection of objects

Visual Paradigm promotes the use of Array Table to allow users retrieve objects in the form of primitive array.

When Visual Paradigm transforms an array table, the array table will map to an attribute with array type modifier.

Mapping Array Table to collection of objects
Mapping Array Table to collection of objects

In the above example, each Contact may have more than one phone numbers, stored in ContactEntry_Phone. The array table of ContactEntry_Phone maps into the phone attribute with array type modifier in the ContactEntry class.

Typical mapping between data model and object model

Object Model
Data Model
data model object model

Typical mapping between data model and object model

Related Resources

The following resources may help you to learn more about the topic discussed in this page.

 
17. Mapping Object Model to Data Model Table of Contents 19. Synchronizing object model and data model
 

Technical Support

Have technical issues or suggestions? Please contact Visual Paradigm Support Team.

Sales Support

Have questions related to registration, licensing or payment? Feel free to contact Visual Paradigm Sales Team.

Discussion Forum

Share your suggestions of opinions at VP Discussion Forum.