Mit Ruhezustand auswählen
Ich habe einige Beispiele über das Internet von Hibernate mit @ gesehtransaction.commit()
für ausgewählte Anweisungen. Unten ist der Beispielcode.
public static List<?> list(Class<?> className,int start,int limit,SearchFilter[] searchFilter){
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = null;
try {
transaction = session.beginTransaction();
Criteria criteria = session.createCriteria(className);
criteria.setFirstResult(start);
criteria.setMaxResults(limit);
for(SearchFilter sf : searchFilter){
String[] values = sf.getValue();
if(values != null){
if(values.length == 1) {
criteria.add(Restrictions.eq(sf.getField(), values[0]));
}else{
criteria.add(Restrictions.in(sf.getField(), values));
}
}
}
List<?> Objects = criteria.list();
transaction.commit();
return Objects;
}catch (Exception e) {
transaction.rollback();
e.printStackTrace();
}finally{
session.close();
}
return null;
}
Warum fangen wir eine Transaktion für eine Select-Anweisung an und führen sie aus?