¿Cómo configurar múltiples fuentes de datos con Hibernate?
Si usa la configuración xml, escriba dos archivos de configuración. Ya no puede usar "hibernate.cfg.xml" como nombre de archivo, pero se puede usar cualquier cosa, como "mysql.cfg.xml". " o "sqlserver.xml" funcionarán.
Utilice la clase Configuración para obtener el código SessionFactory:
SessionFactory mysqlFactory = new Configuration().configure("mysql.cfg.xml").buildSessionFactory();
SessionFactory sqlserverFactory = new Configuration ().configure("sqlserver.xml").buildSessionFactory();
Si usa Spring, múltiples bases de datos son aún más simples. Al igual que este código, puede completar todas las configuraciones:
lt; beansgt;
lt; bean id="mysqlDS" class="org.springframework.jdbc.datasource.DriverManagerDataSource"gt; url" gt;
lt;valuegt;jdbc:mysql://localhost:3306/testlt;/valuegt;
lt;/propertygt;
lt ;nombre de propiedad="driverClassName"gt;
lt;valuegt;org.gjt.mm.mysql.Driverlt;/valuegt;
lt;/propertygt;
lt;property name="nombre de usuario"gt;
lt;valuegt;rootlt;/valuegt;
lt;/propertygt;
lt;property nombre= "contraseña"gt;
lt;valuegt;123456lt;/valuegt;
lt;/propertygt;
lt;/beangt;
lt; bean id="mysqlFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"gt
lt nombre de propiedad="dataSource"gt; > lt ;ref local="mysqlDS"/gt;
lt;/propertygt;
lt;property name="hibernateProperties"gt;
lt; propsgt;
lt;prop key="hibernate.dialect"gt;org.hibernate.dialect.MySQLDialectlt;/propgt;
lt;/propsgt;
lt;/propertygt;
lt;property name="mappingResources"gt;
lt;listgt;
lt;valuegt;test.hbm.xmllt;/valuegt;
lt;/listgt;
lt;/propertygt;
lt;/beangt ;
lt;bean id="sqlserverDS" class="org.springframework.jdbc.datasource.DriverManagerDataSource"gt;
lt;property name="url"gt; p>
p>
lt;valuegt;jdbc:odbc:testlt;/valuegt;
lt;/propertygt;
lt;property name="driverClassName" gt;
lt;valuegt;sun.jdbc.odbc.JdbcOdbcDriverlt;/valuegt;
lt;/propertygt;
lt;property name="nombre de usuario "gt;
p>
lt;valuegt;rootlt;/valuegt;
lt;/propertygt;
lt;nombre de propiedad="contraseña "gt;
lt;valuegt;123456lt;/valuegt;
lt;/propertygt;
lt;/beangt;
lt;bean id="sqlserverFactory" class= "org.springframework.orm.hibernate3.LocalSessionFactoryBean"gt;
lt;property name="dataSource"gt;
lt;ref local="sqlserverDS"/gt;
p>
lt;/propertygt;
lt;property name="hibernateProperties"gt;
lt ;propsgt;
lt;prop key= "hibernate.dialect"gt;org.hibernate.dialect.SQLServerDialectlt;/propgt;
lt;/propsgt;
lt;/pro
pertygt;
lt;property name="mappingResources"gt;
lt;listgt;
lt;valuegt;test.hbm.xmllt;/valuegt;
lt;/listgt;
lt;/propertygt;
lt;/beangt;
..... p>
lt;/beansgt;
Hay muchas configuraciones factibles para hibernación y primavera. Puede consultar sus referencias, que se explican en detalle.