org.hibernate.criterion.Order#desc ( )源码实例Demo

下面列出了org.hibernate.criterion.Order#desc ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: DataHubSystem   文件: SQLVisitor.java
@Override
public Object visitOrder(OrderExpression order_expression,
      Object filter_result, SortOrder sort_order)
{
   Order order;
   String property = ((Member) filter_result).getName();
   switch (sort_order)
   {
      case asc:
      {
         order = Order.asc(property);
         break;
      }
      case desc:
      {
         order = Order.desc(property);
         break;
      }
      default:
      {
         throw new UnsupportedOperationException("Unsupported order: " + sort_order);
      }
   }
   return order;
}
 
源代码2 项目: mamute   文件: QuestionDAO.java
public List<Question> top(String section, int count, DateTime since) {
	Order order;
	if (section.equals("viewed")) {
		order = Order.desc("q.views");
	}
	else if (section.equals("answered")) {
		order = Order.desc("q.answerCount");
	}
	else /*if (section.equals("voted"))*/ {
		order = Order.desc("q.voteCount");
	}
	return session.createCriteria(Question.class, "q")
			.add(and(Restrictions.eq("q.moderationOptions.invisible", false)))
			.add(gt("q.createdAt", since))
			.addOrder(order)
			.setMaxResults(count)
			.list();
}
 
源代码3 项目: base-framework   文件: HibernateSupportDao.java
/**
 * 设置分页参数到Criteria对象,辅助函数.
 * 
 * @param c Hibernate Criteria
 * @param pageRequest 分页请求参数
 * 
 * @return {@link Criteria}
 */
protected Criteria setPageRequestToCriteria( Criteria c,  PageRequest pageRequest) {
	Assert.isTrue(pageRequest.getPageSize() > 0, "分页大小必须大于0");

	c.setFirstResult(pageRequest.getOffset());
	c.setMaxResults(pageRequest.getPageSize());

	if (pageRequest.isOrderBySetted()) {
		for (Sort sort : pageRequest.getSort()) {
			Order order = null;
			if (sort.getDir().equals(Sort.ASC)) {
				order = Order.asc(sort.getProperty());
			} else {
				order = Order.desc(sort.getProperty());
			}
			c.addOrder(order);
		}
	}
	
	return c;
}
 
源代码4 项目: csustRepo   文件: TagAction.java
@SuppressWarnings("unchecked")
public String list() {
	int pageNum=1;
	int pageSize=20;
	String name=getRequest().getParameter("name");
	String queryOrderBy=getRequest().getParameter("queryOrderBy");
	String pageSizeStr=getRequest().getParameter("pageSize");
	String pageNumStr=getRequest().getParameter("pageNo");
	
	Set<Criterion> criterions=new HashSet<Criterion>(2);
	Set<Order> orders=new HashSet<Order>(1);
	Order orderByIdDesc=Order.desc("id");
	orders.add(orderByIdDesc);
	
	if(!StringUtil.isNullOrEmpty(name)){
		criterions.add(Restrictions.like("name", "%"+name.trim()+"%"));
	}
	if(!StringUtil.isNullOrEmpty(queryOrderBy)&&queryOrderBy.equals("asc")){
		orders.remove(orderByIdDesc);
		orders.add(Order.asc("id"));
	}
	if(!StringUtil.isNullOrEmpty(pageSizeStr)){
		pageSize=Integer.parseInt(pageSizeStr);
	}
	if (!StringUtil.isNullOrEmpty(pageNumStr)) {
		pageNum=Integer.parseInt(pageNumStr);
	}
	
	Page page=tagService.pageCQuery(pageNum, pageSize, criterions,orders,"id");
	
	getContextMap().put("page", page);
	getContextMap().put("params", getParameters());
	return "list";
}
 
源代码5 项目: AIDR   文件: CollectionRepositoryImpl.java
private void searchCollectionsAddOrder(String sortColumn, String sortDirection, Criteria criteria) {
	if (StringUtils.hasText(sortColumn)) {
		if ("owner".equals(sortColumn)){
			sortColumn = "owner.userName";
			criteria.createAlias("owner", "owner");
		}
		Order order;
		if ("ASC".equals(sortDirection)){
			order = Order.asc(sortColumn);
		} else {
			order = Order.desc(sortColumn);
		}
		criteria.addOrder(order);
	}
}
 
