使用带有Spring QueryDslJdbcTemplate的QueryDSL缺少SELECT语句会导致错误的SQL语法错误

时间:2013-10-17 21:58:54

标签: spring spring-data querydsl

我正在使用Spring Data JDBC Extensions 1.0.0和QueryDSL 2.9.0从我的数据库中进行简单的查询。

我的查询创建如下:

        QFaq qFaq = QFaq.faq;
    SQLQuery sqlQuery = jdbcTemplate.newSqlQuery().from(qFaq);
    return jdbcTemplate.query(sqlQuery, new FaqRowMapper());

问题是生成的SQL代码只是

from FAQ FAQ

开头缺少SELECT *。

如果重要,请使用Oracle DB。

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:1)

您不为选择部件提供任何项目。我假设您使用此方法

query(com.mysema.query.sql.SQLQuery sqlQuery, RowMapper<T> rowMapper, com.mysema.query.types.Expression<?>... projection) 

在查询和rowMapper之后,您需要提供select部分的表达式,例如qFaq.id,qFaq.name等。