在JPA查询中选择某些字段

时间:2015-09-08 19:46:29

标签: java mysql spring hibernate jpa

我对所有这些连接/提取都有以下查询:

public interface InitiativeRepository extends JpaRepository<Initiative, Long> {
    @Query("select distinct i from Initiative i " +
            "left join fetch i.theme t " +
            "left join fetch t.themeQuestions tq " +
            "left join fetch tq.initiativeProfileQuestion ipq " +
            "left join fetch ipq.answers " +
            "left join fetch ipq.answerLogs al " +
            "where al.revision = i.revision " +
            "order by ipq.question asc")
    public List<Initiative> getThemeAndQuestionsAndAnswerLogs();
}

因为我做了很多连接,显然hibernate正在获取每个对象的所有属性。例如, left join fetch i.theme t 获取主题的所有属性。如果我只想获取主题对象中的主题名称和themeQuestions属性(我不想要任何不必要的属性),该怎么办?

我不确定这是否只能通过带注释的查询来实现。任何想法都将不胜感激。

0 个答案:

没有答案