aspose file tools*
The moose likes Object Relational Mapping and the fly likes 1..n and 0..n mapping Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Java 8 in Action this week in the Java 8 forum!
JavaRanch » Java Forums » Databases » Object Relational Mapping
Bookmark "1..n and 0..n mapping" Watch "1..n and 0..n mapping" New topic
Author

1..n and 0..n mapping

Ismael Upright
Ranch Hand

Joined: Feb 15, 2007
Posts: 166
Hello,

I have some 1..n relations and some 0..n relations between tables in my data model.

Is there a mechanism in JPA that allows to map such relations?





First example: table Person and table ID Card.

One Person can have many ID Cards, if he/she has more than one nationality.
One Person MUST have at leat one ID Card.
An ID Card MUST belong to exactly one Person - it cannot have more than one owner and cannot exist without owner at all.


Additlonally, I want it to implement in a way that ID Card 'knows' who owns it, and Person doesn't 'know' about ID Card.


So the relation is: Person (1) ------------------> (1..n) IDCard





Second example: table Person and table Passport.


The only difference is that a Person doesn't have to have a Passport.


So the relation is: Person (1) ------------------> (0..n) IDCard



How to make such distinction between 1..n and 0..n using JPA?
Cameron Wallace McKenzie
author and cow tipper
Saloon Keeper

Joined: Aug 26, 2006
Posts: 4968
    
    1

So, from a Java perspective, of object A must have an object B, you can enforce that through a constructor:



You can do something like that. You can map the association using JPA annotations:



Mapping 1..n or One to Many Relationships with Hibernate

You can also add cascadeType options to deal with deletes, so associated objects get deleted all at once. And of course, most databases supply other options you can do at the admin level to enforce relationships between tables.

So, you have LOTS of options!

-Cameron McKenzie
Ismael Upright
Ranch Hand

Joined: Feb 15, 2007
Posts: 166
Thanks
 
jQuery in Action, 2nd edition
 
subject: 1..n and 0..n mapping
 
Similar Threads
Would like advise mapping Hibernate objects
CMR Relations one-to-many
Partial model - update. How to update partial object relations?
db desgin question: how to improve the relationship in this schema
ManyToMany with extra attribute in JPA