JPA中使用Sort排序时遇到的问题

org.springframework.data.jpa.repository.JpaRepository中可以使用Sort定义排序规则,但在使用时我发现了一些小问题

正常基于Pageable中的Sort字段排序

Sort sort = new Sort(Direction.ASC, "seqNum");
Pageable pageable = new PageRequest(0, size, sort);

但是,问题来了
在这里插入图片描述
他报错了!!!
原因是这两个类的构造方法被定义为了私有或者保护的方法
在这里插入图片描述
在这里插入图片描述
我从网上查了好多相关资料,但他们用的时候貌似都可以直接实例化出来,甚至官网上也是这么用的,但我却不能这样用 (好气
这是官网源码为了解决这个问题,我看了下这两个类的源码,好在类里面定义了相关的静态方法能够使用
在这里插入图片描述在这里插入图片描述
所以可以通过调用这些写好的静态方法而不用实例化就能达到相同的效果

Sort sort = Sort.by(Sort.Direction.DESC,"blogs.size");
Pageable pageable = PageRequest.of(0,size,sort);

PS:挺奇怪为什么网上其他人包括官网都可以实例化出来而我却不行,不知道是不是我的版本问题,希望明白的大佬能解答一下

发布了37 篇原创文章 · 获赞 16 · 访问量 6057

猜你喜欢

转载自blog.csdn.net/qq_44039966/article/details/102713779