EclipseLink – 07 – Relationship – 01

Merhaba Arkadaslar
Bu bolumde Relationship/Iliski kavramini daha iyi anlayabilmek icin su kavramlari inceleyecegiz.

  • Role
  • Directionality
  • Cardinality
  • Ordinality/Optionality

Relationship/iliskiden kastimiz tabi ki Entity Relationship’tir.

relationship

Role

Bir iliski/relationship dusundugumuzde 2 tarafin varligindan soz edebiliriz. Her iliskide/ relationship birbirleriyle ilgili 2 tane Entity vardir. Her bir Entity bu iliskide bir rol oynar.

Ornek olarak Employee ve Deparment olmak uzere 2 tane Entity olsun. Employee , departmanda /ofiste calisma rolunu oynar ,Department ise iscilerin calistigi yer rolunu oynar. Bu ve benzeri ornekler cogaltilabilir.

Directionality

Bir iliskide bir Entity’in diger Entity’e isaret etmesi/gostermesi/pointer kavramidir. Eger bu 2 Entity’den sadece bir tanesi digerini gosteriyorsa bu durumda iliski unidirectional ‘dir. Eger ikiside birbirlerini gosteriyorsa bu durumda iliski bidirectional ‘dir.

Ornegin Employee ve Department Entity’leri arasinda iliski bidirectional olsun. Bunu su sekilde ifade edebiliriz ;

bidirectional

Benzer sekilde Employee ve Address Entity’leri arasinda unidirectional iliski olsun ve Employee Entity’si Address Entity’sini isaret etsin/gostersin. Bunu su sekilde ifade edebiliriz.

unidirectional

Directionality kavramini iliskiyi tanimlamak icin kullanmaktayiz. Tum bidirectional iliskiler bir cift unidirectional iliskiden olusur.

Cardinality

Cardinality in konumuzla iliskili olarak kelime anlami “nicelik”tir.

Dusunecek olursak bir departmanda birden fazla isci calisacaktir, fakat bir isci sadece bir tek departmana bagli olarak calisacaktir.

Bir baska ornek olarak Employee-Project iliskisi dusundugumuzde. Bir isci birden fazla projede calisabilir , benzer sekilde bir projede birden fazla calisan olabilir.

Employee – Department iliskini dusundugumuzde ManyToOne (birden fazla isci – bir departman) Cardinality durumu soz konusu olacaktir.
Employee – Project iliskisini dusundugumuzde ManyToMany (birden fazla isci – birden fazla proje) Cardinality durumu soz konusu olacaktir.

Diagramda many tarafini yildiz * ile , one tarafini 1(bir) ile ifade edebiliriz.

manytoone relationship
Bidirectional kavrami Directionality kavramina , ManyToOne ise Cardinality kavramina karsilik gelir.

Ordinality/Optionality

Ordinality/ Optionality kavrami bir iliskide, iliskili/associated Entity’in zorunlu/mandatory ya da secimlik/optional olup olmamasi durumudur.
Ornek olarak User ve BillingInfo adinda birbiriyle iliskili 2 tane Entity olsun. Her User icin bir fatura bilgisi (BillingInfo) olmak zorunda degildir, bu nedenle iliski optional’dir. BillingInfo her zaman User’a baglidir.

Yazimi burada sonlandiriyorum.
Herkese Bol Javali Gunler dilerim.
Be an oracle man , import java.*;
Levent Erguder
OCP, Java SE 6 Programmer
OCE, Java EE 6 Web Component Developer

Print Friendly, PDF & Email

Leave a Reply

Your email address will not be published. Required fields are marked *