ďťż
 
Mapowanie w hibernate ďťż
 
Mapowanie w hibernate
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

Mapowanie w hibernate



G - 23-11-2006 01:16
Mapowanie w hibernate
  Witam

Mam proste pytanie (jestem poczatkujacy).
Mam dwie tabelki bazodanowe, tj. uzytkownika i dzial, do ktorego nalezy
uzytkownik.

[Uzytkownik]
- ID int (PK)
- Nazwisko
- Dzial_ID (FK)

[Dzial]
ID int (PK)
Nazwa

Jak zapisac mapowanie takiej relacji w hibernate? Czy relacja one-to-one jest
odpowiednia? Moze ktos podac przyklad

pozdrawiam
G.

--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/





Wojtek - 23-11-2006 01:16

 
..pl> napisał w wiadomości news:eit9i6$n4$1@inews.gazeta.pl...
> Witam
>
> Mam proste pytanie (jestem poczatkujacy).
> Mam dwie tabelki bazodanowe, tj. uzytkownika i dzial, do ktorego nalezy
> uzytkownik.
>
> [Uzytkownik]
> - ID int (PK)
> - Nazwisko
> - Dzial_ID (FK)
>
> [Dzial]
> ID int (PK)
> Nazwa
>
> Jak zapisac mapowanie takiej relacji w hibernate? Czy relacja one-to-one
> jest
> odpowiednia? Moze ktos podac przyklad

No średnio.
Zależy od zależności między tymi encjami.
Jeśli użyutkownik może należeć do kilku działów
i jednoczeście jeden dział może mieć kilku użuytkowników
to masz wtedy many-to-many. Hiber utworzy ci wtedy tabele posrednia.
Pewnie masz one-to-many jedne dział ma wielu użytkowników
a jedne użytkownik należy do jednego tylko działu.
Jak chcesz to zrobic w hiber musisz wiedzieć czy używasz hbm.xml czy
annotations.
W ogóle to bym polecał poczytać też podstawy relacyjnych baz danych
a pozniej dopiero kwestie mapowania ORM.

Pozdrawiam
W




IP - 23-11-2006 01:16

  G napisał(a):
> Witam
>
> Mam proste pytanie (jestem poczatkujacy).
> Mam dwie tabelki bazodanowe, tj. uzytkownika i dzial, do ktorego nalezy
> uzytkownik.
>
> [Uzytkownik]
> - ID int (PK)
> - Nazwisko
> - Dzial_ID (FK)
>
> [Dzial]
> ID int (PK)
> Nazwa
>
> Jak zapisac mapowanie takiej relacji w hibernate? Czy relacja one-to-one jest
> odpowiednia? Moze ktos podac przyklad
>
> pozdrawiam
> G.
>
Przy zalozeniu, ze dzial ma wielu uzytkowniow a uzytkownik nalezy tylko
do jednego dzialu to pliki moglyby wygladac tak:
---

Uzytkownik.java:
package n1.ip;

/**
* @hibernate.class table="Uzytkownicy"
*/
public class Uzytkownik {
private Long id;
private String Nazwisko;

/**
* @hibernate.id generator-class="native" column="uid"
*/
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getNazwisko() {
return Nazwisko;
}
public void setNazwisko(String nazwisko) {
Nazwisko = nazwisko;
}

}

Uzytkownik.hbm.xml:
<hibernate-mapping>
<class
name="n1.ip.Uzytkownik"
table="Uzytkownicy"
>

<id
name="id"
column="uid"
type="java.lang.Long"
>
<generator class="native">
</generator>
</id>

</class>

</hibernate-mapping>

Dzial.java:
package n1.ip;

import java.util.Set;

/**
* @hibernate.class table="dzial"
*/
public class Dzial {
private Long id;
private String nazwa;
private Set uzytkownicy;

/**
* @hibernate.set cascade="all"
* @hibernate.collection-key column="dzial_id"
* @hibernate.collection-one-to-many class="n1.ip.Uzytkownicy"
*/
public Set getUzytkownicy() {
return uzytkownicy;
}
public void setUzytkownicy(Set uzytkownicy) {
this.uzytkownicy = uzytkownicy;
}
/**
* @hibernate.id generator-class="native" column="uid"
*/
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getNazwa() {
return nazwa;
}
public void setNazwa(String nazwa) {
this.nazwa = nazwa;
}

}

Dzial.hbm.xml:
<hibernate-mapping>
<class
name="n1.ip.Dzial"
table="dzial"
>

<id
name="id"
column="uid"
type="java.lang.Long"
>
<generator class="native">
</generator>
</id>

<set
name="uzytkownicy"
lazy="false"
cascade="all"
sort="unsorted"
>

<key
column="dzial_id"
>
</key>

<one-to-many
class="n1.ip.Uzytkownicy"
/>

</set>

</class>

</hibernate-mapping>
---

Uwaga, nie testowne :)
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    =?iso-8859-2?q?=5BD=B3ugie=5D?= javax.transaction.SystemException z hibernate. teoria, klucz obcy jako glowny oraz hibernate bardzo dziwna sprawa z Hibernate i Postgresql hibernate, detached vs persisted Spring + Hibernate + Interceptor Hibernate i XDoclet iBatis a hibernate [tomcat] Mapowanie =?ISO-8859-2?Q?servlet=F3w_w_web=2Exml?= Dostep do mapowan servletow z filtra EJB3 problem z mapowaniem kolumn
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • absolwenci.keep.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com