Sejujurnya, Anda sudah cukup mendalami masalah ini di sini @Zon. Tidak yakin apakah saya dapat membantu Anda dengan cukup, tetapi saya akan mencobanya.
Poin penelitian 1 jelas merupakan solusi paling pragmatis untuk membuat segala sesuatunya berfungsi saat ini. Jika Anda akan melihat "inefisiensi" dari String
dibandingkan dengan UUID
adalah sesuatu yang saya akan sulit ditekan tentang. Jadi jika ini adalah mutlak tidak tidak, penyelidikan harus dilanjutkan. Jika tidak, itu tentu saja menyelesaikan pekerjaan.
Ketika datang ke poin penelitian 2 dan 3, saya yakin Anda mengalami masalah dengan dialek yang digunakan untuk PostgreSQL, meskipun saya tidak 100% yakin di sini. Terutama PostgreSQL mengacungkan beberapa jenis "luar biasa", tetapi ini tidak selalu bekerja secara otomatis di semua skenario. Saya mendasarkan "tebakan" saya di sini untuk memaksa PostgreSQL menggunakan BYTEA
bukannya OID
jika Anda ingin menurunkan TOAST
Postgres' kemampuan. Ini menjadi sangat berguna jika Anda memilih untuk menggunakan Postgres untuk toko acara Anda dan ingin dapat benar-benar melihat konten acara. Posting blog ini misalnya menentukan bagaimana menangani hal ini. Lebih penting lagi, blog
ini posting menunjukkan bagaimana Anda bisa misalnya menyesuaikan dialek yang digunakan. Mungkin itu bisa membantu Anda dalam solusi 2 dan 3?
Opsi 4 dalam hal ini harus menjadi solusi paling logis untuk diambil. Tapi saya mengumpulkan dari tanggapan Anda bahwa Anda tidak membuatnya bekerja saat ini. Saat menyisir Axon dengan Spring, SpringAxonAutoConfigurer
(dari mana Anda merujuk registerAggregateBeanDefinitions
metode dari saya percaya) akan secara otomatis memeriksa kacang yang dapat dikonfigurasi pada Agregat Anda. Ia melakukannya berdasarkan bidang yang ditentukan dalam @Aggregate
(yaitu anotasi stereotip Pegas Axon). Lebih khusus lagi, Anda dapat menggunakan repository
bidang di @Aggregate
untuk menentukan nama kacang dari repositori yang ingin Anda gunakan.
Dengan demikian, Anda hanya dapat memberikan GenericJpaRepository
kacang dengan identifierConverter
yang diinginkan . Nama kacang itu dapat ditentukan di @Aggregate
anotasi pada MyAggregate
. Anda , sehingga konfigurasi otomatis Axon dapat mengambilnya dengan benar. Semoga ini bisa membantu Anda!