12 Ekim 2021 Salı

StatelessSession Arayüzü - Batch İşler İçin Uygundur

Giriş
Hibernate Session arayüzü gibidir. Cache kullanmaz. Batch işler için uygundur.

beginTransaction metodu
Şöyle yaparız.
Foo foo = ...;

StatelessSession statelessSession = ...;
Transaction transaction = statelessSession.beginTransaction();

statelessSession.insert(foo);


transaction.commit(); 
getNamedQuery metodu
Örnek
Şöyle yaparız
StatelessSession session = sessionFactory.openStatelessSession();
Transaction tx = session.beginTransaction();
   
ScrollableResults articles = session.getNamedQuery("GetArticles")
    .scroll(ScrollMode.FORWARD_ONLY);
while ( articles.next() ) {
    Article article = (Article) articles(0);
    article.updateName(newArticleName);
    session.update(article);
}
   
tx.commit();
session.close();