Showing posts with label Spring Page. Show all posts
Showing posts with label Spring Page. Show all posts

Wednesday, November 30, 2016

How to quickly convert type of Spring Data (JPA) Page content...

Suppose you have the current dto class

public class AbcDto {

private Long id;
private String description;
private Timestamp creationDate;

[.......]

}

and the model/bean to send as response via REST service that returns the pagination instance of Abc instances....

public class AbcView {

private Long id;
private String descriptionInUpperCase;
private String creationDateTruncated;

[.......]

}

That you use the repository to asking for data within "Pageable" form...
So you could have something like this...

Page<AbcDto> tmp = abcDtoRepository.findAll(new PageRequest(page, size));

So you can quickly convert the content, preserving the Page instance details in this way:

Page<AbcView > returnList = tmp.map(new Converter<AbcDto, AbcView> () {
                    @Override
                    public AbcView convert(AbcDto v) {
                        return new AbcView(v.getId(), v.getDesciption().toUpperCase(),
                                sdf.format(v.getCreationDate()));
                    }
                });

Simply and quick...
I hope this help you....

Bye..