Как я могу получить все элементы таблицы, используя Hibernate? В настоящее время я запускаю цикл для получения каждого из них и добавления их в список. Есть ли более эффективный способ сделать это? Также с этим методом я должен жестко связать количество элементов в списке. Как я могу получить все элементы?
Содержимое моего HibernateUtil
класса:
public class HibernateUtil {
private static SessionFactory sessionFactory = initHibernateUtil();
private static SessionFactory initHibernateUtil() {
try {
Configuration config = new Configuration();
config.setProperty("hibernate.connection.url",
"jdbc:sqlite://home/robb/Workspace/MyApplication/mydatabase.db");
return config.configure().buildSessionFactory();
} catch (HibernateException ex) {
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
public static void shutdown() {
// Close caches and connection pools
getSessionFactory().close();
}
}
Метод, который я использую для получения первых 10 Продуктов с использованием Hibernate :
Session session = HibernateUtil.getSessionFactory().openSession();
List<Product> products = new ArrayList<>();
for (int i = 1; i <= 10; i++) {
products.add((Product) session.get(Product.class, i));
}