List of usage examples for org.hibernate Criteria setFetchMode
public Criteria setFetchMode(String associationPath, FetchMode mode) throws HibernateException;
From source file:ch.systemsx.cisd.openbis.generic.server.dataaccess.db.SampleDAO.java
License:Apache License
private final void fetchRelations(final Criteria criteria, final String relationName, final int relationDepth) { String relationPath = relationName; for (int i = 0; i < relationDepth; i++) { criteria.setFetchMode(relationPath, FetchMode.JOIN); relationPath += "." + relationName; }// w ww.java2s . c o m }
From source file:ch.systemsx.cisd.openbis.generic.server.dataaccess.db.SampleDAO.java
License:Apache License
private List<SamplePE> listSamplesByCriteria(final Criteria basicCriteria, boolean withExperimentAndProperties, Criterion... additionalCriterions) throws DataAccessException { for (Criterion criterion : additionalCriterions) { basicCriteria.add(criterion);//ww w . ja va 2 s . c o m } final int count = DAOUtils.getCount(basicCriteria); if (withExperimentAndProperties) { basicCriteria.setFetchMode("experimentInternal", FetchMode.JOIN); if (count <= DAOUtils.MAX_COUNT_FOR_PROPERTIES) { basicCriteria.setFetchMode("sampleProperties", FetchMode.JOIN); } else { operationLog.info(String.format("Found %d samples, disable properties loading.", count)); } } basicCriteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); return cast(basicCriteria.list()); }
From source file:ch.systemsx.cisd.openbis.generic.server.dataaccess.db.SampleDAO.java
License:Apache License
public SamplePE tryToFindByPermID(String permID) throws DataAccessException { assert permID != null : "Unspecified permanent ID."; final Criteria criteria = getSession().createCriteria(ENTITY_CLASS); criteria.add(Restrictions.eq("permId", permID)); criteria.setFetchMode("sampleType.sampleTypePropertyTypesInternal", FetchMode.JOIN); final SamplePE sample = (SamplePE) criteria.uniqueResult(); if (operationLog.isDebugEnabled()) { operationLog.debug(String.format("Following sample '%s' has been found for " + "permanent ID '%s'.", sample, permID));/*w w w . j ava 2s .c om*/ } return sample; }
From source file:ch.systemsx.cisd.openbis.generic.server.dataaccess.db.SampleDAO.java
License:Apache License
public final SamplePE tryFindByCodeAndDatabaseInstance(final String sampleCode, final DatabaseInstancePE databaseInstance) { assert sampleCode != null : "Unspecified sample code."; assert databaseInstance != null : "Unspecified database instance."; final Criteria criteria = getSession().createCriteria(ENTITY_CLASS); addSampleCodeCriterion(criteria, sampleCode); criteria.add(Restrictions.eq("databaseInstance", databaseInstance)); criteria.setFetchMode("sampleType.sampleTypePropertyTypesInternal", FetchMode.JOIN); final SamplePE sample = (SamplePE) criteria.uniqueResult(); if (operationLog.isDebugEnabled()) { operationLog.debug(String.format( "Following sample '%s' has been found for " + "code '%s' and database instance '%s'.", sample, sampleCode, databaseInstance)); }/* www. j a v a 2s. co m*/ return sample; }
From source file:ch.systemsx.cisd.openbis.generic.server.dataaccess.db.SampleDAO.java
License:Apache License
public final SamplePE tryFindByCodeAndGroup(final String sampleCode, final GroupPE group) { assert sampleCode != null : "Unspecified sample code."; assert group != null : "Unspecified group."; final Criteria criteria = getSession().createCriteria(ENTITY_CLASS); addSampleCodeCriterion(criteria, sampleCode); criteria.add(Restrictions.eq("group", group)); criteria.setFetchMode("sampleType.sampleTypePropertyTypesInternal", FetchMode.JOIN); final SamplePE sample = (SamplePE) criteria.uniqueResult(); if (operationLog.isDebugEnabled()) { operationLog.debug(String.format("Following sample '%s' has been found for code '%s' and group '%s'.", sample, sampleCode, group)); }/*from w w w .j av a2 s . co m*/ return sample; }
From source file:co.com.codesoftware.logic.ProductoLogic.java
/** * metodo que consulta los productos sin dependencias, es decir sin * joincolumn/*from ww w . j a va2 s. c o m*/ * * @return */ public List<ProductoSimpleEntity> consultaProductos() { List<ProductoSimpleEntity> respuesta = null; try { initOperation(); Criteria crit = sesion.createCriteria(ProductoSimpleEntity.class); crit.setFetchMode("referenciaObj", FetchMode.JOIN); crit.setFetchMode("categoriaObj", FetchMode.JOIN); crit.setFetchMode("marcaObj", FetchMode.JOIN); crit.addOrder(Order.asc("id")); respuesta = crit.list(); } catch (Exception e) { e.printStackTrace(); } return respuesta; }
From source file:co.com.codesoftware.logic.ProductoLogic.java
/** * Funcion con la cual se realiza la consulta * * @param estado/*w w w. j a v a2 s . co m*/ * @return */ public List<PorcentajePrecioEntity> buscaPorcentajePrecio(String estado) { List<PorcentajePrecioEntity> rta = null; try { initOperation(); Criteria crit = this.sesion.createCriteria(PorcentajePrecioEntity.class); crit.add(Restrictions.eq("estado", estado)); crit.setFetchMode("sede", FetchMode.JOIN); crit.setFetchMode("categoria", FetchMode.JOIN); crit.setFetchMode("referencia", FetchMode.JOIN); crit.setFetchMode("marca", FetchMode.JOIN); //Query query = sesion.createQuery("from PorcentajePrecioEntity where estado = :estado "); //query.setString("estado", estado); rta = crit.list(); } catch (Exception e) { e.printStackTrace(); rta = null; } return rta; }
From source file:co.com.codesoftware.logic.ProductoLogic.java
/** * Funcion con la cual se realiza la consulta de parametros basandose en una * sede y una categoria como minimo/*from w ww . ja v a 2s. co m*/ * * @param estado * @param idSede * @param idCate * @param idRefe * @param idMarca * @return */ public List<PorcentajePrecioEntity> buscaPorcentajePrecioXFiltros(String estado, Integer idSede, Integer idCate, Integer idRefe, Integer idMarca) { List<PorcentajePrecioEntity> rta; try { initOperation(); Criteria criteria = sesion.createCriteria(PorcentajePrecioEntity.class); criteria.setFetchMode("sede", FetchMode.JOIN); criteria.setFetchMode("categoria", FetchMode.JOIN); criteria.setFetchMode("referencia", FetchMode.JOIN); criteria.setFetchMode("marca", FetchMode.JOIN); criteria.add(Restrictions.eq("estado", estado)); criteria.add(Restrictions.eq("sede.id", idSede)); criteria.add(Restrictions.eq("categoria.id", idCate)); if (!"-1".equalsIgnoreCase(idRefe.toString().trim())) { criteria.add(Restrictions.eq("referencia.id", idRefe)); } if (!"-1".equalsIgnoreCase(idMarca.toString().trim())) { criteria.add(Restrictions.eq("marca.id", idMarca)); } rta = criteria.list(); } catch (Exception e) { e.printStackTrace(); rta = null; } return rta; }
From source file:co.com.codesoftware.logic.productos.PedidosLogic.java
/** * Funcion con la cual busco todas las cotizaciones generadas para un * cliente/* w ww. j a v a 2 s . c o m*/ * * @param idCliente * @return */ public List<PedidoEntity> buscaCotizacionXCliente(Long idCliente) { List<PedidoEntity> rta = null; try { initOperation(); Criteria crit = sesion.createCriteria(PedidoEntity.class); crit.createAlias("cliente", "cli").add(Restrictions.eq("cli.id", idCliente)) .add(Restrictions.eq("estado", "CO")); crit.setFetchMode("cli", FetchMode.JOIN).setFetchMode("sede", FetchMode.JOIN); crit.setFetchMode("usuario", FetchMode.JOIN); crit.addOrder(Order.desc("id")); rta = crit.list(); } catch (Exception e) { e.printStackTrace(); } return rta; }
From source file:co.com.codesoftware.logic.ProveedoresLogic.java
/** * Funcion que consulta en la base de datos los proveedores activos * * @return/*from w w w. j a v a2 s . co m*/ */ public List<ProveedoresEntity> consultaProveedores() { List<ProveedoresEntity> respuesta = null; try { this.initOperation(); Criteria crit = sesion.createCriteria(ProveedoresEntity.class); crit.add(Restrictions.eq("estado", "A")); crit.setFetchMode("retenciones", FetchMode.JOIN); crit.setFetchMode("municipio", FetchMode.JOIN); crit.setFetchMode("ciudad", FetchMode.JOIN); //crit.setFetchMode("", FetchMode.JOIN); respuesta = crit.list(); } catch (Exception e) { e.printStackTrace(); } return respuesta; }