Java Spring数据JPA页面和带有Gson的JSON
我将spring mvc与xml配置一起使用,并具有依赖性:Java Spring数据JPA页面和带有Gson的JSON,java,json,spring,spring-mvc,spring-data-jpa,Java,Json,Spring,Spring Mvc,Spring Data Jpa,我将spring mvc与xml配置一起使用,并具有依赖性: <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-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>
和控制器:
@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));
}
}
I您必须在控制器中将返回类型更改为
列表。我可以在db中看到5001条记录。示例控制器代码
@GetMapping(value = {"/api/person/getpage"}, produces = {"application/json"})
public List<Person> getPerson() {
Page<Person> pagePersonList = personService.findAll(new PageRequest(0, 10));
List<Person> personList = pagePersonList.getContent();
return personList;
}
@GetMapping(value={/api/person/getpage”},products={“application/json”})
公共列表getPerson(){
PagePagePersonList=personService.findAll(新页面请求(0,10));
List personList=pagePersonList.getContent();
回归人格;
}
如果有任何问题或疑问,请告诉我。您需要将存储库界面切换到PagingAndSortingRepository或JpaRepository,它们具有内置的PageFindall(Pageable Pageable);我已尝试将您的存储库界面切换到PagingAndSortingRepository或JpaRepository。但结果仍然是:{}我想返回页面类型,以便在智能表中使用angularjs进行分页。如果您不想更改返回类型,我不熟悉angular/smart table,请创建一个具有相同签名的自定义实体,并使用setter将该personList放在内容中,然后在angular中使用它
{ "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}
@GetMapping(value = {"/api/person/getpage"}, produces = {"application/json"})
public List<Person> getPerson() {
Page<Person> pagePersonList = personService.findAll(new PageRequest(0, 10));
List<Person> personList = pagePersonList.getContent();
return personList;
}