![]() |
Exclusión de parámetros con Hibernate Criteria Buenas tardes. Estoy haciendo un proyecto con hibernate y spring. En un módulo requiero buscar una lista de datos usando diferentes parámetros, para dicha consulta estoy utilizando Criteria en lugar de HQL. La consulta en si, funciona bien siempre y cuando ingrese todos los datos en el formulario, pero necesito que la clausula where ignore aquellos parámetros que vegan nulos. Este es el código que estoy utilizando para la consulta: Código: @SuppressWarnings("unchecked")Lo que busco es lo siguiente, por ejemplo, si buc es el campo que no se ingresó en el formulario, que la clausula where en lugar de decir: Código: where ssoId='123456' and buc=null and hostCode='DE'Código: where ssoId='123456' and hostCode='DE'Espero que me haya explicado correctamente y me puedan ayudar, un saludo y gracias anticipadas. |
Respuesta: Exclusión de parámetros con Hibernate Criteria ¿Quiza lo que has leido es utilizando "Query By Example" que tiene un metodo para hacer que se excluyan las propiedades que estan a cero? http://hibernate.org/hib_docs/v3/ref...-examples.html En el API Criteria en si no se ve algo similar. |
Respuesta: Exclusión de parámetros con Hibernate Criteria ¿Qué tal GreenEyed? Muchas gracias por responder a esta pregunta... Efectivamente había leido el caso de Example utilizando el método Código: example.excludeZeroes();Igual si tú tienes otra idea, pues déjamela saber... Muchas gracias... Saludos. |
Respuesta: Exclusión de parámetros con Hibernate Criteria No lo he usado nunca, la unica otra solución que he visto es comprobar si el parametro es igual a null, y si lo es no añadir la clausula al Criteria, con un if de toda la vida. |
Respuesta: Exclusión de parámetros con Hibernate Criteria Si, a final de cuentas fue lo que terminé haciendo... Igual si logro descubiri como funciona te aviso para que también los sepas... Gracias! |
| La zona horaria es GMT -6. Ahora son las 06:44. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.