Persistência com Hibernate

Galera, é urgente.
Seguinte, eu fiz essa classe aqui pra servir como session do hibernate. e agora queria persistir dados de uma outra classe(entity) chamada aluno, chamar os sets dps da commit().

Como eu faço nesse caso tipo, um beginTransaction e dps commit?

Aqui está meu HibernateUtil.

package br.com.caelum.vraptor.testes;

import org.hibernate.HibernateException;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;

public class HibernateUtil
{
    private static SessionFactory sessionFactory;
    private static ServiceRegistry serviceRegistry;

    static
    {
        try
        {
//          Configuration configuration = new Configuration();
            Configuration configuration = new Configuration().configure();

            serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
            sessionFactory = configuration.buildSessionFactory(serviceRegistry);
        }
        catch (HibernateException he)
        {
            System.err.println("Error creating Session: " + he);
            throw new ExceptionInInitializerError(he);
        }
    }

    public static SessionFactory getSessionFactory()
    {
        return sessionFactory;
    } 
    
 
    Transaction tx = sessionFactory.beginTransaction();
    session.save(produto);
    tx.commit();
}

Essas 3 linhas ai do Transaction é que não funciona…

Queria algo q substituisse isso, lembrando q eu botaria os sets dos Alunos em cima. Obrigado!

O método beginTransaction() é da session. Não coloque esse código solto na classe senão nos confunde, pois não está fazendo assim né? Mostre o código real da próxima vez, e também especificando o retorno do que não funciona (mensagem de erro por exemplo).

Session sess = factory.openSession(); Transaction tx; try { tx = sess.beginTransaction(); //do some work ... tx.commit(); } catch (Exception e) { if (tx!=null) tx.rollback(); throw e; } finally { sess.close(); }
http://docs.jboss.org/hibernate/orm/3.3/api/org/hibernate/Session.html

[quote=javaflex]O método beginTransaction() é da session. Não coloque esse código solto na classe senão nos confunde, pois não está fazendo assim né? Mostre o código real da próxima vez, e também especificando o retorno do que não funciona (mensagem de erro por exemplo).

Session sess = factory.openSession(); Transaction tx; try { tx = sess.beginTransaction(); //do some work ... tx.commit(); } catch (Exception e) { if (tx!=null) tx.rollback(); throw e; } finally { sess.close(); }
http://docs.jboss.org/hibernate/orm/3.3/api/org/hibernate/Session.html[/quote]

Só essa classe ai serviria? É que eu n sei muito de hibernate, queria criar uma classe só pra abrir a sessão e depois persistir os dados no BD. Me ajuda por favor.

[quote=Steam][quote=javaflex]O método beginTransaction() é da session. Não coloque esse código solto na classe senão nos confunde, pois não está fazendo assim né? Mostre o código real da próxima vez, e também especificando o retorno do que não funciona (mensagem de erro por exemplo).

Session sess = factory.openSession(); Transaction tx; try { tx = sess.beginTransaction(); //do some work ... tx.commit(); } catch (Exception e) { if (tx!=null) tx.rollback(); throw e; } finally { sess.close(); }
http://docs.jboss.org/hibernate/orm/3.3/api/org/hibernate/Session.html[/quote]

Só essa classe ai serviria? É que eu n sei muito de hibernate, queria criar uma classe só pra abrir a sessão e depois persistir os dados no BD. Me ajuda por favor.[/quote]
Isso foi só um exemplo da documentação do hibernate em relacao ao que você falou inicialmente.

De resto dá uma olhada nessa apostila: http://www.caelum.com.br/apostila-java-web/uma-introducao-pratica-ao-jpa-com-hibernate/ Ou pesquise sobre hibernate opensession SessionFactory

Isso dai ainda vou integrar com o VRaptor

Não conheço VRaptor, aí já é outro assunto.

Apostila de VRaptor: http://www.caelum.com.br/curso/fj-28-vraptor-hibernate-ajax/
Documentação: http://vraptor.caelum.com.br/pt/
Apostila de Hibernate da própria Caelum: http://www.caelum.com.br/apostila-java-web/apendice-mais-hibernate/

Não conheço VRaptor, aí já é outro assunto.

Apostila de VRaptor: http://www.caelum.com.br/curso/fj-28-vraptor-hibernate-ajax/
Documentação: http://vraptor.caelum.com.br/pt/
Apostila de Hibernate da própria Caelum: http://www.caelum.com.br/apostila-java-web/apendice-mais-hibernate/ [/quote]

to utilizando essa apostila da caleum, tava seguindo os passos aqui porém a aapostila é muito antiga, tem métodos obsoletos ai. por isso estou procurando outras opções. obrigado de qualquer forma.

Não conheço VRaptor, aí já é outro assunto.

Apostila de VRaptor: http://www.caelum.com.br/curso/fj-28-vraptor-hibernate-ajax/
Documentação: http://vraptor.caelum.com.br/pt/
Apostila de Hibernate da própria Caelum: http://www.caelum.com.br/apostila-java-web/apendice-mais-hibernate/ [/quote]

to utilizando essa apostila da caleum, tava seguindo os passos aqui porém a aapostila é muito antiga, tem métodos obsoletos ai. por isso estou procurando outras opções. obrigado de qualquer forma.[/quote]
Entendi, achava que fosse sempre atual já que o VRaptor é deles, isso ajudaria a aumentar o uso.