G
Gast
Gast
Hallo,
habe folgendes Problem. Ich arbeite mit Ecplipse auf einer Postgres DB und habe Hibernate als vermittlungsschicht eingesetzt. Da Hibernate mit reinen Objekten arbeitet, wird die groß- und kleinschreibung bei HQL (Hibernate Query Language) berücksichtigt. Habe mich versucht mit diesem Problem zu beschäftigen, und habe auch eine Lösung gefunden. Die Lösung ist eine HQL abfrage mit ilike gestallten. Aber genau da fängt mein Problem an da ich nicht weiß wie diese gestaltet wird.
Meine Methode sieht so aus:
public List<Firma> getFirmaNachSuchwort(String suchwort) {
Transaction tx = session.beginTransaction();
Query q = session.createQuery("from Firma as firma where " +
"firma.name like '%"+ suchwort + "%' or " +
"firma.code like '%"+ suchwort + "%' or " +
"firma.debitorenNr like '%"+ suchwort + "%' and " +
"firma.del=false");
List<Firma> ergebnis = q.list();
tx.commit();
return ergebnis;}
Eine Methode die ich gefunden habe, aber leider nicht funktioniert sieht so aus:
Criteria entryCriteria = session.createCriteria(Firma.class);
entryCriteria.add(Restrictions.eq("blogId", blog.getId()));
entryCriteria.add(Restrictions.or(Restrictions.ilike("title", query, MatchMode.ANYWHERE),
Restrictions.ilike("description", query, MatchMode.ANYWHERE)))
.add(Restrictions.eq("status", BlojsomMetaDataConstants.PUBLISHED_STATUS));
entryCriteria.addOrder(Order.desc("date"));
entryCriteria.setCacheable(true);
List entryList = entryCriteria.list();
tx.commit();
session.close();
geht diese?? Das umschreiben der Abfrage hat leider nicht funktioniert!!!! Kann mir jemand helfen wie eine ilike Abfrage gestaltet wird????
habe folgendes Problem. Ich arbeite mit Ecplipse auf einer Postgres DB und habe Hibernate als vermittlungsschicht eingesetzt. Da Hibernate mit reinen Objekten arbeitet, wird die groß- und kleinschreibung bei HQL (Hibernate Query Language) berücksichtigt. Habe mich versucht mit diesem Problem zu beschäftigen, und habe auch eine Lösung gefunden. Die Lösung ist eine HQL abfrage mit ilike gestallten. Aber genau da fängt mein Problem an da ich nicht weiß wie diese gestaltet wird.
Meine Methode sieht so aus:
public List<Firma> getFirmaNachSuchwort(String suchwort) {
Transaction tx = session.beginTransaction();
Query q = session.createQuery("from Firma as firma where " +
"firma.name like '%"+ suchwort + "%' or " +
"firma.code like '%"+ suchwort + "%' or " +
"firma.debitorenNr like '%"+ suchwort + "%' and " +
"firma.del=false");
List<Firma> ergebnis = q.list();
tx.commit();
return ergebnis;}
Eine Methode die ich gefunden habe, aber leider nicht funktioniert sieht so aus:
Criteria entryCriteria = session.createCriteria(Firma.class);
entryCriteria.add(Restrictions.eq("blogId", blog.getId()));
entryCriteria.add(Restrictions.or(Restrictions.ilike("title", query, MatchMode.ANYWHERE),
Restrictions.ilike("description", query, MatchMode.ANYWHERE)))
.add(Restrictions.eq("status", BlojsomMetaDataConstants.PUBLISHED_STATUS));
entryCriteria.addOrder(Order.desc("date"));
entryCriteria.setCacheable(true);
List entryList = entryCriteria.list();
tx.commit();
session.close();
geht diese?? Das umschreiben der Abfrage hat leider nicht funktioniert!!!! Kann mir jemand helfen wie eine ilike Abfrage gestaltet wird????