如何映射页面 到页面 在春季数据休息
问题内容:
当我点击数据库时,PagingAndSortingRepository.findAll(Pageable)
我得到了Page<ObjectEntity>
。但是,我想向客户端而不是实体公开DTO。我可以通过将实体注入到其构造函数中来创建DTO,但是如何将Page对象中的实体映射到DTO呢?根据spring文档,Page提供只读操作。
另外,由于我们不支持Java 8,因此也不可能使用Page.map。如何手动创建带有映射对象的新Page?
问题答案:
您仍然可以使用Page.map
不带lambda表达式:
Page<ObjectEntity> entities = objectEntityRepository.findAll(pageable);
Page<ObjectDto> dtoPage = entities.map(new Converter<ObjectEntity, ObjectDto>() {
@Override
public ObjectDto convert(ObjectEntity entity) {
ObjectDto dto = new ObjectDto();
// Conversion logic
return dto;
}
});