Hirdetés
- Lassacskán fenyőfát állítanak a hardverek
- Tudjuk, de nem tesszük: a magyarok többsége nem törődik adatai védelmével
- Mesébe illő csodakábelt tervezett a GeForce-ok leégése ellen a Segotep?
- Irodát kért, de gyárat kapott Elon Musk a Samsungtól
- Nyílt forráskódú lett a legegyszerűbben használható AI tartalomgeneráló
- Rogyásig pakolható a Cooler Master Cosmos szériás csúcsháza
- Milyen házat vegyek?
- A fával keres kapcsolatot a Gigabyte új alaplapja
- HiFi műszaki szemmel - sztereó hangrendszerek
- Mesébe illő csodakábelt tervezett a GeForce-ok leégése ellen a Segotep?
- 5.1, 7.1 és gamer fejhallgatók
- VR topik
- MILC felhasználók szakmai topikja
- Gigabyte alaplap topik
- Lenovo Legion Go: a legsokoldalúbb kézikonzol
Ú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?:))
- Rogyásig pakolható a Cooler Master Cosmos szériás csúcsháza
- Elemlámpa, zseblámpa
- Milyen házat vegyek?
- A fával keres kapcsolatot a Gigabyte új alaplapja
- HiFi műszaki szemmel - sztereó hangrendszerek
- Casco és kötelező gépjármű felelősségbiztosítás
- A fociról könnyedén, egy baráti társaságban
- Fizetős szoftverek ingyen vagy kedvezményesen
- PlayStation 5
- Genshin Impact (PC, PS4, Android, iOS)
- További aktív témák...
- Nálam már kapható a jelenlegi leggyorsabb brutál notebook: Samsung Galaxy Book 5 Edge 5G!
- Sony WF-G700 White- INZONE Buds vezeték nélküli zajszűrős(ANC) fülhallgató - Fekete, 2 év gari
- High-End AMD Ryzen 9 9950X3D, ASRock X870E Taichi + Dell AlienWare AW2725DF + ajándékok
- 24,5"-os FullHD Dell Alienware gamer monitor újszerű állapotban AW2518HF
- GAMER LAPTOP - ASUS Rog Zephyrus M16 / Intel i7 12700 / RTX 3060 6gb / 24gb DDR5 / 2TB ssd
- ÁRGARANCIA!Épített KomPhone Ryzen 5 5600X 16/32/64GB RAM RTX 5060 8GB GAMER PC termékbeszámítással
- GYÖNYÖRŰ iPhone 12 Mini 128GB Green-1 ÉV GARANCIA -Kártyafüggetlen, MS4169, 100% Akksi
- Honor 200 Lite / 8/256GB/ Kártyafügetlen / 12Hó Garancia
- AKCIÓ! Apple Mac Studio M1 MAX 2022 32GB 512GB számítógép garanciával, hibátlan működéssel
- Keresünk Galaxy S23/S23+/S23 Ultra/S23 FE
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: ATW Internet Kft.
Város: Budapest


