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

  • Bart Baker

    Bart Baker

    1 Aralık 2006
  • New Scientist

    New Scientis

    27 Kasım 2006
  • TheDamnWreckless

    TheDamnWreck

    12 Temmuz 2010