SORU
5 Mayıs 2010, ÇARŞAMBA


Yan JPQL: Java-Diziler (veya Listeleri, Ayarlar...)?

Bizim veritabanından değerleri küçük ama keyfi bir sayı herhangi bir metin etiketi bir dizi var olan tüm nesneleri yüklemek istiyorum. SQL bu konuda gitmek için en mantıklı yol "" tümcesi. bir yapı olacaktır JPQL için izin verir, ama bana doğrudan, her parametre belirtmeniz gerekir gibi geliyor gibi (: "(: 1, :in2, :in3)").

Bir şekilde bir dizi, ya da yan bir değerleri için içe kıvrık olması gereken bir liste (veya başka bir kap) belirtin var mı?

CEVAP
8 Mayıs 2010, CUMARTESİ


JPA 1.0 için emin değilim ama JPA 2.0 Collection: a iletebilirsiniz

String qlString = "select item from Item item where item.name IN :names"; 
Query q = em.createQuery(qlString, Item.class);

List<String> names = Arrays.asList("foo", "bar");

q.setParameter("names", names);
List<Item> actual = q.getResultList();

assertNotNull(actual);
assertEquals(2, actual.size());

EclipseLİnk ile test edilmiştir. 3.5.1, gerek Uyku ile parantez ile parametre surround:

String qlString = "select item from Item item where item.name IN (:names)";

Ama bu bir hata değildir, Bir önceki örnekteki JPQL sorgusu geçerli JPQL. HHH-5126 bkz.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ben Vivona

    Ben Vivona

    24 Ocak 2010
  • olinerd

    olinerd

    23 AĞUSTOS 2007
  • Whizzpopping

    Whizzpopping

    10 Kasım 2005