Hibernate Query Lenguage
gerardo234Apuntes10 de Enero de 2016
2.528 Palabras (11 Páginas)336 Visitas
Hibernate Query Language (HQL)
- Hibernate Query Language
- Ventaja de HQL
- Interfaz de consulta
Hibernate Query Language (HQL) es igual que SQL (Structured Query Language), pero no depende de la tabla de la base de datos. En lugar de nombre de la tabla, se utiliza el nombre de clase en HQL. Por lo que es la base de datos lenguaje de consulta independiente.
Ventaja de HQL
Hay muchas ventajas de HQL. Son los siguientes:
- independiente de base de datos
- apoya consultas polimórficas
- fácil de aprender para Java Programmer
Interfaz de consulta
Es una representación orientada a objetos de Hibernate consulta. El objeto de la consulta se puede obtener llamando al CreateQuery () interfaces Método Sesión.
La interfaz de consulta ofrece muchos métodos. Hay métodos comúnmente utilizados dadas:
- public int executeUpdate () se utiliza para ejecutar la actualización o eliminar consulta.
- listado público () devuelve el resultado de la ralation como una lista.
- Consulta setFirstResult público (int Rowno) especifica el número de fila desde donde se recuperará registro.
- Consulta setMaxResult público (int Rowno) especifica el no. de registros que se recupera de la relación (tabla).
- Consulta setParameter público (int posición, el valor del objeto) se establece el valor del parámetro de consulta estilo JDBC.
- Consulta pública setParameter (String nombre, el valor del objeto) se establece el valor de un parámetro de consulta con nombre.
Ejemplo de HQL para obtener todos los registros
- Query query=session.createQuery("from Emp");//here persistent class name is Emp List list=query.list(); Consulta consulta = session.createQuery ("de Emp"); // aquí nombre de la clase persistente es Lista Emp list = Query.list ();
Ejemplo de HQL para obtener registros con paginación
- Query query=session.createQuery("from Emp"); Consulta consulta = session.createQuery ("de Emp"); query.setFirstResult(5); query.setFirstResult (5); query.setMaxResult(10); query.setMaxResult (10); List list=query.list();//will return the records from 5 to 10th number Listado = Query.list (); // devolverá los registros del 5 al 10 de número
Ejemplo de HQL consulta de actualización
- Transaction tx=session.beginTransaction(); Transacción tx = session.beginTransaction (); Query q=session.createQuery("update User set name=:n where id=:i"); Q Consulta = session.createQuery ("actualización Valoración set name = n donde id =: i"); q.setParameter("n","Udit Kumar"); q.setParameter ("n", "Udit Kumar"); q.setParameter("i",111); q.setParameter ("i", 111); int status=q.executeUpdate(); int estado = q.executeUpdate (); System.out.println(status); System.out.println (estado); tx.commit(); tx.commit ();
Ejemplo de consulta HQL eliminar
- Query query=session.createQuery("delete from Emp where id=100"); Consulta consulta = session.createQuery ("eliminar de Emp donde id = 100"); //specifying class name (Emp) not tablename query.executeUpdate(); // nombre de la clase que especifica (Emp) no TABLENAME Query.executeUpdate ();
HQL con funciones de agregado
Usted puede llamar avg (), min (), max (), etc funciones agregadas por HQL. Veamos algunos ejemplos comunes:
Ejemplo para obtener el salario total de todos los empleados
- Query q=session.createQuery("select sum(salary) from Emp"); Q Consulta = session.createQuery ("select sum (sueldo) de Emp"); List
list=q.list(); Listalist = q.list (); Iteratoritr=list.iterator(); IteratorITR = list.iterator (); while(itr.hasNext()){ System.out.println(itr.next()); while (itr.hasNext ()) {System.out.println (itr.next ()); } }
Ejemplo para obtener el salario máximo de los empleados
- Query q=session.createQuery("select max(salary) from Emp"); Consulta q = session.createQuery ("select max (salario) de Emp");
Ejemplo para obtener el salario mínimo de los empleados
- Query q=session.createQuery("select min(salary) from Emp"); Q Consulta = session.createQuery ("select min (salario) de Emp");
Ejemplo para contar el número total de identificación de empleado
- Query q=session.createQuery("select count(id) from Emp"); Q Consulta = session.createQuery ("select count (id) de Emp");
Ejemplo llegar salario promedio de cada empleado
- Query q=session.createQuery("select avg(salary) from Emp");
1. Introducción
Spring Data es un proyecto de SpringSource cuyo propósito es unificar y facilitar el acceso a distintos tipos de tecnologías de persitencia, tanto a bases de datos relacionales como a las del tipo NoSQL.
Spring ya proporcionaba soporte para JDBC, Hibernate, JPA, JDO o MyIbatis, simplificando la implementación de la capa de acceso a datos, unificando la configuración y creando una jerarquía de excepciones común para todas ellas.
...