Você pode criar um objeto usando as colunas como parâmetros para um construtor.
Vou dar um exemplo meu com um DTO personalizado que fiz:
@Query("SELECT new org.twinnation.site.dto.TitleAndDescriptionAndId(a.title, a.description, a.id) "
+ "FROM Article a")
List<TitleAndDescriptionAndId> getAllArticlesWithoutContent();
Onde o DTO
TitleAndDescriptionAndId
é o seguinte:public class TitleAndDescriptionAndId {
private String title;
private String description;
private Long id;
public TitleAndDescriptionAndId(String title, String description, Long id) {
this.title = title;
this.description = description;
this.id = id;
}
// ...
}