I'm testing Hibernate and I ran into a question. I have the following configuration:
hibernate.cfg.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">com.mysql.cj.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost/dbFatura?useTimezone=true&serverTimezone=UTC</property>
<property name="connection.username">root</property>
<property name="connection.password">root</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="connection.pool_size">1</property>
<property name="current_session_context_class">thread</property>
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">update</property>
<!-- <mapping resource="org/hibernate/tutorial/domain/Fatura.hbm.xml"/> -->
<mapping class="org.hibernate.tutorial.domain.Fatura"/>
</session-factory>
</hibernate-configuration>
SessionFactory
private static SessionFactory buildSessionFactory() {
try{
return new Configuration().configure("hibernate.cfg.xml").buildSessionFactory();
} catch (Throwable ex) {
System.err.println("Initial SessionFactory creation factory failed. " + ex);
throw new ExceptionInInitializerError(ex);
}
}
In this configuration, I am determining the bank that I will use in the case of dbFatura
:
<property name="connection.url">jdbc:mysql://localhost/dbFatura?useTimezone=true&serverTimezone=UTC</property>
Mapping and manipulation of data works correctly. But here comes the doubts:
-
Is it possible to manipulate multiple banks in the same application? (e.g., dbFatura, dbMovements)
-
If it is possible, how do you change the bank in the class execution?
- Can I create multiple
.xml
files, to move each bank separately fromSessionFactory
?