Varlık yerine persistence.xml içinde nasıl allocationSize yapılandırabilirim?

Her bir Varlık içinde yapılandırmak yerine perssitence.xml içine koymak için allocationSize türünde bir "refactor" yapma imkanı var mı?

sahip olmak istemediğim şey:

@SequenceGenerator(name="AGENT_IDAGENT_GENERATOR", sequenceName="AGENT_SEQ", allocationSize=1)

İşte sahip olmayı umduğum şey

    
        
    

Şimdiden teşekkürler

1

2 cevap

Persistence.xml dosyasında bir SessionCustomizer'ı kullanabilir, Session’ın logınin sıralı nesnelerinin üzerine yineleyebilir ve ön bellek büyüklüğünü ayarlayabilirsiniz.

Bir tahsisat boyutu 1, tavsiye edilmez, zayıf performansa sahip olur, varsayılanla daha iyi durumda olabilirsiniz.

1
katma
Evet, SessionCustomizer EclipseLink'e özgüdür, API'ye ve gelişmiş işlevselliğe erişim sağlar
katma yazar James, kaynak
AllocationSize = 1 hakkında anlaştı. Ancak, OP'nin sürekli olmayan bir kimliği olmamalıdır? Kimlikler içindeki 'delikler', sunucu bazı kimlik bloklarının ayrılmasından sonra çökerse meydana gelemez mi? Ve bu arada bir SessionCustomizer nedir? Bu biraz Eclipselink özel bir özellik midir?
katma yazar Piotr Nowicki, kaynak
Teşekkürler james
katma yazar Piotr Nowicki, kaynak

If wanting a JPA solution, then you can't put it in persistence.xml, just use orm.xml

1
katma
Tabii ki, her biri ayrı ayrı belirtilir; JPA spesifikasyonlarına göre, bu özellik için "kalıcılık-birim varsayılanı" yoktur. JPA uygulamalarının kendileri genellikle genel varsayılan değerler sağlar, DataNucleus kesinlikle yapar; ama biz her zaman speklere yapışmayı teşvik ediyoruz.
katma yazar DataNucleus, kaynak
Ama sonra tekrar - her varlığın ayrı bir SekansGeneratorı varsa, orm.xml'deki her SequenceGenerator öğesinde 'allocationSize = 1' olması gerekir, değil mi? Tüm dizi üreteçleri için 'allocationSize için 50 geçersiz kılma varsayılan değeri yok mu?
katma yazar Piotr Nowicki, kaynak
Tamam, açıklama @DataNucleus için teşekkürler; Sadece OP'nin bire bir çözüm istediğini düşündüm.
katma yazar Piotr Nowicki, kaynak