正如建议的那样,在任何地方使用是一种很好的方法,尽管每次打电话时确实需要一些手指打字。@SuppressWarnings
q.list()
我建议还有另外两种技术:
编写强制转换助手
只需将所有内容重构到一个位置:@SuppressWarnings
List<Cat> cats = MyHibernateUtils.listAndCast(q);
...
public static <T> List<T> listAndCast(Query q) {
@SuppressWarnings("unchecked")
List list = q.list();
return list;
}
防止 Eclipse 为不可避免的问题生成警告
在 Eclipse 中,转至“窗口>首选项>Java>编译器>错误/警告”,然后在“通用类型”下,选中复选框Ignore unavoidable generic type problems due to raw APIs
这将关闭对类似问题的不必要的警告,例如上述不可避免的问题。
一些评论:
- 我选择传入而不是结果,因为这样这种“作弊”方法只能用于使用Hibernate作弊,而不能用于作弊任何一般。
Query
q.list()
List
- 您可以为等添加类似的方法。
.iterate()