Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring数据JPA页面和带有Gson的JSON_Java_Json_Spring_Spring Mvc_Spring Data Jpa - Fatal编程技术网

Java Spring数据JPA页面和带有Gson的JSON

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>

我将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-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;
}