Hirdetés
- Luxuspóráz: okosláncot akasztana a nyakadba az Apple
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Honor Magic6 Pro - kör közepén számok
- A Nothing történelmet emleget, közben új logót mutogat
- Három operációs rendszert kínál a NexPhone
- OnePlus: Settle Down, nem megyünk sehova
- Samsung Galaxy A52s 5G - jó S-tehetség
- Megjöttek Magyarországra a Redmi Note 15-ök, január 22-től ennyiért kaphatók
- iPhone topik
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
Új hozzászólás Aktív témák
-
floatr
veterán
válasz
Tothg86
#12059
üzenetére
Valahogy így:
@Embeddable
public class AccountId {
private String accountNumber;
private String accountType;
...
}
@Entity
public class Account {
@EmbeddedId
@AttributeOverrides({
@AttributeOverride(name="accountNumber", column=@Column(name="account_number")),
@AttributeOverride(name="accountType", column=@Column(name="account_type"))
})
private AccountId id;
...
}az @AttributeOverrides szekciót azért tettem bele, mert ezzel pontosan el tudod nevezni a DB mezőket. A hibernatenek van olyan NamingStrategy-je (jpa/component-path), hogy hajlamos elécsapni a generált neveknek prefixként azt, hogy "id_"
-
floatr
veterán
válasz
Tothg86
#12057
üzenetére
Ebben a cikkben leírnak két lehetőséget, de én is használok több munkahelyi projekten összetett kulcsot. Az EmbeddedId-t javaslom, de pár dolgot nem árt észben tartani.
Az ID-t így te adod meg, nem a hibernate generálja. Emiatt egy új rekord mentésénél (save/saveOrUpdate) a hibernate egy selectet fog kiadni, hogy leellenőrizze, van-e már azzal a kulccsal adat a DB-ben. Ezt ki lehet kerülni mondjuk egy EntityManager.persist(...) hívással egy custom repo implementációban, ha te tudod garantálni a PK egyediségét. Ha sok adatot importálsz, problémát tud okozni.
Az ilyen táblák általában kapcsoló/kapcsolatleíró táblák, és az összetett kulcs elemei külső kulcsok (FK), amik más táblákra mutatnak. Ilyenkor a hibernate csak trükközve tudja leírni a relációt másodlagos mappeléssel, vagy a kulcsban mappelt relációval, bár nem mindig van szükség arra, hogy össze tudj kapcsolni kódban is két objektumot. -
floatr
veterán
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Milyen légkondit a lakásba?
- AMD vs. INTEL vs. NVIDIA
- GeForce RTX 5080-nak álcázott 5060-at kapott egy pórul járt vásárló
- Napelem
- Kegyvesztett lehet a Radeon termékskála középső tagja
- Proxmox VE
- Végre hivatalos: májusban jön a Forza Horizon 6
- Sütés, főzés és konyhai praktikák
- Luxuspóráz: okosláncot akasztana a nyakadba az Apple
- BestBuy ruhás topik
- További aktív témák...
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
- Dell Latitude 7490 14" FHD IPS, i5, 16GB RAM, SSD, jó akku, számla, 6 hó gar
- HP EliteBook 840 G7 i5-10210U 16GB 512GB FHD 400nit 1 év garancia
- Új Asus Vivobook S16 Flip 2in1 WUXGA X360 Touch i9-13900H 14mag 16GB 1TB SSD Intel Iris XE Garancia
- Limitált darabszám! Apple Mac Studio M2 Ultra 24 magos CPU, 60 magos GPU, 64GB RAM, 1024GB SSD
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


