我正在使用unitils工具进行深度对象比较,通过ReflectionComparator
:
ReflectionComparatorMode[] modes = {ReflectionComparatorMode.LENIENT_ORDER, ReflectionComparatorMode.IGNORE_DEFAULTS};
ReflectionComparator comparator = ReflectionComparatorFactory.createRefectionComparator(modes);
Difference difference = comparator.getDifference(oldObject, newObject);
事实证明,这ReflectionComparator
并没有忽略String
字段值中的大小写。ReflectionComparatorMode
并且在枚举中没有为此目的的特殊模式:
public enum ReflectionComparatorMode {
IGNORE_DEFAULTS,
LENIENT_DATES,
LENIENT_ORDER
}
任何想法,如何实现?