2010-10-21 38 views
3

在希望刚刚返回Foo对象列表的Hibernate查询中调用list()之后(请参阅下面的示例),您将如何处理有这种情况?如何在单个实体的Hibernate查询后处理对象列表

Query query = session.createQuery("from Foo"); 
List list = query.list(); 

我并不特别喜欢看到的是:

public List read() { ... } 

当我更希望:

public List<Foo> read() { ... } 

你所期望的读取方法的调用者都投给了富每个元素?有没有一种很好的方式让读取方法返回列表< Foo>?

回答

2

您是否期望读取方法的调用者已经将每个元素转换为Foo?有没有一种很好的方式让读取方法返回列表< Foo>?

不,我不希望呼叫者做演员,所以我会这样写:

Query query = session.createQuery("from Foo"); 
List<Foo> list = query.list(); 

如果你想删除的非类型安全的铸造警告( Hibernate Query API不是类型安全的):

Query query = session.createQuery("from Foo"); 
@SuppressWarnings("unchecked") 
List<Foo> list = query.list(); 
相关问题