Anda dapat melakukan ini dengan menggunakan tambahan dari Hibernate objek dukungan, tetapi tidak dapat dilakukan menggunakan anotasi :-(.
Dalam contoh Anda, itu akan terlihat seperti ini (banyak hal dihilangkan untuk singkatnya):
<class name="Person" table="persons">
<!-- whatever -->
<database-object>
<create>create index sysuuid on persons ( system, `uuid`(8) )</create>
<drop>drop index sysuuid</drop>
<dialect-scope name="org.hibernate.dialect.MySQL5InnoDBDialect" />
</database-object>
</class>
Saya mohon maaf atas kurangnya jawaban berbasis anotasi :-(. Semoga ini membantu.
CATATAN :Jika Anda mengambil pendekatan ini, ketahuilah bahwa cakupan dialek harus sama dengan tepat . Misalnya, jika konfigurasi Hibernate Anda mengatakan untuk menggunakan MySQL5InnoDBDialect
, maka Anda harus memiliki dialek ini di <dialect-scope>
elemen juga. Menggunakan MySQLDialect
tidak akan berfungsi meskipun itu adalah kelas super dari dialek InnoDB.