Duvida configuracao Hibernate

0 respostas
K

E ai galera…

estou com um problema…
e o seguinte, estou desenvolvendo uma pequena api para ser utilizada na empresa que trabalho,
com as classes que sao utilizadas geralmente em todas as aplicacoes, login, Hibernate Util e etc

queria saber se e possivel eu criar um Hibernate Util como a classe abaixo mapeando somente a classe de login,
para padronizar o login de todas as aplicacoes, e importar essa api em outros projetos e adicionar as outras classes do projeto
em um arquivo xml contendo somente o mapeamento das classes.

public class HibernateUtil {

	private static final SessionFactory sessionFactory = buildSessionFactory();
	
	private static SessionFactory buildSessionFactory() {
	    try {
	    	return new Configuration()
	    		.setProperty("hibernate.connection.driver_class", "oracle.jdbc.driver.OracleDriver")
	    		.setProperty("hibernate.connection.url", "jdbc:oracle:thin:@IP:PORTA:SID")
	    		.setProperty("hibernate.dialect", "org.hibernate.dialect.OracleDialect")
	    		.setProperty("hibernate.connection.username", "user")
	    		.setProperty("hibernate.connection.password", "pass")
	    		.setProperty("hibernate.show_sql", "true")
	    		.setProperty("hibernate.format_sql", "true")
	    		.setProperty("hibernate.c3p0.min_size", "5")
	    		.setProperty("hibernate.c3p0.max_size", "40")
	    		.setProperty("hibernate.c3p0.timeout", "300")
	    		.setProperty("hibernate.c3p0.max_statements", "300")
	    		.setProperty("hibernate.c3p0.idle_test_period", "3000")
	    		.addAnnotatedClass(UsuarioLogin.class)
	    		.buildSessionFactory();
	    }
	    catch (Throwable ex) {
	    // Make sure you log the exception, as it might be swallowed
	    System.err.println("Initial SessionFactory creation failed." + ex);
	    throw new ExceptionInInitializerError(ex);
	    }
	    }
	    public static SessionFactory getSessionFactory() {
	    return sessionFactory;
	    }
}

ai nas aplicacoes eu importaria o jar que contem essa classe e criaria um arquivo tipo

<hibernate-configuration>
 <session-factory name="">
  <!--MAPEAMENTO DAS CLASES-->
  <mapping class="br.com.teste.Estoque"/>
  <mapping class="br.com.teste.entities.Filial"/>
  <mapping class="br.com.teste.entities.Grupo"/>
  <mapping class="br.com.teste.entities.Parentesco"/>
  <mapping class="br.com.teste.entities.Produtos"/>
 </session-factory>
</hibernate-configuration>

ai nas classes que irao abrir a sessao eu chamo eu faco da seguinte maneira

session = HibernateUtil.getSessionFactory().openSession();

Criado 8 de agosto de 2011
Respostas 0
Participantes 1