源代码6 项目: unitime   文件: SessionDAO.java
public Order getDefaultOrder() {
	return Order.desc(Session.PROP_SESSION_BEGIN_DATE_TIME);
}
 
源代码7 项目: mamute   文件: WithUserPaginatedDAO.java
@Override
public Order getOrder() {
	return Order.desc("p.createdAt");
}
 
源代码8 项目: mamute   文件: WithUserPaginatedDAO.java
@Override
public Order getOrder() {
	return Order.desc("p.voteCount");
}
 
源代码9 项目: csustRepo   文件: TopicAction.java
@SuppressWarnings("unchecked")
public String list() {
	int pageNum=1;
	int pageSize=20;
	String title=getRequest().getParameter("title");
	String gscatalogidStr=getRequest().getParameter("gscatalogid");
	String zycatalogidStr=getRequest().getParameter("zycatalogid");
	String queryOrderBy=getRequest().getParameter("queryOrderBy");
	String pageSizeStr=getRequest().getParameter("pageSize");
	String pageNumStr=getRequest().getParameter("pageNo");
	
	Set<Criterion> criterions=new HashSet<Criterion>(2);
	Set<Order> orders=new HashSet<Order>(1);
	Order orderByIdDesc=Order.desc("id");
	orders.add(orderByIdDesc);
	
	if(!StringUtil.isNullOrEmpty(title)){
		criterions.add(Restrictions.like("title", "%"+title.trim()+"%"));
	}
	if(!StringUtil.isNullOrEmpty(gscatalogidStr)){
		criterions.add(Restrictions.eq("repGscatalog.id", Integer.parseInt(gscatalogidStr)));
	}
	if(!StringUtil.isNullOrEmpty(zycatalogidStr)){
		criterions.add(Restrictions.eq("repZycatalog.id", Integer.parseInt(zycatalogidStr)));
	}
	if(!StringUtil.isNullOrEmpty(queryOrderBy)&&queryOrderBy.equals("asc")){
		orders.remove(orderByIdDesc);
		orders.add(Order.asc("id"));
	}
	if(!StringUtil.isNullOrEmpty(pageSizeStr)){
		pageSize=Integer.parseInt(pageSizeStr);
	}
	if (!StringUtil.isNullOrEmpty(pageNumStr)) {
		pageNum=Integer.parseInt(pageNumStr);
	}
	
	List<RepGscatalog> gscatalogs=gsCatalogService.loadAll();
	List<RepZycatalog> zycatalogs=zyCatalogService.loadAll();
	Page page=topicService.pageCQuery(pageNum, pageSize, criterions,orders,"id");
	
	getContextMap().put("page", page);
	getContextMap().put("params", getParameters());
	getContextMap().put("gscatalogs", gscatalogs);
	getContextMap().put("zycatalogs", zycatalogs);
	return "list";
}
 
源代码10 项目: csustRepo   文件: NoticeAction.java
/**
	 * 显示公告列表,加上分页
	 * 
	 * @return
	 */
	public String list() {
		int pageNum = 1;
		int pageSize = 20;

		List<String> likenNames = Arrays.asList("title", "adduser");
		List<String> eqNames = Arrays.asList("ispassed");

		Set<Criterion> criterions = new HashSet<Criterion>();
		Set<Order> orders = new HashSet<Order>();
		Order order = Order.desc("id");
		orders.add(order);

		for (Map.Entry<String, Object> param : getParameters().entrySet()) {
			String name = param.getKey();
			String value = ((String[]) param.getValue())[0];

			if (value != null && !value.isEmpty()) {
				if (eqNames.contains(name)) {
					if(!value.equals("-1")){
						criterions.add(Restrictions.eq(name, Integer.parseInt(value)));
					}
				} else if (likenNames.contains(name)) {
					if (name.equals("adduser")) {
						criterions.add(
//								Restrictions.sqlRestriction("(select u.username from rep_admin u where u.id={alias}.adminid) like '%"+value+"%'"));
								Restrictions.like("author", "%"+value.trim()+"%"));
					} else {
						criterions.add(Restrictions.like(name, "%"+value.trim()+"%"));
					}
				} else if (name.equals(Page.PAGENO)) {
					pageNum = Integer.parseInt(value);
				} else if (name.equals(Page.QUERYORDERBY)) {
					if (value.equals("asc")) {
						orders.remove(order);
						orders.add(Order.asc("id"));
					}else if (value.equals("addtime_desc")) {
						orders.remove(order);
						orders.add(Order.desc("addtime"));
					}else if (value.equals("addtime_asc")) {
						orders.remove(order);
						orders.add(Order.asc("addtime"));
					}
				} else if (name.equals(Page.PAGESIZE)) {
					pageSize = Integer.parseInt(value);
					if (pageSize <= 0) {
						pageSize = 20;
					}
				}
			}
		}

		Page page = noticeService.pageCQuery(pageNum, pageSize, criterions,orders, "id");
		getContextMap().put("page", page);
		getContextMap().put("params", getParameters());
		return "list";
	}
 
