views:

2443

answers:

2

I have list of category. I need a list of category by excluding 2,3 row. Can we achieve through hibernate by using Criteria and Restriction?

+4  A: 

Your question is somewhat unclear. Assuming "Category" is a root entity and "2,3" are ids (or values of some property of the category") you can exclude them using the following:

Criteria criteria = ...; // obtain criteria from somewhere, like session.createCriteria() 
criteria.add(
  Restrictions.not(
     // replace "id" below with property name, depending on what you're filtering against
    Restrictions.in("id", new long[] {2, 3})
  )
);

Same can be done with DetachedCriteria.

ChssPly76
It works... Thanks ChssPly76..
Shashi Bhushan
A: 

Session session=(Session) getEntityManager().getDelegate(); Criteria criteria=session.createCriteria(RoomMaster.class); //restriction used or inner restriction ... criteria.add(Restrictions.not(Restrictions.in("roomNumber",new String[] { "GA8", "GA7"}))); criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); List roomMasters=criteria.list();

sourav