Así Im conseguir un número de instancias de una entidad en particular por idCargando varias entidades de Identificación de manera eficiente en Hibernate 4
for(Integer songId:songGroup.getSongIds())
{
session = HibernateUtil.getSession();
Song song = (Song) session.get(Song.class,id);
processSong(song);
}
esto genera una consulta SQL para cada ID, por lo que me ocurrió que yo haga esto en uno, pero no pude encontrar una forma de obtener múltiples entidades en una sola llamada, excepto al ejecutar una consulta. Así que escribí una consulta
return (List) session.createCriteria(Song.class)
.add(Restrictions.in("id",ids)).list();
pero si puedo activar el almacenamiento en caché de segundo nivel ¿no significa que mi viejo método sería capaz de devolver los objetos de la caché de segundo nivel (si se hubieran solicitado antes) pero mi la consulta siempre irá a la base de datos.
¿Cuál es la forma correcta de hacerlo?
¿Alguna vez descubrió una forma de hacer esto? – FGreg