List of usage examples for org.hibernate.criterion DetachedCriteria forClass
public static DetachedCriteria forClass(Class clazz, String alias)
From source file:com.mec.DAO.Postgre.LocalidadPostgreDAO.java
public List<LocalidadTipo> getAll() { DetachedCriteria subCriteria = DetachedCriteria.forClass(DepartamentoTipo.class, "departamento") .add(Restrictions.eq("c_provincia", 18)).setProjection(Projections.property("departamento.id")); Criteria cr = getSessionPostgre().createCriteria(LocalidadTipo.class, "localidad"); cr.add(Subqueries.propertyIn("localidad.cDepartamento.id", subCriteria));//localidades de Corrientes return lazyInit(cr.list()); }
From source file:com.rockagen.gnext.qo.QueryObject.java
License:Apache License
/** * Generate hibernate {@link DetachedCriteria} * /*from w w w . j a v a 2s . co m*/ * @param clazz * @param alias * @see DetachedCriteria * @see Restrictions */ public DetachedCriteria generateDetachedCriteria(final Class<?> clazz, String alias) { return DetachedCriteria.forClass(clazz, alias); }
From source file:com.rta.vsd.data.service.impl.OwnerInfoDataServiceImpl.java
/** * /*from www .j av a2 s .c o m*/ * Gets the owner info from the latest plate details provided. * * @author Eldon Barrows * @param dsContext * @param retrieveArabicData * @param plateDetails * @return * @throws VSDDataAccessException */ public VsdOwnerInfo getOwnerInfoByLatestPlateDetails(DataServiceContext dsContext, boolean retrieveArabicData, VehiclePlate plateDetails) throws VSDDataAccessException { logger.info("getOwnerInfoByLatestPlateDetails -- START"); try { Session session = (Session) dsContext.getInternalContext(); DetachedCriteria dc = DetachedCriteria.forClass(VsdVehicleInfo.class, "vi") .add(Restrictions.eq("vi.isDeleted", IDataService.BOOL_FALSE)) .createCriteria("vi.vsdOwnerInfos", "oi", Criteria.INNER_JOIN) .add(Restrictions.eq("oi.isDeleted", IDataService.BOOL_FALSE)); dc.setProjection(Projections.max("vi.createdTimestamp")); if (plateDetails != null && plateDetails.getPlateCategory() != null && !plateDetails.getPlateCategory().equals("")) { dc.add(Restrictions.eq("vi.vehiclePlateCategory", plateDetails.getPlateCategory())); } if (plateDetails != null && plateDetails.getPlateCode() != null && !plateDetails.getPlateCode().equals("")) { dc.add(Restrictions.eq("vi.vehiclePlateCode", plateDetails.getPlateCode())); } if (plateDetails != null && plateDetails.getPlateNumber() != null && !plateDetails.getPlateNumber().equals("")) { dc.add(Restrictions.eq("vi.vehiclePlateNumber", plateDetails.getPlateNumber())); } if (plateDetails != null && plateDetails.getPlateSource() != null && !plateDetails.getPlateSource().equals("")) { dc.add(Restrictions.eq("vi.vehiclePlateSource", plateDetails.getPlateSource())); } Criteria crit = session.createCriteria(VsdVehicleInfo.class, "vInfo") .createCriteria("vInfo.vsdOwnerInfos", "oi", Criteria.INNER_JOIN, Restrictions.eq("oi.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("vInfo.isDeleted", IDataService.BOOL_FALSE)) .add(Property.forName("vInfo.createdTimestamp").in(dc)); // crit.setProjection(Projections.property("vInfo.vehicleInfoId")); if (plateDetails != null && plateDetails.getPlateCategory() != null && !plateDetails.getPlateCategory().equals("")) { crit.add(Restrictions.eq("vInfo.vehiclePlateCategory", plateDetails.getPlateCategory())); } if (plateDetails != null && plateDetails.getPlateCode() != null && !plateDetails.getPlateCode().equals("")) { crit.add(Restrictions.eq("vInfo.vehiclePlateCode", plateDetails.getPlateCode())); } if (plateDetails != null && plateDetails.getPlateNumber() != null && !plateDetails.getPlateNumber().equals("")) { crit.add(Restrictions.eq("vInfo.vehiclePlateNumber", plateDetails.getPlateNumber())); } if (plateDetails != null && plateDetails.getPlateSource() != null && !plateDetails.getPlateSource().equals("")) { crit.add(Restrictions.eq("vInfo.vehiclePlateSource", plateDetails.getPlateSource())); } crit.addOrder(Order.desc("vInfo.createdTimestamp")); List<VsdVehicleInfo> vehicles = crit.list(); if (vehicles == null || vehicles.isEmpty()) return null; Long vehicleInfoId = (Long) vehicles.get(0).getVehicleInfoId(); System.out.println("vehicleInfoId " + vehicleInfoId); VsdOwnerInfo ownerInfo = (VsdOwnerInfo) session.createCriteria(VsdOwnerInfo.class, "oi") .add(Restrictions.eq("oi.isDeleted", IDataService.BOOL_FALSE)) .add(Restrictions.eq("oi.vehicleInfoId", vehicleInfoId)).uniqueResult(); logger.info("getOwnerInfoByLatestPlateDetails -- END"); return ownerInfo; } catch (Exception ex) { logger.error("An error occured in getOwnerInfoByLatestPlateDetails()"); throw new VSDDataAccessException(ex.getMessage(), ex); } }