Is there any Java open-source comparator for comparing beans by multiple fields for multi-column sorting? Each column can be sorted asceding or descending.
For single-column sorting it can be achieved by using org.apache.commons.beanutils.BeanComparator together with org.springframework.util.comparator.InvertibleComparator.
I’m aware that this functionality is quite trivial to write, but what’s the benefit from reinventing the wheel, if it was already written and tested?
I wrote this a few months ago.
Just inherit from this class and override the doCompare-Method. Then set a the next comparator in chain with
setNext(). The earlier a comparator appears in this chain, the more “important” it is.EDIT:
Also see what I found: http://commons.apache.org/collections/api-2.1.1/org/apache/commons/collections/comparators/ComparatorChain.html
This is part of the apache commons collection library, which you can download here