In general, the pattern you would use with Hibernate would be to execute an HQL query, which in turn would return a list of objects/entities. In this case, the concept of column order does not have much meaning. For example:
String hql = "FROM Entity AS E";
Query query = session.createQuery(hql);
List<Object> results = query.list();
for (Object o : results) {
System.out.println("column1 is: " + ((Entity)o).getColumn1());
}
A Java POJO doesn't really have an ordering concept to its fields.
Your requirement might make sense in the context of executing a raw query against your SQL database. In that case, if you wanted a different order, then your select list should be providing that, e.g.
Transaction tx = session.beginTransaction();
SQLQuery query = session.createSQLQuery("select column3, column2, column2 from entity");
List<Object[]> rows = query.list();
In this case, we requested columns 3, 2, and 1, in that order.