源代码11 项目: csustRepo   文件: AdminAction.java
public String list() {
	
	int pageNum=1;
	int pageSize=20;
	/*Cookie[] cookies=request.getCookies();
	boolean cookieExistFlag=false;
	for (Cookie cookie : cookies) {
		if(cookie.getName().equals(Page._COOKIE_PAGE_SIZE)){
			pageSize=Integer.parseInt(cookie.getValue());
			cookieExistFlag=true;
		}
	}
	if(!cookieExistFlag){
		Cookie cookie=new Cookie(Page._COOKIE_PAGE_SIZE, "20");
		response.addCookie(cookie);
	}
	*/
	
	List<String> likenNames=Arrays.asList("username","school","major");
	List<String> eqNames=Arrays.asList("islock","ispassed","teacherorstu","roleid");
	
	Set<Criterion> criterions=new HashSet<Criterion>();
	Set<Order> orders=new HashSet<Order>();
	Order order=Order.desc("id");
	orders.add(order);

	for (Map.Entry<String, Object> param : getParameters().entrySet()) {
		String name=param.getKey();
		String value=((String[])param.getValue())[0];
		if(value!=null&&!value.isEmpty()){
			if(eqNames.contains(name)){
				if(!value.equals("-1")){
					if(name.equals("roleid")){
						criterions.add(Restrictions.eq("repRole.id", Integer.parseInt(value)));
					}else {
						criterions.add(Restrictions.eq(name, Integer.parseInt(value)));
					}
				}
				
			}else if(likenNames.contains(name)){
				criterions.add(Restrictions.like(name, "%"+value.trim()+"%"));

			}else if(name.equals(Page.PAGENO)){
				pageNum=Integer.parseInt(value);
			
			}else if(name.equals(Page.QUERYORDERBY)){
				if(value.equals("asc")){
					orders.remove(order);
					orders.add(Order.asc("id"));
				}
			}else if (name.equals(Page.PAGESIZE)) {
				pageSize=Integer.parseInt(value);
				if(pageSize<=0){
					pageSize=20;
				}
			}
		}
	}
	
	Page page=adminService.pageCQuery(pageNum, pageSize, criterions, orders,"id");
	getContextMap().put("page", page);
	getContextMap().put("params", getParameters());
	

	List<RepRole> roles=roleService.loadAll();
	getContextMap().put("roles", roles);
	
	return "list";
}
 
