kostas trichas
kostas trichas

Reputation: 3013

Object Relational Mapping between a Database and the Domain model

What rules should i follow in order map efficiently entities from my domain model to a database table?

Should database columns be aligned with domain class properties?

For example i have a Database table

Person {(varchar)FirstName, (varchar)LastName, int(age)}

And a Domain class

class Person(){

String firstName;
String lastName;
int age;
}

Upvotes: 0

Views: 273

Answers (1)

Steve Mayne
Steve Mayne

Reputation: 22818

There are many strategies for object-relational mapping. Ultimately you have to represent every piece of persistent data in a field somewhere, so your strategy will work. Other questions you'll have to answer:

1) How are your records keyed? Are you going to have a unique ID field for each class?

2) How will you handle inheritance? If you have a PersonA(Person) class that introduces an additional field, will you create a whole new table for every field in Person + PersonA, or just have a PersonA table for the additional field?

3) How are you planning to construct queries against the database? Are you going to provide some form of object-query mapping?

There are many open source ORMs out there, so unless you're doing this for a research project, I'd advise that you use one of them.

Upvotes: 1

Related Questions