Criterios de Hibernación Restricciones Y / O combinación


¿Cómo lograría esto usando Restricciones de Hibernación?

(((A='X') and (B in('X',Y))) or ((A='Y') and (B='Z')))
Author: ROMANIA_engineer, 2011-11-14

1 answers

Think works

Criteria criteria = getSession().createCriteria(clazz); 
Criterion rest1= Restrictions.and(Restrictions.eq(A, "X"), 
           Restrictions.in("B", Arrays.asList("X",Y)));
Criterion rest2= Restrictions.and(Restrictions.eq(A, "Y"), 
           Restrictions.eq(B, "Z"));
criteria.add(Restrictions.or(rest1, rest2));
 163
Author: osdamv,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-11-11 02:31:31