源代码12 项目: csustRepo   文件: UserAction.java
public String list() {
		
		
		int pageNum=1;
		int pageSize=20;
		/*Cookie[] cookies=request.getCookies();
		boolean cookieExistFlag=false;
		for (Cookie cookie : cookies) {
			if(cookie.getName().equals(Page._COOKIE_PAGE_SIZE)){
				pageSize=Integer.parseInt(cookie.getValue());
				cookieExistFlag=true;
			}
		}
		if(!cookieExistFlag){
			Cookie cookie=new Cookie(Page._COOKIE_PAGE_SIZE, "20");
			response.addCookie(cookie);
		}
		*/
		
		List<String> likenNames=Arrays.asList("username","school","major");
		List<String> eqNames=Arrays.asList("islock","ispassed","teacherorstu");
		
		Set<Criterion> criterions=new HashSet<Criterion>();
		Set<Order> orders=new HashSet<Order>();
		Order order=Order.desc("id");
		orders.add(order);
/*
 * 注:此方法下方的注释部分是pageQuery方法拼接hql语句的分页实现方案
 * 
 * @author 杨真 8-16 9:41
 */
//		StringBuilder hql=new StringBuilder("from RepUser u ");
//		String orderBy="desc";
//		ArrayList<Object> hqlParams=new ArrayList<Object>();
		
//		int paramIndex=0;
		for (Map.Entry<String, Object> param : getParameters().entrySet()) {
			String name=param.getKey();
			String value=((String[])param.getValue())[0];
			if(value!=null&&!value.isEmpty()){
//				if(eqNames.contains(name)&&!value.equals("-1")){
				if(eqNames.contains(name)){
					criterions.add(Restrictions.eq(name, Integer.parseInt(value)));
						/*if(paramIndex==0){
							hql.append("where ");
							hql.append("u."+name+" =? ");
						}else {
							hql.append("and u."+name+" =? ");
						}

						hqlParams.add(paramIndex,Integer.parseInt(value));
						paramIndex++;*/
					
				}else if(likenNames.contains(name)){
					criterions.add(Restrictions.like(name, "%"+value.trim()+"%"));
					/*if(paramIndex==0){
						hql.append("where ");
						hql.append("u."+name+" like ? ");
					}else{
						hql.append("and u."+name+" like ? ");
					}
					
					hqlParams.add(paramIndex,"%"+value+"%");
					paramIndex++;*/
					
				}else if(name.equals(Page.PAGENO)){
					pageNum=Integer.parseInt(value);
				}else if(name.equals(Page.QUERYORDERBY)){
					if(value.equals("asc")){
//						orderBy="asc";
						orders.remove(order);
						orders.add(Order.asc("id"));
					}
				}else if (name.equals(Page.PAGESIZE)) {
					pageSize=Integer.parseInt(value);
					if(pageSize<=0){
						pageSize=20;
					}
				}
			}
		}
		
//		hql.append("order by u.id "+orderBy);
//		
//		System.out.println(hql);
//		
//		Page page=userService.pageQuery(hql.toString(), pageNum, pageSize, hqlParams.toArray());
		Page page=userService.pageCQuery(pageNum, pageSize, criterions, orders,"id");
		getContextMap().put("page", page);
		getContextMap().put("params", getParameters());
		
		return "list";
	}
 
源代码13 项目: csustRepo   文件: LogAction.java
public String list() {
		int pageNum=1;
		int pageSize=20;
		
		List<String> likenNames=Arrays.asList("operationtype","description","operationip");
//		List<String> eqNames=Arrays.asList("islock","ispassed","teacherorstu","roleid");
		
		Set<Criterion> criterions=new HashSet<Criterion>();
		Set<Order> orders=new HashSet<Order>();
		Order order=Order.desc("id");
		orders.add(order);

		for (Map.Entry<String, Object> param : getParameters().entrySet()) {
			String name=param.getKey();
			String value=((String[])param.getValue())[0];
			if(value!=null&&!value.isEmpty()){
				if(likenNames.contains(name)){
					criterions.add(Restrictions.like(name, "%"+value+"%"));

				}else if(name.equals("adminid")){
					criterions.add(Restrictions.eq("repAdmin.id", Integer.parseInt(value)));
				}else if(name.equals(Page.PAGENO)){
					pageNum=Integer.parseInt(value);
				
				}else if(name.equals(Page.QUERYORDERBY)){
					if(value.equals("asc")){
						orders.remove(order);
						orders.add(Order.asc("id"));
					}
				}else if (name.equals(Page.PAGESIZE)) {
					pageSize=Integer.parseInt(value);
					if(pageSize<=0){
						pageSize=20;
					}
				}
			}
		}
		
		String starttimeStr=getRequest().getParameter("starttime");
		String  endtimeStr=getRequest().getParameter("endtime");
		
		if(starttimeStr!=null&&!starttimeStr.isEmpty()&&endtimeStr!=null&&!endtimeStr.isEmpty()){
			try {
				SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
				Date startTime = dateFormat.parse(starttimeStr);
				Date endTime = dateFormat.parse(endtimeStr);
				criterions.add(Restrictions.between("operationtime", startTime, endTime));
			} catch (ParseException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}

		
		Page page=logService.pageCQuery(pageNum, pageSize, criterions, orders,"id");
		getContextMap().put("page", page);
		getContextMap().put("params", getParameters());

		List<RepAdmin> admins=adminService.loadAll();
		getContextMap().put("admins", admins);
		
		return "list";
	}
 
源代码14 项目: csustRepo   文件: AsksAction.java
public String list(){
		int pageNum = 1;
		int pageSize = 20;
		List<String> likenNames = Arrays.asList("title", "adduser");
		List<String> eqNames = Arrays.asList("ispassed","isreplied");
		Set<Criterion> criterions = new HashSet<Criterion>();
		Set<Order> orders = new HashSet<Order>();
		Order order = Order.desc("id");
		orders.add(order);
		for (Map.Entry<String, Object> param : getParameters().entrySet()) {
			String name = param.getKey();
			String value = ((String[]) param.getValue())[0];
			if (value != null && !value.isEmpty()) {
				if (eqNames.contains(name)) {
					criterions.add(Restrictions.eq(name, Integer.parseInt(value)));
				} else if (likenNames.contains(name)) {
					if (name.equals("adduser")) {
//						criterions.add(Restrictions.like("repUser.username", "%"+value+"%"));
						criterions.add(
								Restrictions.sqlRestriction(
										"(select u.username from rep_user u where u.id={alias}.userid) like '%"+value+"%'"));
					}else {
						criterions.add(Restrictions.like(name, "%"+value.trim()+"%"));
					}
				} else if (name.equals(Page.PAGENO)) {
					pageNum = Integer.parseInt(value);
				} else if (name.equals(Page.QUERYORDERBY)) {
					if (value.equals("asc")) {
						orders.remove(order);
						orders.add(Order.asc("id"));
					}else if (value.equals("addtime_desc")) {
						orders.remove(order);
						orders.add(Order.desc("addtime"));
					}else if (value.equals("addtime_asc")) {
						orders.remove(order);
						orders.add(Order.asc("addtime"));
					}
				} else if (name.equals(Page.PAGESIZE)) {
					pageSize = Integer.parseInt(value);
					if (pageSize <= 0) {
						pageSize = 20;
					}
				}
			}
		}
		Page page = messageService.pageCQuery(pageNum, pageSize, criterions,orders, "id");
		getContextMap().put("page", page);
		getContextMap().put("params", getParameters());
		return "list";
	}
 
源代码15 项目: jdal   文件: HibernateDao.java
/** 
 * Create Order from criteria and property path
 * @param criteria the hibernate criteria to apply order on
 * @param propertyPath the property path
 * @return Order 
 */
protected Order createOrder(Criteria criteria, String propertyPath, boolean ascending) {
	Order order = null;
	
	if (propertyPath != null) {
		String sortProperty = PropertyUtils.getPropertyName(propertyPath);
		try {
			if (PropertyUtils.isNested(propertyPath)) {
				String alias = PropertyUtils.getPropertyName(PropertyUtils.getPath(propertyPath));
				// Need to create alias?
				// String alias = HibernateUtils.findAliasForPropertyPath(criteria, propertyPath);
				HibernateUtils.createAlias(criteria, PropertyUtils.getPath(propertyPath));
				sortProperty = alias + PropertyUtils.PROPERTY_SEPARATOR + sortProperty;
			}
			else { // test if property is an entity class
				Type sortType = getClassMetadata().getPropertyType(propertyPath);
				if (sortType.isEntityType()) { // is entity, look for 'name' property
					String[] propertyNames = getClassMetadata(sortType.getReturnedClass()).getPropertyNames();
					for (String name : propertyNames) {
						if ("name".equals(name)) {
							log.info("Found property name on persistent class: " + sortType.getName());
							String newPath = propertyPath + PropertyAccessor.NESTED_PROPERTY_SEPARATOR + "name";
							return createOrder(criteria, newPath, ascending);
						}
					}
				}
			}

			if (log.isDebugEnabled())
				log.debug("Setting order as: " + sortProperty);

			order = ascending ? Order.asc(sortProperty) : Order.desc(sortProperty);
		}
		catch(HibernateException he) {
			log.error("Cannot to create Order for property: " + sortProperty + " for " +
					getEntityClass().getSimpleName(), he);
		}
	}
	else {
		// add default order by id
		ClassMetadata metadata = getClassMetadata();
		if (metadata != null)
			order = Order.asc(metadata.getIdentifierPropertyName());
	}

	return order;
	
}
 
 同类方法