SORU
4 Ocak 2010, PAZARTESİ


() JPA getSingleResult veya null

Eğer yoksa veya mevcut güncelleme yok ne zaman bir Varlık ekleyen insertOrUpdate bir yöntem var. Bunu sağlamak için, null eklerseniz update döndü sonra findByİdAndForeignKey, yapmak zorundayım. Sorun ne varsa kontrol edebilirim? GetSingleResult çalıştım. Ama eğer bir özel durum atar

public Profile findByUserNameAndPropertyName(String userName, String propertyName) {
    String namedQuery = Profile.class.getSimpleName()   ".findByUserNameAndPropertyName";
    Query query = entityManager.createNamedQuery(namedQuery);
    query.setParameter("name", userName);
    query.setParameter("propName", propertyName);
    Object result = query.getSingleResult();
    if(result==null)return null;
    return (Profile)result;
}

"getSingleResult" bir istisna atar. ama

Teşekkürler

CEVAP
4 Ocak 2010, PAZARTESİ


Bir özel durum üretiliyor getSingleResult() bulunması mümkün değildir gösterir. Şahsen API bu tür dayanamıyorum. Sahte durum, hiçbir gerçek yararı için kullanma zorlar. Sadece bir kodu try-catch bloğu sarmak için.

Alternatif olarak bir liste için sorgu ve onun boş olmadığını görebilirsiniz. Bu bir istisna değil. Aslında beri bunu yaptığını bir birincil anahtar arama teknik olarak var olabilir birden çok sonuçları (bile bir, iki veya arada senin yabancı anahtarları veya kısıtlamaları yapan bu imkansız uygulamada) yani bu muhtemelen daha uygun bir çözüm.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DavideoDesign

    DavideoDesig

    24 NİSAN 2006
  • LaKe Lightroom Tutorials

    LaKe Lightro

    22 Temmuz 2014
  • Shylo Sharity

    Shylo Sharit

    27 EKİM 2011