自定义实体类支持多字段排序的排序器
前言 对于基本类型的集合排序,可以直接借助java提供的排序器进行比较排序,而对于集合中的实体类,想要实现排序需要自定义排序器,常见的有两种方式: 一、实体类实现Comparator接口的compare方法进行排序 二、将比较器抽离出来,生成一个通用的比较器(比较常用) 记录一下第二种的用法 构建一个反射工具,用于根据传入的字段名的字符串解析出想要进行的排序的字段 public class ReflexUtil { static Logger logger = LoggerFactory.getLogger(ReflexUtil.class); //getMethod static public Object invokeMethod(String propertiesName, Object object) { try { if(object==null) return null; //如果传入的字段名不包含. 说明是一个单纯的字段,直接返回get方法执行的结果 if (!propertiesName.contains(".")) { String methodName = "get"+getMethodName(propertiesName); Method method = object.getClass().getMethod(methodName); return