【发布时间】:2018-12-25 13:06:43
【问题描述】:
我使用带有依赖项的xml配置的spring mvc:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.12</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-jaxrs</artifactId>
<version>1.9.12</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.9.12</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.4</version>
</dependency>
转换为 JSON。但是使用 Spring data JPA Page 结果是空的:
{}。使用存储库:
@Repository("personRepository")
public interface PersonRepository extends CrudRepository<Person, Long> {
Page<Person> findAll(Pageable pageable);
}
和控制器:
@RestController
public class ApiController {
@Autowired
PersonService personService;
@GetMapping(value = {"/api/person/getpage"}, produces = {"application/json"})
public Page<Person> getPerson() {
return personService.findAll(new PageRequest(0, 10));
}
}
谁能告诉我如何将正确的数据返回到格式:
{ "totalPages":501,
"totalElements":5001,
"size":10,
"content":[{"id":1,"firstName":"Joe","lastName":"Doe"},
{"id":2,"firstName":"Mich","lastName":"Jogger"},
{"id":3,"firstName":"Santa","lastName":"Close"}, ...],
"number":0,
"numberOfElements":10,
"sort":null,
"last":false,
"first":true}
我
【问题讨论】:
-
你需要将你的存储库接口切换到 PagingAndSortingRepository 或 JpaRepository,它们有内置的 Page
findAll(Pageable pageable); -
我已尝试将您的存储库界面切换到 PagingAndSortingRepository 或 JpaRepository。但结果仍然是:{}
标签: java json spring spring-mvc spring-data-jpa