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

  • Bokeh

    Bokeh

    9 HAZİRAN 2014
  • Kyletiv7

    Kyletiv7

    28 Mayıs 2007
  • LAHWF

    LAHWF

    5 Kasım 2009