Foros del Web » Programación para mayores de 30 ;) » Java »

Hibernate + inner join

Estas en el tema de Hibernate + inner join en el foro de Java en Foros del Web. Hola. Alguien me puede decir como hacer esto en hibernate: Código: select producto.nombre, CATEGORIA.NOMBRE from producto inner join categoria on producto.CATEGORIA= categoria.ID Lo mas que ...
  #1 (permalink)  
Antiguo 26/12/2011, 17:53
Avatar de Ludwingg  
Fecha de Ingreso: diciembre-2002
Ubicación: San Salvador
Mensajes: 951
Antigüedad: 21 años, 4 meses
Puntos: 5
Hibernate + inner join

Hola.

Alguien me puede decir como hacer esto en hibernate:
Código:
select producto.nombre, CATEGORIA.NOMBRE from producto inner join categoria on producto.CATEGORIA= categoria.ID
Lo mas que he podido hacer en hibernate es algo asi como esto:
Código:
from Producto
Lo que hace es un select de todos los campos de una tabla, teniendo como base el modelo Producto... pero en los inner join estoy confundido..

Gracias
  #2 (permalink)  
Antiguo 27/12/2011, 00:09
Avatar de navarone86  
Fecha de Ingreso: octubre-2009
Mensajes: 62
Antigüedad: 14 años, 6 meses
Puntos: 2
Respuesta: Hibernate + inner join

cuando trabajas con hibernate no tienes que usar sentencias SQL, sino HQL (Hibernate Query Language)

no tienes que poner el nombre de las tablas, sino como ya has adivinado, el nombre de tu clase Java

no hay que poner los campos que se desean recuperar ya que por defecto cargará todos

tampoco hay que poner en nombre de las columnas, sino el nombre de los atributos de tu clase

las joins te las hace solo para cosas sencillas, y si quieres hacer cosas complicadas, te recomendaría usar Criterias, de hibernate también

en tu ejemplo, el código sería algo asi

Código Javascript:
Ver original
  1. from Producto as prod where prod.categoria.nombre = 'xxxxx'

no es obligatorio usar un alias.

categoría hace referencia al parámetro de la clase Categoria que debería contener tu clase Producto, y nombre hace referencia al atributo nombre que debería contener tu clase Categoria

si en lugar de buscar por nombre buscas por id, tendrías que cambiarlo

un saludo y espero haberte aclarado algo ;)

Etiquetas: hibernate, jsp
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:48.