Geliştirme yaparken başkalarının kodlarını okudum ve ilk kez görme sebebimden dolayı internette anlamını araştırdığım @MappedSuperclass adlı bir not buldum.
Kullanım koşulları:
Bir geliştirme projesi üzerinde çalışırken, genellikle varlık eşleme işlemini bir veritabanı tablosuna kullanırız ve bu aşamada genellikle örtük olarak belirtmemiz gereken birkaç varlık sınıfında,Sayı kimliği, oluşturulan, oluşturulmuş zaman, değiştirilmiş, değiştirilmiş zaman, notlar gibi birkaç yaygın öznitelik vardır。 Bu durumda, bu özellikleri bir ebeveyn sınıf olarak soyutlamayı ve ardından ana sınıfı farklı bir varlık sınıfıyla miras almayı düşünebiliriz.
O zaman@MappedSuperclass açıklama kullanarak, varlık sınıfını veritabanı tablosuna örtük olmayan temel sınıf varlığı olarak ele alabiliriz, ancak onu devralan alt sınıf varlığı, temel sınıf varlığının örtük özniteliklerini otomatik olarak tarar ve alt sınıf varlığının ilgili veritabanı tablosuna ekler.
Kullanım ortamı:
1.@MappedSuperclass açıklamalar, ana sınıfın üzerinde ana sınıfı tanımlamak için kullanılır
2.@MappedSuperclass tanımlanan bir sınıf, tam bir varlık sınıfı olmadığı için veritabanı tablosuna eşlenemeyeceğini gösterir; ancak alt sınıfı tarafından kullanılan veritabanı tablosunda örtük olabilecek özelliklere sahiptir
3.@MappedSuperclass artık @Entity veya @Table notasyonları olamaz.
|