【发布时间】:2014-09-19 07:46:21
【问题描述】:
我正在使用spring-batch 从数据库中获取一些数据。
如果我使用SELECT * FROM...,我的结果集是@Entity 类的列表,这是所需的。
但我只想获取实体的一些属性(列):
SELECT DISTINCT ON (a, b) a, c, d
FROM mytable [...]
因此,我相应地创建了一个与获取的列匹配的构造函数:
@Entity
public class MyEntity {
private int id;
public MyEntity(String a, BigDecimal c, Date d) {
//setter
}
}
结果:
org.hibernate.engine.jdbc.spi.SqlExceptionHelper
PSQLException: The column id was not found in ResultSet
这是我的读者定义:
JpaPagingItemReader<MyEntity> reader = new JpaPagingItemReader<MyEntity>();
JpaNativeQueryProvider<MyEntity> queryProvider = new JpaNativeQueryProvider<>();
queryProvider.setSqlQuery(SQL);
reader.setQueryProvider(queryProvider);
如果我不获取整行内容,如何让自动创建实体?
【问题讨论】:
标签: java database spring jdbc spring-batch