public static <T> void queryResult(String query, Class<? extends T> clazz) { Session session = HibernateUtil.getSessionFactory().openSession(); Query q = session.createSQLQuery(query).addEntity(clazz); List rows = q.list(); Iterator it = rows.iterator(); while (it.hasNext()) { T t = (T) it.next(); // do your work on object t }}如果您打算返回结果集,请使用:
public static <T> List<T> queryResult(String query, Class<? extends T> clazz) { Session session = HibernateUtil.getSessionFactory().openSession(); Query q = session.createSQLQuery(query).addEntity(clazz); List<T> rows = (List<T>) q.list(); return Collections.unmodifiableList(rows);}// now call generic methodList<User> users = queryResult("select * from User", User.class);users.forEach(usr -> { System.out.println(usr.getEmail()); System.out.println(usr.getName()); System.out.println(usr.getIdUser()); System.out.println(usr.getUser());});


