package com.dts.test; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.AnnotationConfiguration; import org.hibernate.cfg.Configuration; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider; import org.springframework.core.type.filter.AnnotationTypeFilter; public class Test { /** * @param args */ public static void main(String[] args) { Configuration conf = new AnnotationConfiguration(); ArrayList<Class> classes = new ArrayList<Class>(); ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider(false); scanner.addIncludeFilter(new AnnotationTypeFilter(Entity.class)); for (BeanDefinition bd : scanner.findCandidateComponents("com.abc.model")) { String name = bd.getBeanClassName(); try { classes.add(Class.forName(name)); } catch (Exception E) { } } for(Class one : classes) { conf.addAnnotatedClass(one); } SessionFactory sf = conf.configure().buildSessionFactory(); Session session = sf.openSession(); try { Query query = session.createQuery("from User t where t.state = :statetate"); query.setParameter("state", 1); List list = query.list(); } catch (Exception ex) { ex.printStackTrace(); } finally { session.close(); } } }