Proste pytanie:
W tym przykładzie muszę pobrać wszystkie obiekty, ale te obiekty muszą mieć odrębne pola msgFrom.
Gdy używamHQL: Jak wybrać wszystkie podmioty odrębne według niektórych kolumn?
List<Message> list = getHibernateTemplate().find("select distinct m.msgFrom from Message m WHERE msgTo = ? AND msgCheck = 0", dinc);
mam następny błąd:
java.lang.ClassCastException: java.lang.Integer cannot be cast to com.example.model.Message
Przypuszczam, że to dlatego, Hibernate pobiera tylko jedną kolumnę, ale muszę się obiektu, a nie kolumny.
Jak mogę to zrobić?
myślę, że mogę po prostu przewinąć przecinkiem, tj
List<Message> list = getHibernateTemplate().find("select distinct m.msgFrom, m.To, m.datetime, .......... from Message m WHERE msgTo = ? AND msgCheck = 0", dinc);
ale co jeśli mam więcej niż 20 pól tutaj? Czy istnieje proste rozwiązanie?
Dzięki!
Wielkie dzięki, to naprawdę działa !!!! – gennad
Ale czy są jakieś przykłady, jak to zrobić za pomocą API Criteria? – gennad
W jaki sposób interfejs API Criteria tworzy dynamiczne zapytania i redukuje awarie w czasie wykonywania - http://www.ibm.com/developerworks/java/library/j-typesafejpa/ –