实现hibernate自定义排序,要继承Order 类
public class NumberOrder extends Order{ private String propertyName; private String ascending; public NumberOrder(String propertyName,boolean ascending){ super(propertyName,ascending); this.propertyName=propertyName; this.ascending=ascending; } @Override public String toSqlString(Criteria criteria,CriteriaQuery criteriaQuery) throws HibernateException{ String[] columns=criteriaQuery.getColumnsUsingProjection(criteria,propertyName); return " to_number("+columns[0]+") "+(ascending ? " asc":" desc"); } }