Spring JPA 排序错误

最近再创建排序的时候出现下面的这个错误:

Caused by: java.lang.ClassNotFoundException: org.springframework.cglib.proxy.NoOp
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
	at java.base/java.lang.Class.forName0(Native Method)
	at java.base/java.lang.Class.forName(Class.java:467)
	at org.springframework.asm.ClassWriter.getCommonSuperClass(ClassWriter.java:1044)
	... 82 common frames omitted

解决方案

这是在定义排序的时候的代码出现的错误:

private final Pageable pageable = PageRequest.of(0, 100, Sort.sort(Item.class).by(Item::getDateEffectiveStart).descending());

我们是需要对 getDateEffectiveStart 进行排序。

上面定义的对象为 Date 对象,Date 对象在 JPA 中无法排序。

使用 LocalDate 对象就可以了。