Инструмент сортировки с пользовательскими объектами по дате

У меня есть список объектов TestRecord в скорости, у которых есть метод getDateExecuted, который возвращает объект java.util.date. Я хотел бы отсортировать записи по дате с помощью инструмента сортировки (или соответствующего алгоритма сортировки). Однако я не видел никаких реализаций инструмента сортировки, которые не используют узел xPath в качестве аргумента списка. Если инструмент сортировки нельзя использовать, будет полезна любая информация о создании сортировки пузырьком/выбором с использованием только циклов foreach.

документация по инструменту сортировки: http://velocity.apache.org/tools/devel/apidocs/org/apache/velocity/tools/generic/SortTool.html

http://www.hannonhill.com/kb/Script-Formats/#sort-tool


person Evan Esatto    schedule 16.06.2016    source источник


Ответы (1)


Добавьте объект SortTool в контекст:

context.put("sortTool", new SortTool());

В шаблоне вы можете получить отсортированный список (отсортированный по дате выполнения) как:

#foreach($testRecord in $sortTool.sort($testRecordList, "dateExecuted:asc"))
    $testRecord.dateExecuted
#end

Это четко указано в документации SortTool
http://velocity.apache.org/tools/devel/apidocs/org/apache/velocity/tools/generic/SortTool.html

Сообщите мне о любой проблеме

person user0007    schedule 17.06.2016