İçeriğe geç

Hibernate – @GeneratedValue

@GeneratedValue anotasyonu primary keyin değerinin nasıl arttırılacağını belirttiğimiz anotastyondur.

  • strategy
  • generator

olmak üzere 2 özellik sunar.

4 farklı strategy tipi vardır.

İlki AUTO:

Default olarak AUTO ayarlanmıştır. Yani strateji belirtmeyip, hiçbir şey yazmazsak sanki auto yazmış gibi davranır.

Bu hali ile arttırma görevi Hibernate’e bırakılmış olur ve Hibernate bu değerleri kendisi artırır.

İkinci tipimiz IDENTITY:

Kullanımı en kolay olanıdır ama performans olarak en iyisi değildir. Çünkü her bir insert işlemi için yeni bir değer oluşturur.

Üçüncü ve en performanslı tipimiz SEQUNCE:

Değer artırımı bir sequence üzerinden yapılır. Eğer belirtilmezse Hibernate varsayılan sequence üzerinden artırımı yapar. Özelleştirmek istersek @SequnceGenerator anotasyonu kullanabiliriz.

Son tipimiz TABLE:

Günümüzde artık çok kullanımı yoktur. Sıradaki değeri belirtilen tablodan depolar, burada günceller ve lazım olduğunda yeni değeri alır. Bu da uygulamayı yavaşlatır.

Özelliştirilmek istenirse @TableGenerator anotasyonu kullanılabilir.

Tarih:Hibernate

İlk Yorumu Siz Yapın

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir