⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 order.java

📁 JSP+SQL编写的人力资源管理系统
💻 JAVA
字号:
//$Id: Order.java,v 1.2.2.2 2003/08/12 12:51:00 oneovthafew Exp $
package net.sf.hibernate.expression;

import java.util.HashMap;
import java.util.Map;

import net.sf.hibernate.HibernateException;
import net.sf.hibernate.engine.SessionFactoryImplementor;

/**
 * Represents an order imposed upon a <tt>Criteria</tt> result set
 * @author Gavin King
 */
public class Order {
	
	private boolean ascending;
	private String propertyName;

	/**
	 * Constructor for Order.
	 */
	protected Order(String propertyName, boolean ascending) {
		this.propertyName = propertyName;
		this.ascending = ascending;
	}
	
	/**
	 * Render the SQL fragment
	 * 
	 * @param sessionFactory
	 * @param persistentClass
	 * @param alias
	 * @return String
	 * @throws HibernateException
	 */
	public String toSqlString(SessionFactoryImplementor sessionFactory, Class persistentClass, String alias) throws HibernateException {
		String[] columns = AbstractCriterion.getColumns(sessionFactory, persistentClass, propertyName, alias, EMPTY_MAP);
		if (columns.length!=1) throw new HibernateException("Cannot order by multi-column property: " + propertyName);
		return columns[0] + ( ascending ? " asc" : " desc" );
	}
	
	/**
	 * Ascending order
	 * 
	 * @param propertyName
	 * @return Order
	 */
	public static Order asc(String propertyName) {
		return new Order(propertyName, true);
	}
	
	/**
	 * Descending order
	 * 
	 * @param propertyName
	 * @return Order
	 */
	public static Order desc(String propertyName) {
		return new Order(propertyName, false);
	}
	
	private static final Map EMPTY_MAP = new HashMap();

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -