Mega Code Archive

 
Categories / Java / Hibernate
 

Query Criteria Greater To Equal for Date data type

///////////////////////////////////////////////////////////////////////// import java.util.*; import org.hibernate.*; import org.hibernate.criterion.*; public class SimpleRetrieveTest {         public static void main(String[] args) {     HibernateUtil.setup("create table EVENTS ( uid int, name VARCHAR, start_Date date, duration int, location_id int);");     HibernateUtil.setup("create table locations ( uid int, name VARCHAR, address VARCHAR);");     // hibernate code start     Session session = HibernateUtil.currentSession();     Transaction tx = session.beginTransaction();         Location location = new Location();         location.setName("USA");         location.setAddress("Address");         session.save(location);         Event e= new Event();         e.setId(11111L);         e.setName("testSave");         e.setStartDate(new Date());         e.setLocation(location);     session.save(e);         Criteria crit = session.createCriteria(Event.class);         crit.add( Expression.ge("startDate",new Date()) );         crit.setMaxResults(1);         List results = crit.list();         System.out.println(results.size());         tx.commit();     HibernateUtil.closeSession();     HibernateUtil.sessionFactory.close();     // hibernate code end   } } ///////////////////////////////////////////////////////////////////////// <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC     "-//Hibernate/Hibernate Mapping DTD 2.0//EN"     "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"> <hibernate-mapping >     <class name="Location" table="locations" lazy="true">         <id name="id" column="uid" type="long">             <generator class="native"/>         </id>         <property name="name" type="string"/>         <property name="address" type="string"/>     </class> </hibernate-mapping> ///////////////////////////////////////////////////////////////////////// public class Location {     private Long id;     private String name;     private String address;     public Long getId() {         return id;     }     public void setId(Long id) {         this.id = id;     }     public String getName() {         return name;     }     public void setName(String name) {         this.name = name;     }     public String getAddress() {         return address;     }     public void setAddress(String address) {         this.address = address;     } } ///////////////////////////////////////////////////////////////////////// <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC     "-//Hibernate/Hibernate Mapping DTD 2.0//EN"     "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"> <hibernate-mapping>     <!--     This is a simplified version of the Event class used to     demonstrate proxies.     -->     <class name="Event" table="events">         <id name="id" column="uid" type="long" unsaved-value="null">             <generator class="assigned"/>         </id>         <property name="name" type="string" length="100"/>         <property name="startDate" column="start_date"                   type="date"/>         <property name="duration" type="integer"/>         <many-to-one name="location" column="location_id"                      class="Location"/>     </class> </hibernate-mapping> ///////////////////////////////////////////////////////////////////////// import java.util.Date; public class Event {   private Long id;   private String name;   private Date startDate;   private int duration;     private Location location;   public void setId(Long id) {     this.id = id;   }      public Long getId() {     return id;   }     public String getName() {         return name;     }     public void setName(String name) {         this.name = name;     }     public Date getStartDate() {         return startDate;     }     public void setStartDate(Date startDate) {         this.startDate = startDate;     }     public int getDuration() {         return duration;     }     public void setDuration(int duration) {         this.duration = duration;     }     public Location getLocation() {         return location;     }     public void setLocation(Location location) {         this.location = location;     } } ///////////////////////////////////////////////////////////////////////// <?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC         "-//Hibernate/Hibernate Configuration DTD 3.0//EN"         "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration>     <session-factory>         <!-- Database connection settings -->         <property name="connection.driver_class">org.hsqldb.jdbcDriver</property>         <property name="connection.url">jdbc:hsqldb:data/tutorial</property>         <property name="connection.username">sa</property>         <property name="connection.password"></property>         <!-- JDBC connection pool (use the built-in) -->         <property name="connection.pool_size">1</property>         <!-- SQL dialect -->         <property name="dialect">org.hibernate.dialect.HSQLDialect</property>         <!-- Echo all executed SQL to stdout -->         <property name="show_sql">true</property>         <mapping resource="Event.hbm.xml"/>         <mapping resource="Location.hbm.xml"/>         <mapping resource="Speaker.hbm.xml"/>     </session-factory> </hibernate-configuration>                     HibernateQueryCriteriaGreaterToEqualDate.zip( 4,583 k)