Bekerja di Spring, dan menggunakan H2 untuk saat ini.

Jadi, saya memiliki dua kelas/Entitas ini dengan repositori mereka yang berfungsi dengan baik jika saya membuatnya sederhana.

Merek, yang hanya memiliki nama dan harga;

Dan VendingMachine, yang memiliki model dan beberapa properti lainnya;

TAPI saya perlu menerapkan ini:

Mesin Penjual Otomatis yang berbeda menjual Merek yang berbeda, yang mereka miliki stoknya. Merek yang dijualnya ditentukan saat Anda membuat instance kelas.

Jadi ide saya adalah tabel untuk bidang VendingMachines akan terlihat seperti itu:

MODEL////ID/////MAXCAPACITY////MAXBRANDS///BRAND01////BRAND02///BRAND03...

Di mana semua kolom BRAND adalah Merek berbeda yang dijual mesin, ditetapkan pada instantiasinya seperti yang dikatakan sebelumnya. Nilainya akan menjadi Integer.

Ide awal saya adalah mengirim data ini ke @Entity melalui HashMap(Brand, Integer) tetapi saya tidak tahu bagaimana membuatnya berfungsi setelah mencoba memasukkannya ke dalam JpaRepository, atau bahkan jika mungkin dengan cara ini.

Mungkin kehilangan beberapa Anotasi ajaib yang saya tidak tahu.

Terima kasih, semoga pertanyaan saya dijelaskan dengan baik untuk semua orang.

0
Carla Agulló 19 Maret 2020, 19:33

1 menjawab

Jawaban Terbaik

Ekstrak Merek sebagai tabel/entitas baru (baca tentang normalisasi basis data). Dan setelah melakukan hubungan satu-ke-banyak dengan entitas itu (Mesin Penjual dan Merek). akan terlihat seperti itu:

class Brand 
...

@ManyToOne
@JoinColumn(name="machine_id")
private VendingMachines machines;

0
andrew17 20 Maret 2020, 01:01