首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 企业软件 > 行业软件 >

Hibernate查询二

2012-07-15 
Hibernate查询2//betweenand@Overridepublic PageInfoT queryInfoAndLikes(PageInfoT pageInfo,MapSt

Hibernate查询2

//between  and@Overridepublic PageInfo<T> queryInfoAndLikes(PageInfo<T> pageInfo,Map<String, String> map, String propertyName, Object minObject,Object maxObject) throws DataAccessException {if (pageInfo == null) {pageInfo = new PageInfo<T>();}DetachedCriteria detached = DetachedCriteria.forClass(entityClass);DetachedCriteria detachedPage = DetachedCriteria.forClass(entityClass);for (Map.Entry<String, String> en:map.entrySet()) {detached.add(Restrictions.like(en.getKey(),en.getValue(), MatchMode.ANYWHERE));detachedPage.add(Restrictions.like(en.getKey(),en.getValue(), MatchMode.ANYWHERE));}detached.add(Restrictions.between(propertyName, minObject, maxObject));detachedPage.add(Restrictions.between(propertyName, minObject, maxObject));pageInfo.setPageRow(queryByRowNumber(detachedPage));pageInfo.setData(this.getHibernateTemplate().findByCriteria(detached, pageInfo.getCurrentPage() * pageInfo.getPageSize(), pageInfo.getPageSize()));return pageInfo;}//外连接,别名@Repository("organizationDao")public class OrganizationDaoImpl extends BaseDaoImpl<Organization> implements IOrganizationDao {@Overridepublic PageInfo<Organization> querySelfUser(PageInfo<Organization> pageInfo,Map<String, String> map, Map<String, Object> andEqual,Map<String, String> alias, String orKey1, Object value1,String orKey2, Object value2) {if (pageInfo == null) {pageInfo = new PageInfo<Organization>();}DetachedCriteria detached = DetachedCriteria.forClass(entityClass);DetachedCriteria detachedPage = DetachedCriteria.forClass(entityClass);if (alias != null) {for (Map.Entry<String,String> en:alias.entrySet()) {detached.createAlias(en.getKey(), en.getValue());detachedPage.createAlias(en.getKey(), en.getValue() ,Criteria.LEFT_JOIN);}}if (orKey1 != null) {detached.add(Restrictions.disjunction().add(Restrictions.or(Restrictions.eq(orKey1, value1), Restrictions.eq(orKey2, value2))));detachedPage.add(Restrictions.disjunction().add(Restrictions.or(Restrictions.eq(orKey1, value1), Restrictions.eq(orKey2, value2))));}for (Map.Entry<String, String> en:map.entrySet()) {detached.add(Restrictions.like(en.getKey(),en.getValue(), MatchMode.ANYWHERE));detachedPage.add(Restrictions.like(en.getKey(),en.getValue(), MatchMode.ANYWHERE));}for (Map.Entry<String, Object> en:andEqual.entrySet()) {  detached.add(Restrictions.eq(en.getKey(),en.getValue()));  detachedPage.add(Restrictions.eq(en.getKey(),en.getValue()));}//detached.addOrder(Order.asc("organizationId"));pageInfo.setPageRow(queryByRowNumber(detachedPage));pageInfo.setData(this.getHibernateTemplate().findByCriteria(detached, pageInfo.getCurrentPage() * pageInfo.getPageSize(), pageInfo.getPageSize()));return pageInfo;}

热点排行