1
我试图让一个普通的GET-方法,通过一定的ID使用Hibernate来加载从数据库中的对象。开始之前,我的方法已经看起来像:通用GET-方法休眠
public static Object getObjectFromDatabase(Class c, long id) {
Transaction newTransaction = getSession().beginTransaction();
Object result = getSession().get(c, id);
newTransaction.commit();
return result;
}
然后我就先用下面的代码的通用方法:
public static <T> T getObjectFromDatabase(Class<T> c, long id) {
Transaction newTransaction = getSession().beginTransaction();
T result = getSession().get(c, id);
newTransaction.commit();
return result;
}
不幸的是,线
T result = getSession().get(c, id);
给出的错误:类型不匹配:不能从对象转换至T
我知道我可以只使用一个电子xplicit投到T
T result = (T) getSession().get(c, id);
但是有没有办法避免这种投?
谢谢
谢谢你的回答!这就是我想要的:) – MS1
@Jon Skeet尼斯回答+1 –