Hibernate Criteria Expression (le)

In this section, you will learn to use the "le" method. This is one of the most important method that is used to apply a "less than or equal" constraint to the named property.

Hibernate Criteria Expression (le)

--Ads--

Hibernate Criteria Expression (le)

     

In this section, you will learn to use the "le" method. This is one of the most important  method that is used to apply a "less than or equal" constraint to the named property.

Expressions: The Hibernate Criteria API supports a rich set of comparison operators. Some standard SQL operators are =, <, ?, >, ?. That supports le() method in Expression class.

In this tutorial, "le" is used with the Integer object (invested_amount). It takes two parameters e.g.  le("property_name",Object val).

Table Name: insurance

ID insurance_name invested_amount investement_date
2 Life Insurance 25000 0000-00-00 00:00:00
1 Givan Dhara 20000  2007-07-30 17:29:05
3 Life Insurance  500 2005-10-15 00:00:00
4 Car Insurance   2500 2005-01-01 00:00:00
5 Dental Insurance 500 2004-01-01 00:00:00
Life Insurance 900 2003-01-01 00:00:00
Travel Insurance  2000  2005-02-02 00:00:00

Here is the code of the class using "le" Expression :

package roseindia.tutorial.hibernate;

import java.util.Iterator;
import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.criterion.Expression;

public class HibernateCriteriaQueryExpressionLe {

  /**
 @param args
 */
  public static void main(String[] args) {
  // TODO Auto-generated method stub

Session sess = null;
try {
 SessionFactory fact = new 
Configuration
().configure().buildSessionFactory();
 sess = fact.openSession();
 Criteria crit = 
sess.createCriteria
(Insurance.class);
 crit.add(Expression.le("
investementAmount"
,new Integer(900)));
 List list = crit.list();
  for (Iterator it =
 list.iterator
();it.hasNext();){
Insurance ins = (Insurance)it.next();
System.out.println("Insurance 
Id: "  
+ ins.getLngInsuranceId());
System.out.println("Insurance 
Name: " 
+ ins.getInsuranceName());
System.out.println("Insurance 
Amount: " 
+ ins.getInvestementAmount());
System.out.println("Investement
 Date: " 
+ ins.getInvestementDate());
  }
  sess.close();
  }
  catch(Exception e){
  System.out.println(e.getMessage());
  }
  }
}

Download this Code.

Output:

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).

log4j:WARN Please initialize the log4j system properly.

Hibernate: select this_.ID as ID0_0_, this_.insurance_name as insurance2_0_0_, this_.invested_amount as invested3_0_0_, this_.investement_date as investem4_0_0_ from insurance this_ where this_.invested_amount<=?

Insurance Id: 3

Insurance Name: Life Insurance

Insurance Amount: 500

Investement Date: 2005-10-15 00:00:00.0

Insurance Id: 5

Insurance Name: Dental Insurance

Insurance Amount: 500

Investement Date: 2004-01-01 00:00:00.0

Insurance Id: 6

Insurance Name: Life Insurance

Insurance Amount: 900

Investement Date: 2003-01-01 00:00:00.0