Conexão com usuário de Sessão (Hibernate)

1 resposta
F

Olá,

Estou utilizando o Hibernate.
Realizao uma conexão com um usuário restrito, que me retorna um usuário master, gostaria de modificar o usuário do banco para este novo usuário que está na sessão(browser).

Não estou conseguindo modificar pois é do tipo static.

Posso fazer isto? Como?

Att.

1 Resposta

F

Conseguir resolver e estou postando a solução abaixo:

A classe Java utlizada para cofigurar o arquivo xml do hibernate (“hibernate.cfg.xml”), pode receber uma conexão com parâmetro, como não era possível modificar uma variavel então desta forma passo a conexão (assinatura do método getSession(Connection)) , no momento de inicialização da Sessão no hibernate, pois desta forma eu crio uma conexão fora deste arquivo em uma classe não estática que pode receber valores não estáticos.

public class HibernateUtil {

    private static final SessionFactory sessionFactory;
    private static String usuario = null;
    private static String senha = null;
    
    static {
        try {
            Configuration cfg;
            cfg = new Configuration(); 
            
            // Create the SessionFactory from hibernate.cfg.xml
            sessionFactory = cfg.configure("/br/hibernate/hibernate.cfg.xml").buildSessionFactory();
            
            
        } catch (Throwable ex) {
            // Make sure you log the exception, as it might be swallowed
            System.err.println("Initial SessionFactory creation failed. \n" + ex);
            throw new ExceptionInInitializerError(ex);
        } 
    }
    
    public static Session getSession() {
        return sessionFactory.openSession();
    }
    
    public static Session getSession(Connection conexao) {
        return sessionFactory.openSession(conexao);
    }
    
}
Criado 23 de agosto de 2007
Ultima resposta 24 de ago. de 2007
Respostas 1
Participantes 1