Java 使用Hibernate HQL结果避免安全警告?
例如,我有这样的疑问:Java 使用Hibernate HQL结果避免安全警告?,java,hibernate,generics,Java,Hibernate,Generics,例如,我有这样的疑问: @SuppressWarnings("unchecked") public List<MenuItems> listAllMenuItems() { Session session = HibernateUtil.getSessionFactory().getCurrentSession(); session.beginTransaction(); List<MenuItems> menuItems = null;
@SuppressWarnings("unchecked")
public List<MenuItems> listAllMenuItems() {
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
List<MenuItems> menuItems = null;
try {
Criteria cr = session.createCriteria(MenuItems.class);
menuItems = cr.list();
} catch (HibernateException e) {
session.getTransaction().rollback();
}
session.getTransaction().commit();
return menuItems;
}
@SuppressWarnings(“未选中”)
公共列表listAllMenuItems(){
会话会话=HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
List menuItems=null;
试一试{
Criteria cr=session.createCriteria(MenuItems.class);
menuItems=cr.list();
}捕获(休眠异常e){
session.getTransaction().rollback();
}
session.getTransaction().commit();
返回菜单项;
}
有没有办法避免使用Hibernate HQL结果出现类型安全警告
谢谢。使用集合。检查列表()
List cats=Collections.checkedList(cr.List(),MenuItems.class);
或者使用@suppressWarnings,这是您在代码中指定的我认为它可以解决您的问题 List menuItems=Collections.checkedList(cr.List(),menuItems.class) 有关详细信息,请检查此线程
List<MenuItems> cats = Collections.checkedList(cr.list(), MenuItems.class);