- MWC 2026: Érkezik a 8849 ötödik Tank strapatelefonja
- MWC 2026: Újból érik a szeder az Unihertz kertjében
- Vivo X300s lesz az, amit eddig X300 Maxként emlegettek
- iPhone Ultra néven jöhet az Apple első foldja, nem lesz olcsó mulatság
- Akciófigyelő: 25 000 forintos ajándék jár a Xiaomi Pad 8 tabletek mellé
- Mobil flották
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- MWC 2026: Kezünkben a Vivo V70, megvan a magyar ára is
- Xiaomi 17 Ultra - jó az optikája
- iPhone Ultra néven jöhet az Apple első foldja, nem lesz olcsó mulatság
- Poco F7 – bajnokesélyes
- Azonnali mobilos kérdések órája
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
Ú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?:))
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Mobil flották
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Hardcore café
- Micro Four Thirds
- Garancia kérdés, fogyasztóvédelem
- BestBuy topik
- Elektromos autók - motorok
- Windows 11
- További aktív témák...
- Precision 5570 15.6" FHD+ IPS i7-12700H RTX A1000 32GB 512GB NVMe magyar vbill ujjolv IR kam gar
- Surface 4 - 15" 2496 x 1664 ~2k touch, i7-1185G7, 16GB RAM, SSD, jó akku, számla, 6 hó gar
- Eladó Samsung 860 EVO 2.5 1TB SATA3
- Eladó Samsung SSD 850 EVO SATA III 2.5 inch 500 GB
- E14 Gen7 14" 3K IPS Ultra 7 255H 16GB 512GB NVMe magyar vbill ujjolv IR kam gar
- Samsung Galaxy Book PRO 2 /i7-1260P/16GB/512SSD/AMOLED/13.3/Intel Iris Xe/Gari
- ÚJ Lenovo Yoga 7 - 14" WUXGA OLED - Intel Ultra 5 226V - 16GB - 512GB - Win11 -3 év gari - HUN - PEN
- Acer Predator Helios 18 AI I9 ULTRA 9275HX, 192GB RAM, 2TB SSD, RTX 5080
- Csak kipróbált Mini-Erőmű! Mini-PC Ryzen 7 7840HS 16GB 512GB 1 év garancia
- Targus DOCK423A - USB-C Dual HDMI 4K HUB - 2 x HDMI (120Hz)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


