小编Che*_*fk5的帖子

如何在Spring引导分页中返回DTO而不是实体?

我的 DTO 与实体不同。如何在仍然显示所有页面的信息的同时返回 DTO 而不是带有分页的实体?

控制器:

@GetMapping("/{name}")
public Page<Student> getStudent(@PathVariable(value = "name") String name, Pageable pageable){
     Page <Student> page = studentService.getStudent(name, pageable);
     return page;
}
Run Code Online (Sandbox Code Playgroud)

服务:

public Page<Student> getStudent(String name, Pageable pageable){
    Page<Student> students = studentRepository.findAllByName(name, pageable);
    return students;
}
Run Code Online (Sandbox Code Playgroud)

存储库:

@Repository
public interface StudentRepository extends 
    PagingAndSortingRepository<Student, Long> {
    Page<Student> findAllByName(String name, Pageable pageable);
}
Run Code Online (Sandbox Code Playgroud)

DTO:

@Data
public class StudentDTO extends ResourceSupport {
   Long _id;
   String name;
}
Run Code Online (Sandbox Code Playgroud)

实体:

@Entity
@Data
@NoArgsConstructor(force = true, access = AccessLevel.PUBLIC)
public class Student …
Run Code Online (Sandbox Code Playgroud)

java spring-boot

1
推荐指数
1
解决办法
2560
查看次数

标签 统计

java ×1

spring-boot ×1