我正在使用Spring Data2.0.6.RELEASE。
我正在为性能和演示目的进行分页。这里关于性能我说的是如果我们有很多记录最好通过页面显示它们
我有以下内容并且工作正常:
interface PersonaDataJpaCrudRepository extends PagingAndSortingRepository<Persona, String> {
}
Run Code Online (Sandbox Code Playgroud)
在@Controller与正常工作:
@GetMapping(produces=MediaType.TEXT_HTML_VALUE)
public String findAll(Pageable pageable, Model model){
Run Code Online (Sandbox Code Playgroud)
通过Thymeleaf我能够应用分页。因此,直到这里目标已经完成。
注:本Persona类都被注解JPA(@Entity,Id,等)
现在我关心以下问题:即使分页工作Spring Data的记录数量大约是多少,每条记录的内容呢?。
我的意思是:让我们假设Persona类包含20场(考虑为您的应用程序,你想要的任何实体),从而为基于视图中的html其中一个报告只使用4个领域(ID,名字,姓氏,日期),因此,我们有16个不必要的字段对于内存中的每个实体
我尝试了以下方法:
interface PersonaDataJpaCrudRepository extends PagingAndSortingRepository<Persona, String> {
@Query("SELECT p.id, id.nombre, id.apellido, id.fecha FROM Persona p")
@Override
Page<Persona> findAll(Pageable pageable);
}
Run Code Online (Sandbox Code Playgroud)
如果我在里面做一个简单的打印,@Controller它会失败关于以下内容:
java.lang.ClassCastException:
[Ljava.lang.Object; cannot be …Run Code Online (Sandbox Code Playgroud)